Canary release (canary deployment) — pattern постепенного rollout: 1-5% пользователей получают новую version, monitoring сравнивает error rates, latency. Если метрики good → ramp up до 100%. Если bad → rollback. В отличие от blue-green (100%/0% swap), canary даёт progressive risk mitigation. Tool: Argo Rollouts, Flagger, Istio weighted routing.
Ниже: подробности, пример, смежные термины, FAQ.
Бесплатный онлайн-инструмент — проверка HTTP-заголовков: результат мгновенно, без регистрации.
# Kubernetes Argo Rollouts
spec:
strategy:
canary:
steps:
- setWeight: 1
- pause: {duration: 5m}
- setWeight: 25
- analysis: {successRate: '>=99.9'}
- setWeight: 100Canary release — это метод развертывания новых версий программного обеспечения, при котором обновления постепенно внедряются на ограниченное количество серверов или пользователей. Это позволяет быстро выявить проблемы, минимизируя риск для всей системы. Например, при использовании метода canary release вы можете запустить новую версию вашего приложения для 5% пользователей, а затем, если все пройдет гладко, увеличить процент до 100%.
Реализация canary release требует четкого плана и понимания инфраструктуры. Вот основные шаги для внедрения этого метода:
helm upgrade --install my-app ./my-app --set replicaCount=1 --namespace canaryТаким образом, canary release позволяет минимизировать риски и улучшить качество развертывания.
Метод canary release имеет свои достоинства и недостатки. Рассмотрим их подробнее:
Таким образом, canary release — это мощный инструмент для управления развертыванием, который требует внимательного планирования и ресурсов, но может существенно повысить качество и стабильность вашего программного обеспечения.
Blue-green: instant 100% cut. Canary: gradual %. Canary safer для unknown-risk changes, blue-green faster для confident releases.
Сложнее — DB migrations + schema compat нужны support обеих versions. Или separate canary не критичный path (backend feature, не DB migration).
Error rate (HTTP 5xx), p50/p99 latency, custom business (orders/min, conversion). Сравнивайте canary vs control cohort.
Бесплатный тариф — 10 мониторов, проверки каждые 5 мин, без карты. Платные тарифы — интервал от 1 минуты и проверки из нескольких регионов.