Что такое canary deployment?

Middle
568 просмотров
AFK Offer AI

Canary deployment — стратегия выкатки, при которой новая версия сначала получает малую долю трафика (1-5%), а остальной идёт на старую. Если метрики в норме — постепенно увеличиваешь до 100%.

Название от канарейки в шахте — она первая реагирует на проблемы. Работает через балансировщик: nginx, Envoy, Istio или Kubernetes Ingress настраиваются на split трафика по весам.

Плюсы: минимальный blast radius при баге — пострадает только 5% юзеров. Можно сравнивать метрики старой и новой версии в реальном времени. Автоматический rollback если error rate вырос.

Минусы: нужна инфраструктура для роутинга трафика, мониторинг для сравнения версий, данные в БД должны быть совместимы между версиями. На практике canary — самый безопасный способ деплоя для критичных сервисов.

Следующий вопрос

Как мониторить процессы в Linux?