Traffic 가 옛 거에서 새 거로 어떻게 이동
변경의 위험도와 실패 탐지 속도에 따라 deploy 전략 선택. 클래식 세 모양:
Recreate (downtime deploy)
- 옛 거 멈추고 새 거 시작. 짧은 downtime.
- 추론 가장 쉬움. 개인 프로젝트, 저트래픽 서비스의 default.
- 나쁨: 사용자 있는 모든 것.
Rolling
- 인스턴스 N 개씩 교체. Deploy 중간 옛 + 새 가 나란히 돔.
- Kubernetes deployment, ECS rolling 등의 default.
- 주의: 옛 인스턴스가 새 schema 읽는 거 (또는 반대) 깨뜨리는 schema 변경.
Blue/Green
- Prod 의 전체 카피 두 개 (blue + green). 비활성에 deploy, smoke 돌리고 traffic flip, 옛 거 폐기.
- Load balancer 다시 flip 하면 즉시 rollback.
- 비용: deploy 동안 2× 인프라.
Canary
- Traffic 의 1 → 5 → 25 → 100% 로 시간에 걸쳐 deploy.
- 각 step 에서 error rate / latency 모니터링. 튀면 자동 rollback.
- 금본위. 좋은 observability + feature flag 또는 weighted router 필요.
Pipeline 모양이 전략을 반영
Canary pipeline 은 rolling (큰 deploy 하나) 보다 job 더 많아 (traffic step 당 하나). 고른 전략이 YAML 모양과 rollback 의 복잡도를 결정.