C 80-х годов 20 столетия в мире ИТ прочно укрепилась концепция взвешенного, всесторонне обдуманного управления ИТ-услугами, которая называется ITIL. Однако мир не стоит не месте,цифровой прогресс шагает семимильными шагами и как результат - на арене появились молодые динамичные концепции, направленные на скорость и гибкость внедрения ИТ-продуктов, такие как DevOps.
Итак, давайте сравним эти два понятия - ITIL vs DevOps. Сразу оговоримся, нам не нужно выбирать между концепциями, Devops не заменяет ITIL и не решает его проблем.
ITIL
ITIL (IT Infrastructure Library) - сегодня это уже не аббревиатура, а бренд, принадлежащий компании AXELOS. В библиотеке ITIL содержатся передовые методологии и наилучшие практики, помогающие организовать процесс создания и оказания IT-услуг. Четких инструментов Вы там не найдете, только общие рекомендации, так называемый каркас. Компании получают основу, а ее наполнение реализуют самостоятельно, учитывая при этом свои цели, особенности и бизнес-процессы. По мере развития библиотеки инфраструктуры ИТ, упор методик сместился на управление услугами и к подходу к жизненному циклу ИТ.
Рисунок 1 - Схема ITIL
DevOps
Это система транспортировки, непрерывной доставки и развертывания частей продукта из разработки в продуктовую операционную среду. Система предполагает взаимодействие между подразделениями разработки и системой эксплуатации продукта. Второй ключевой функцией системы DevOps является максимальная автоматизация процессов и процедур развертывания этого продукта в среде эксплуатации. Подробнее читайте в статье.
Рисунок 2 - Схема DevOps
Отличия ITIL и DevOps
Содержание понятий
ITIL — концепция предоставления организациям всестороннего и комплексного руководства для управления ИТ в современной сервисной экономике.
DevOps - методика доставки и автоматического разворачивания разработанного продукта. Как видим - понятие ITIL намного шире, чем DevOps.
Концептуальные принципы
ITIL — обеспечение непрерывного развертывания частей продукта (по сути доставки и внедрения) с соблюдением четких последовательностей и процедур, предписанных методикой.
Принцип DevOps - методика доставки и автоматического разворачивания разработанного продукта. Как видим - понятие ITIL намного шире, чем DevOps.
Планирование и процессы
Процессы ITIL рассчитаны на баланс между скоростью, качеством и требованиями к сервису. Главное - ценность для клиента.
Подход DevOps - максимально ограничить влияние на работающий бизнес клиента. Важна не скорость, а продуманная и взвешенная политика внедрения, пусть даже с определенным запасом времени.
Подход к функциональности
ITIL сам по себе не содержит конкретных инструментов и не предоставляет непосредственных функциональных решений, это библиотека ключевых рекомендаций, стратегий управления ИТ-услугами и рекомендаций оптимальной архитектуры сервисов.
DevOps, напротив - направлен на конкретные инструменты автоматизации и непрерывной доставки готовых продуктов в операционную среду. Если говорить о кооперации этих двух концепций, то DevOps вполне может помочь автоматизировать процессы ITIL в соответствующих шагах цепочки создания ценности.
Автоматизация процессов
В 7 основополагающих принципах ITIL также декларируется использование технологий автоматизации для правильного и последовательного выполнения последовательности действий с ограниченным вмешательством или без вмешательства человека.
Автоматизация развертывания продукта в DevOps является ключевой деятельностью, она должна быть надежной и проходить без сбоев.
Рисунок 3 - DevOps + ITIL
Внедрение изменений
ITIL в определенной мере предполагает принципы гибкости и ориентированности на результат. Иногда CAB (комитет по срочным изменениям) нужен, иногда все происходит без него. Иногда люди должны принимать решения об утверждении, а иногда эти решения могут быть автоматизированы.
Вы можете подумать, что уж тут прогрессивный молодой стиль DevOps будет кардинально отличаться от взвешенных осторожных директив ITIL. Однако, истина в балансе.
Проектная работа DevOps, безусловно, направлена на непрерывную доставку частей продукта в операционную среду с использованием средств автоматизации процесса. Однако, термин «непрерывный» в CI/CD совсем не означает «все время» или даже «как можно быстрее». На практике непрерывный означает «как можно быстрее, учитывая конкретные бизнес-требования, которые применяются в этой ситуации».
Документирование и информация
В концепции ITIL одним из ключевых аспектов управления услугами является информация. Она должна быть точной, актуальной, своевременно предоставленной и достоверной. Это важнейшая часть построения надежной ИТ-системы.
Аналогично, поскольку процессы DevOps переходят от одной команды к другой, то важным и нужным действием является четкое документирование, регламентирование и последовательность действий разворачивания этого продукта в операционной среде.
ITIL или DevOps?
Можно сделать вывод, что DevOps и ITIL прекрасно могут работать в качестве взаимосвязанных концепций, получая лучшие инструменты от одной концепции и оптимальные практики от другой.