Выкладка, откат и разбор инцидентов глазами бэкендера

↑ 7.6 DevOps для бэкенд-разработчика · ← Предыдущая · → Следующая

По желанию~3 мин чтенияУровень: senior

Зачем это на собесе

«Расскажите про инцидент и что вы сделали» — поведенческий и технический вопрос сразу.

Объяснение

Стратегии выкладки

СтратегияСутьПлюс/минус
Recreateостановить старое, запустить новоепросто, простой сервиса
Rollingпостепенная замена экземпляровбез простоя, две версии одновременно
Blue/Greenпараллельное окружение, переключение трафикамгновенный откат, двойные ресурсы
Canaryновая версия для малой доли трафикариск ограничен, нужны метрики и автоматика
Feature flagsкод в проде выключен, включается флагомотделяет деплой от релиза

Откат

  • Возврат на предыдущий образ (тег) — быстро и предсказуемо.
  • Миграции обратно совместимы, поэтому откат кода не требует отката схемы.
  • Критерии автоматического отката: рост ошибок/задержки, падение health checks после выкладки.

Инцидент: порядок действий

  1. Обнаружить (алерт) и объявить инцидент, назначить ответственного.
  2. Стабилизировать: откат, отключение флага, масштабирование, деградация — сначала восстановить сервис, потом искать причину.
  3. Диагностировать: метрики → трейсы → логи (см. Три столпа observability: логи, метрики, трейсы).
  4. Коммуникация: статус заинтересованным сторонам.
  5. Постмортем без поиска виноватых: хронология, корневая причина (5 почему), что сработало, что нет, действия с владельцами и сроками.

Структура рассказа про инцидент (STAR): ситуация → задача → действия (диагностика, решение, откат) → результат (время восстановления, что улучшили).

Нюансы и подводные камни

  • Выкладка в пятницу вечером и «одновременно много изменений».
  • Откат, невозможный из-за необратимой миграции.
  • Инцидент без owner: все смотрят, никто не действует.
  • Постмортем без действий — формальность.
  • Не удаляйте улики (логи, дампы) при спешке.

Практика

  1. Реализуйте canary-выкладку с автоматическим откатом по метрике ошибок.
  2. Проведите учебный game day и напишите постмортем.
  3. Подготовьте историю инцидента по STAR на 2 минуты.

Вопросы с ответами

Связанные темы