43
Инструментарий DevOps

Рынок труда и DevOps. Часть 2: инструментарий и технологии

Embed Size (px)

Citation preview

Page 1: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Инструментарий DevOps

Page 2: Рынок труда и DevOps. Часть 2: инструментарий и технологии

О чем пойдет речь

• Облака (AWS, Heroku, OpenStack, ...)

• Управление конфигурацией (Chef, Ansible, ...)

• Непрерывная интеграция (Jenkins, Bamboo, ...)

• Контейнеры (Docker)

Page 3: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Облака

Page 4: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Что это?

• Способ взять в аренду "машинные" ресурсы

• Часто - и готовую инфраструктуру

• Иногда - законченные программные решения

Page 5: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Зачем это?

• Не делаете то, в чем вы не компетентны

• Покупаете то, что не можете сделать сами

• Меньше затрат на планирование проекта

• Часто дешевле, чем делать самим

Page 6: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Типы облаков

Page 7: Рынок труда и DevOps. Часть 2: инструментарий и технологии

SAAS (Software As A Service)

• Готовое программное решение "в аренду"

• Типичные примеры: Gmail, Dropbox, GitHub

• Так часто покупают инструменты разработки

• Ну и инфраструктурные инструменты тоже

Page 8: Рынок труда и DevOps. Часть 2: инструментарий и технологии

PAAS (Platform As A Service)

• Умеет запускать ваши приложения

• Само управляет ресурсами

• Вы не спускаетесь на уровень ОС

• Часто "заточено" под языки/фреймворки

Page 9: Рынок труда и DevOps. Часть 2: инструментарий и технологии

IAAS (Infrastructure As A Service)

• Похоже на "классический" хостинг

• Вам дается виртуальная или физическая машина

• Плюс "сеть", бэкапы и "объектное хранилище"

Page 10: Рынок труда и DevOps. Часть 2: инструментарий и технологии

AWS(Amazon Web Services)

Page 11: Рынок труда и DevOps. Часть 2: инструментарий и технологии

AWS

• Самое крупное и известное облако

• Разрабатывается компанией Amazon

• Умеет почти все, что можно представить

• "Знание AWS" часто встречается в вакансиях

Page 12: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Heroku

Page 13: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Heroku

• Один из первых PAAS

• До сих пор очень известен

• Фокус на запуске приложений

• Часто используется стартапами

Page 14: Рынок труда и DevOps. Часть 2: инструментарий и технологии

OpenStack

Page 15: Рынок труда и DevOps. Часть 2: инструментарий и технологии

OpenStack• "Облако на своем железе"

• Это OpenSource продукт

• Практически не имеет аналогов

• Сложен в эксплуатации

• Нужен если не хочется "отдавать данные"

• Может быть сильно дешевле AWS

Page 16: Рынок труда и DevOps. Часть 2: инструментарий и технологии

vCloud/vSphereот vmWare

Page 17: Рынок труда и DevOps. Часть 2: инструментарий и технологии

vCloud/vSphere• От авторов первого решения по виртуализации

• "Облако на своем железе"

• Предназначено для enterprise-применения

• На нем работает "инфраструктура" компаний

• Редко используется для "продуктовых" целей

Page 18: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Управление конфигурацией

Page 19: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Что это?

• Запись конфигурации Операционной Системы в коде

• Способ передачи знаний о работе продукта

• Идентичное воспроизведение среды продукта

Page 20: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Зачем это?

• "Проверяемая" документация

• Меньше ошибок на каждом этапе разработки

• Элемент построения "конвеера" разработки

• Контроль над системой - в руках разработчиков

Page 21: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Chef

Page 22: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Chef• Одна из самых сложных систем

• Высокий порог вхождения

• Решает широкий спектр проблем

• "Сценарии" пишутся на Ruby

• Выбирается теми, кто умеет программировать

• Требует значительных вложений

Page 23: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Puppet

Page 24: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Puppet• По возможностям почти то же, что и Chef

• Имеет упрощенную форму "Сценариев"

• Расширения пишутся на Ruby

• Раньше часто выбирался "админами"

• Требует значительных вложений

Page 25: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Ansible

Page 26: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Ansible• Система с фокусом на простоте

• Низкий порог вхождения

• Сценарии пишутся на YAML

• Расширения пишутся на Python

• Выбирается небольшими компаниями

• Не требует больших вложений

Page 27: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Непрерывная интеграция

(Continuous Integration)

Page 28: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Что это?

• По сути это - конвейер

• Постоянная проверка труда разработчиков

• Коммит->сборка->разворачивание->тесты

Page 29: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Зачем это?

• Увеличение производительности труда

• Увеличение предсказуемости

• Раннее обнаружение ошибок

Page 30: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Jenkins

Page 31: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Jenkins• Самая известная бесплатная система CI

• Настоящий "конструктор"

• Не очень стабильный

• Умеет почти все, что нужно

• Требует вложений времени в обслуживание

• Часто требует выделенных инженеров

Page 32: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Bamboo

Page 33: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Bamboo• Коммерческий продукт компании Atlassian

• Хорошо совместим с другими их инструментами

• Довольно надежен

• Не требует вкладываться в обслуживание

• Подходит для продуктов средней сложности

Page 34: Рынок труда и DevOps. Часть 2: инструментарий и технологии

TeamCity

Page 35: Рынок труда и DevOps. Часть 2: инструментарий и технологии

TeamCity

• Самое продвинутое коммерческое решение

• Хорошо организует сложные процессы

• Не требует больших вложений в обслуживание

• Подходит для сложных продуктов

Page 36: Рынок труда и DevOps. Часть 2: инструментарий и технологии

TravisCI

Page 37: Рынок труда и DevOps. Часть 2: инструментарий и технологии

TravisCI

• SAAS продукт

• Часто используется совместно с GitHub

• Простой в использовании

• Подходит для простых проектов и стартапов

Page 38: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Контейнеры

Page 39: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Что это?• Похоже на виртуализацию

• Разделяем один сервер на много "логических"

• Очень большая плотность

• Большая скорость запуска

• Малое потребление ресурсов

Page 40: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Зачем это?

• Иногда - как легкая замена виртуализации

• Изоляция частей приложения друг от друга

• Строительный инструмент

• Для запуска "микросервисов"

Page 41: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Docker

Page 42: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Docker

• Инструмент, созданный поверх контейнеров

• Упрощает запуск контейнеров и их менеджмент

• Активно развивается

• Часто используется для построения PAAS

Page 43: Рынок труда и DevOps. Часть 2: инструментарий и технологии

Fin.