Visitors have accessed this post 5929 times.

Преимущества и недостатки DevOps Engineer

2
0
5929
28 августа 2020 11:43
Автор: Rebrain Me
DevOps

Visitors have accessed this post 5929 times.

Как у любой методологии, у DevOps есть свои сторонники, а есть и критики. И как любая методология, DevOps не является чудесной таблеткой или серебряной пулей, которая способна по волшебству решить все ваши проблемы. У нее есть и преимущества, и некоторые недостатки. О них мы и поговорим.

Преимущества DevOps

Как мы помним, методология DevOps позволила связать в единый процесс разработку, тестирование и эксплуатацию. Что, в конечном итоге, привело к тому, что программное обеспечение стало обновляться чаще без потери в качестве.

  1. Отсюда вытекает первый и самый жирный плюс – DevOps повышает эффективность и конкурентоспособность бизнеса. Ведь чем быстрей приложение доходит до конечного потребителя, тем быстрей бизнес начинает зарабатывать. А чем оперативней реализуются новые возможности и исправляются ошибки, тем более лояльных клиентов получает компания.
  2. Автоматизация цикла «разработка-тестирование-эксплуатация» позволяет ускорить процесс принятия и реализации решений, касающихся разработки ПО.
  3. Использование инструментов DevOps помогает быстро вносить в продукт необходимые изменения.
  4. Кроме того, автоматизация и стандартизация помогают упростить и ускорить рутину, навести порядок в «хаосе» ИТ-проектов. Разработчики в этом случае могут сфокусироваться на улучшении кода. Снижается «человеческий» фактор при возникновении ошибок.
  5. Методики и инструменты DevOps помогают поддерживать систему в стабильном состоянии и, в случае ошибки, сократить время на ее восстановление.
  6. Благодаря метрикам и средствам мониторинга, DevOps-инженер получает максимально быструю обратную связь как о состоянии системы, так и о ее функциональности от пользователей.
  7. Так как немаловажным принципом культуры DevOps является практика постоянного взаимодействия отделов разработки и внедрения, то и коммуникации в этом случае становятся проще и оперативней.
  8. Кроме того, принцип общей ответственности за результат ведет к тому, что не возникает постоянного перекладывания вины за ошибки и поломки с одного отдела на другой. Как это часто бывает, когда локально у разработчиков код работает, а при запуске в продакшн возникают ошибки. Разработчики винят службу эксплуатации, системные администраторы считают, что проблема в коде. Порочный круг замкнулся. А плюсы DevOps помогают его разорвать и прийти к продуктивному взаимодействию.
  9. Еще один важный положительный момент работы с методиками DevOps заключается в том, что они побуждают постоянно учиться новому – меняются инструменты и подходы, возникают новые требования к ПО. И этот процесс постоянного самосовершенствования повышает ценность DevOps-инженера как специалиста.

Недостатки DevOps

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

  1. К примеру, DevOps нужен не всем. Скажем, для маленькой компании, ведущей небольшой проект, затраты на инструменты DevOps и дорогостоящих специалистов совсем ни к чему. Перед внедрением принципов DevOps в работу компании, всегда стоит оценить соотношение затрат и ожидаемой эффективности. Если затраты, как трудовые, так и денежные, слишком высоки для компании, то переход на новую методологию может не ускорить, а наоборот, замедлить процессы разработки и внедрения.
  2. DevOps-инженер – это высококвалифицированный и высокооплачиваемый сотрудник. Он должен знать очень широкий стек технологий и постоянно совершенствовать знания. Он должен иметь ряд софтскилловых навыков – например, уметь находить общий язык с разными людьми, чтобы собрать с них фидбек и наладить эффективное взаимодействие. А значит, и требования к такому сотруднику высоки и найти специалиста хорошего уровня не так просто. Не говоря уже о том, что DevOps входит в число самых высокооплачиваемых ИТ-специализаций.
  3. Есть и обратная проблема с квалификацией DevOps-инженеров. Зачастую специалисты считают, что им нужны только самые «модные» инструменты. Они рассуждают про Docker и Kubernetes, часто поверхностно разбираются в самых актуальных технологиях, но при этом совсем не знают базовых вещей – как работают базы данных и окружение, как настроить сети. А без этого «фундамента» стать действительно квалифицированным DevOps-инженером невозможно. Кроме того, это может вылиться в ситуацию, когда специалист будет использовать избыточный инструментарий (скажем, Kubernetes, потому что он «на слуху»), вместо того, чтобы обратиться к более простым и подходящим ситуации инструментам и best practices.
  4. Для эффективного функционирования DevOps нужен эффективный менеджмент – как раз для того, чтобы разные отделы успешно взаимодействовали и понимали важность общей цели.
  5. Для внедрения DevOps нужно не только поменять процессы и подключить новые инструменты, но и в целом поменять культуру, что достаточно трудоемко. Без соблюдения основных принципов (скажем, автоматизации, ведения документации, постоянного быстрого фидбека, соблюдения культуры взаимодействия подразделений) DevOps невозможен.

