DevOps метафоры от Gartner

19ddf9c6f0ibjjpgПросматривая гартнеровские отчеты относительно DevOps в Bimodal IT, я с удивлением обнаружил, что эта уважаемая компания взяла на себя труд систематизировать принципы и практики DevOps:

В отличии от ITIL и других операционных frameworks, DevOps не имеет какой-либо организации, отвечающей за разработку единой таксономии…  Не существует единого каталога практик. Поэтому каждая организация должна не только определить для себя что такое DevOps, но и сформулировать перечень активностей, на которых следует сфокусироваться. Рисунок 1 (см. ниже) является первой попыткой компании Gartner дать ответ на вопрос из чего состоит DevOps

Principles and Practices of DevOps 12 March 2015  G00272990

Я собрал ниже несколько определений из этой и других работ, в частности из  DevOps Is the Bimodal Bridge 03 April 2015  G00276470

Human by Exception. Широкое использование автоматизации – начиная от автоматизации тестирования до автоматизации выпуска приложений и многих других операций – это отличительная черта подхода DevOps. Цель такой автоматизации  состоит в устранении ограничений, например из-за чрезмерно сложных процессов, что должно привести к увеличению скорости поставки релизов. С другой стороны автоматизация операций позволяет снизить количество человеческих ошибок, неизбежных в ходе эксплуатации информационных систем. Люди непосредственно не осуществляют процессы, которые являются полностью автоматизированными, но обрабатывают возникающие в этих процессах исключения.

Preapproved Changes. Стандартные или “предварительно одобренные” изменения, а так же  другие легковесные модели согласования изменений приводят к уменьшению бюрократии в процессе Change Management. Традиционный процесс управления изменениям можно существенно упростить, учитывая такие свойства изменения, как среда, в которой будет реализовано изменение, влияние изменения и пр. Разработка списка “предварительно одобренных” изменений закладывает прочный фундамент для последующей автоматизации, осуществляемых в ходе внесения изменений операций.

ChatOps.  Истоки это подхода относятся к GitHub. ChatOps – это модель автоматизации операционных задач посредством команд, отдаваемых живущему в чате роботу(или “боту”). Участник команды может, например, инициировать процесс развертывания через Internet Relay Chat (IRC), отправив  боту специальную команду, которая затем исполняется с помощью заранее разработанных скриптов. Такой подход позволяет команде сотрудничать в реальном времени и гарантирует,  что все участники команды в курсе осуществляемых в настоящий момент операций.

Canary rollouts. Этот подход к развертыванию программного обеспечения, использует идиому “канарейки в угольной шахте”. Для своевременно выявления  выброса вредных газов, таких как метан, шахтеры раньше  брали с собой в забой клетку с канарейкой. При росте в атмосфере уровня опасных газов канарейка умирала, но у шахтеров оставалось время эвакуироваться. По сути, Canary rollout – это развертывание релиза для ограниченной группы пользователей с целью  проверки правильности его функционирования в реальных условиях. Цель состоит в том, чтобы определить потенциальную проблему как можно раньше,  ограничить количество клиентов, на которых она окажет негативное влияние. Кроме того, эта практика потенциально позволяет осуществить более легкое восстановление или возврат к предыдущей версии при наличии  такой необходимости.

Failing forward. Стандартный подход решения проблем с вновь установленным релизом, заключается в откате до предыдущего стабильного состояния. Это может оказаться достаточно сложной операцией, так как редко какая система находится в состояниях такого рода.  В любых системах изменения происходят непрерывным потоком. Стратегия Failing forward заключается в создании рядом с основной продуктивной средой её «клона» в котором и осуществляется развертывание модифицированной версии системы. Далее, используя паттерн «канарейка в угольной шахте» ограниченный набор пользователей постепенно переводится в эту копию среды. При возникновении проблем пользователи возвращаются на соседний стабильный экземпляр приложения.

Другие принципы и практики DevOps приведены на рисунке ниже

272990_0001

Похожие материалы:

DevOps метафоры от Gartner: 3 комментария

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *