BlogCI/CD

Blue-green and canary deploys from your pipeline

Ship with zero downtime and instant rollback by shifting traffic between versions instead of replacing in place.

Oct 22, 2024·11 min readAdvanced

Rolling updates replace pods in place — if the new version is bad, you are already partly down. Blue-green and canary deploys keep the old version running and shift traffic instead, so rollback is a routing change measured in seconds, not a redeploy.

Three strategies
Rolling
replace in place
no extra capacity
rollback = redeploy
default, simplest
Blue-green / canary
both versions live
shift traffic
instant rollback
needs 2x briefly
Blue-green
1
Green up
new version deployed
2
Smoke test
green, no live traffic
3
Switch
router -> green
4
Blue idles
instant rollback target

The switch is a selector

At its simplest, blue-green is one Service selector flipping between two ReplicaSets. Argo Rollouts automates the promotion, analysis, and rollback.

rollout.yaml
strategy:
canary:
steps:
- setWeight: 10
- pause: { duration: 5m } # watch metrics
- setWeight: 50
- pause: { duration: 5m }
- setWeight: 100
Roll back before users notice
A canary that fails its analysis at 10% weight only ever touched 10% of traffic, and Argo Rollouts aborts automatically. That is the whole value.
Go deeper in a courseArgo CDDeclarative GitOps CD — sync, health, and progressive delivery.View course

Related posts