Если вам интересно посещать бесплатные онлайн-мероприятия по DevOps, Kubernetes, Docker, GitlabCI и др. и задавать вопросы в режиме реального времени, подключайтесь к каналу DevOps by REBRAIN*Анонсы мероприятий каждую неделю

Практикумы для специалистов по инфраструктуре и разработчиков — https://rebrainme.com.
Наш Youtube-канал — https://www.youtube.com/channel/UC6uIx64IFKMVmj12gKtSgBQ.

Агентство Fevlake, проектируем и поддерживаем IT-инфраструктуры с 2012 года — https://fevlake.com.

Комментарии (3)
Введено символов из возможных
Не отвечать

Вам также может понравится

7 шагов при выборе инструментов DevOps
array(1) { [0]=> object(WP_Term)#11166 (16) { ["term_id"]=> int(7) ["name"]=> string(6) "DevOps" ["slug"]=> string(6) "devops" ["term_group"]=> int(0) ["term_taxonomy_id"]=> int(7) ["taxonomy"]=> string(8) "category" ["description"]=> string(0) "" ["parent"]=> int(0) ["count"]=> int(19) ["filter"]=> string(3) "raw" ["cat_ID"]=> int(7) ["category_count"]=> int(19) ["category_description"]=> string(0) "" ["cat_name"]=> string(6) "DevOps" ["category_nicename"]=> string(6) "devops" ["category_parent"]=> int(0) } } DevOps

Перевод статьи — https://techbeacon.com/devops/7-steps-choosing-right-devops-tools

Большинство разработчиков уже давно поняли ценность DevOps и то, как лучше его реализовать. С первым пунктом проще, а второй вызывает определенные сложности.

Почему? Количество и типы проблем сильно разнятся между собой. Типы процессов и инструментов, а также...

0
0
26 февраля 2021
Linux like One-c
array(1) { [0]=> object(WP_Term)#11166 (16) { ["term_id"]=> int(6) ["name"]=> string(5) "Linux" ["slug"]=> string(5) "linux" ["term_group"]=> int(0) ["term_taxonomy_id"]=> int(6) ["taxonomy"]=> string(8) "category" ["description"]=> string(0) "" ["parent"]=> int(0) ["count"]=> int(28) ["filter"]=> string(3) "raw" ["cat_ID"]=> int(6) ["category_count"]=> int(28) ["category_description"]=> string(0) "" ["cat_name"]=> string(5) "Linux" ["category_nicename"]=> string(5) "linux" ["category_parent"]=> int(0) } } Linux

Автор статьи - Сергей Попов
Предистория
Мало кто из инфраструктурщиков на просторах России не сталкивался с «Великим и Ужасным» ОДИН-ЭС. Многие после этой встречи безвозвратно уходят в мир *nix, чтобы никогда больше не пересекаться с ним, и не жалеют об этом, остальным приходится устанавливать, обслуживать и поддерживать этого монстра многие...

0
8
3 августа 2020
Sandboxing Nginx
array(1) { [0]=> object(WP_Term)#11544 (16) { ["term_id"]=> int(7) ["name"]=> string(6) "DevOps" ["slug"]=> string(6) "devops" ["term_group"]=> int(0) ["term_taxonomy_id"]=> int(7) ["taxonomy"]=> string(8) "category" ["description"]=> string(0) "" ["parent"]=> int(0) ["count"]=> int(19) ["filter"]=> string(3) "raw" ["cat_ID"]=> int(7) ["category_count"]=> int(19) ["category_description"]=> string(0) "" ["cat_name"]=> string(6) "DevOps" ["category_nicename"]=> string(6) "devops" ["category_parent"]=> int(0) } } DevOps

Автор - Юрий Изоркин

В конце 2018 года мне на глаза попался пул-реквест, который позволял запускать сервис nginx от непривилегированного пользователя - https://github.com/NixOS/nixpkgs/pull/51551 - nginx: do not run anything as root. Это повышает защиту web-сервера nginx.

При каждом запуске сервиса nginx происходит проверка конфигурации на...

4
0
13 ноября 2020