2358 subscribers

Что такое DevOps?

Само слово состоит из двух частей - Dev (Development), то есть разработка и Ops (Operations) - эксплуатация.

Разработка и эксплуатация. Ок, запомнили. Но что это конкретно? Танец? Напиток? Профессия?

Не совсем, девопс - это модель взаимодействия тех, кто пишет код с теми, кто этот код заставляет работать - раскатывает в продакшн, управляет серверами, сетью и вот этим вот всем. Такая профессия называется ДевОпс-инженер

Любая компания, которая делает деньги на разработке программного обеспечения, хочет быстро расти, быть технологичнее и быстрее своих конкурентов, при это не забывать о наличии печенек и вкусного чая на кухне в офисе.

У серьезных компаний большая и сложная инфраструктура: куча серверов, коммутаторов, маршрутизаторов, и все это еще и раскидано географически по миру. А чтобы код их приложения заработал у пользователей, без лагов, багов и задержек, нужно учесть кучу факторов!

До появления методологии DevOps, при разработке, могли возникать случаи, когда что-то не работает, или работает не так, как хотелось бы:

  • «Мой код превосходен, а сервера сконфигурированы хреново, а еще ваша сеть, кхм-кхм, - говно» - говорит разработчик
  • «Сеть работает отлично, задержка в пределах нормы, а вы там что то наговнокодили» - парирует администратор

И понеслась. У сетевого администратора не хватало компетенций и информации о том как надо настраивать сервера, в результате чего приходилось подключать для этого разработчиков, у которых в свою очередь не было компетенций админов.

Короче, ДевОпс инженер это по сути системный администратор который работает с программным обеспечением, серверами и сетью, а также понимает как происходит процесс разработки и умеет программировать. Новый виток эволюции админа, который умеет больше и, конечно, получает больше денег.

DevOps
DevOps
DevOps

Девопс исключит перекидывание мячика из отдела разработки к администраторам, значительно ускорит релизы новых фич и исправлений в продукте, откроет дорогу к легкому масштабированию и повышению надежности инфраструктуры, превратит вашу разработку в полноценный конвейер, даст прохладу, влажность и, скорее всего, силу земли

Итак, вот базовые вещи, которые должен знать девопс инженер:

  • Легко ориентироваться в Windows и Linux операционных системах - кстати, по ним у нас есть собственные курсы и никто не помешает тебе пройти бесплатный вводный урок по ссылке.
  • Нужно знать сетевые технологии на уровне Cisco CCNA - вот это совпадение! У нас также есть большой курс по сетевым технологиям, который поможет тебе познать самые нужные сетевые аспекты работы DevOps.
  • ДевОпс должен знать инструменты для управления конфигурацией и автоматизации серверов Chef, Puppet, Ansible.
  • И уметь писать скрипты. Ну минимум на Python. Зачем это надо? Как раз чтобы работать с этими инструментами.
DevOps инженер
DevOps инженер
DevOps инженер

Этого достаточно, чтобы уже получать в среднем по РФ 100-200 тысяч рублей!

Ну и как видавшие девопсов добавим, что будет отлично так же знать:

  • Про непрерывную интеграцию и доставку (CI/CD) – сборка и тестирование конечного продукта (Jenkins, TeamCity, Bamboo)
  • Распределенный контроль версий (Git, Mercurial, Subversion, CVS)
  • Контейнеризацию и оркестровку (Docker, Kubernetes, Docker Swarm)
  • Управление инфраструктурой как кодом (Puppet, Chef, Ansible, Salt)
  • Виртуализацию (Vagrant, VMware)
DevOps инструменты
DevOps инструменты
DevOps инструменты

Подробнее об этих и других инструментах можно прочитать в этой статье.