Руководство по Kanban · Основы Lean
Что такое DevOps? Культура, практики и метрики
DevOps — это набор культурных ценностей, практик и инструментов, объединяющих разработку ПО и ИТ-эксплуатацию, чтобы команды могли поставлять изменения быстро и надёжно. Он распространяет мышление Agile и Lean на весь путь от кода до клиента.
Главное
- DevOps объединяет разработку и эксплуатацию вокруг общих целей.
- CALMS и «Три пути» обобщают его принципы.
- Измеряйте его частотой развёртываний, временем выполнения, долей неудачных изменений и временем восстановления.
Происхождение
Термин DevOps появился около 2009 года, когда Патрик Дебуа организовал первую конференцию DevOpsDays в Генте (Бельгия). Он вырос из недовольства стеной между разработчиками, которые хотели изменений, и эксплуатацией, которая хотела стабильности.
Модель CALMS
| Элемент | Значение |
|---|---|
| Культура | Общая ответственность и сотрудничество разработки и эксплуатации |
| Автоматизация (Automation) | Автоматизируйте сборки, тесты, инфраструктуру и развёртывания |
| Lean | Небольшие партии, ограниченный WIP, фокус на потоке |
| Измерение (Measurement) | Измеряйте поток, качество и результаты для пользователей |
| Обмен знаниями (Sharing) | Делитесь знаниями, инструментами и извлечёнными уроками |
Три пути
Популяризированы книгами «Проект „Феникс“» (The Phoenix Project) и «Руководство по DevOps» (The DevOps Handbook):
- Поток: ускорение потока работы от разработки к эксплуатации и к клиенту.
- Обратная связь: создание быстрой обратной связи от эксплуатации и пользователей к разработке.
- Постоянное обучение и эксперименты: формирование культуры, которая учится на неудачах и совершенствуется.
Ключевые практики
- Непрерывная интеграция и непрерывная поставка.
- Инфраструктура как код.
- Автоматизированное тестирование и мониторинг.
- Небольшие частые релизы с флагами функций.
- Команды, которые сами создают и эксплуатируют свои сервисы.
- Разборы инцидентов без поиска виноватых.
Измерение эффективности DevOps
Исследовательская программа DORA популяризировала четыре ключевых показателя поставки ПО:
- Частота развёртываний: как часто вы выпускаете релизы.
- Время выполнения изменений: от коммита до продуктивной среды.
- Доля неудачных изменений: доля релизов, вызывающих проблемы.
- Время восстановления сервиса: как быстро вы восстанавливаетесь после сбоя.
Бесплатные шаблоны по этой теме
Частые вопросы
DevOps — это роль или культура?
Прежде всего культура и набор практик. Во многих организациях также есть должности «DevOps-инженер», сосредоточенные на автоматизации и инструментах.
Как DevOps связан с Kanban?
Оба сосредоточены на потоке, небольших партиях и наглядности. Многие команды эксплуатации и платформенные команды используют Kanban для управления своей работой.
Что такое DevOps простыми словами?
DevOps — это способ работы, объединяющий разработку ПО и ИТ-эксплуатацию, чтобы команды могли создавать, выпускать и эксплуатировать ПО быстрее и надёжнее.
Когда появился DevOps?
Термин появился около 2009 года, когда Патрик Дебуа организовал первую конференцию DevOpsDays в Генте (Бельгия).
Что означает CALMS в DevOps?
Культура (Culture), автоматизация (Automation), Lean, измерение (Measurement) и обмен знаниями (Sharing) — модель, обобщающая основные элементы DevOps.
Каковы четыре метрики DORA в DevOps?
Частота развёртываний, время выполнения изменений, доля неудачных изменений и время восстановления сервиса. Они измеряют как скорость, так и стабильность поставки ПО.
Каковы «Три пути» DevOps?
Поток от разработки к эксплуатации, быстрая обратная связь в обоих направлениях и культура постоянного обучения и экспериментов.
Является ли DevOps частью Agile?
DevOps распространяет идеи Agile за пределы разработки — на релизы и эксплуатацию. Agile ускоряет создание ПО; DevOps ускоряет его безопасную доставку пользователям.
В чём разница между DevOps и непрерывной поставкой?
Непрерывная поставка — это конкретная техническая практика поддержания ПО в готовности к выпуску. DevOps — более широкая культура и набор практик, ключевой частью которых является непрерывная поставка; см. непрерывная поставка.
Чем занимается DevOps-инженер?
DevOps-инженер обычно создаёт и поддерживает конвейеры развёртывания, автоматизацию инфраструктуры и мониторинг, помогая командам разработки и эксплуатации работать вместе.
Что такое разбор инцидента без поиска виноватых в DevOps?
Разбор после сбоя, сосредоточенный на том, что в системе позволило проблеме возникнуть, а не на том, кого обвинить, чтобы люди открыто делились информацией, а команда училась.