Layout
Load Balancer
├── v1 (95%) ── stable version
└── v2 (5%) ── new "canary" version
Benefits
- Real users test the new version on production traffic
- Problems are detected at 1% of traffic, not all of it
- Smooth cutover with no downtime
Vs Blue-Green
- Blue-Green: traffic switches instantly (0% or 100%)
- Canary: gradually (1% → ... → 100%)
Implementation
Nginx upstream weights, Kubernetes traffic splitting, AWS CodeDeploy Canary, Istio.