블루-그린 배포(Blue-Green Deployment)는 두 개의 동일한 운영 환경을 유지하며 트래픽을 전환하는 무중단 배포 전략이다. 롤백이 빠르고 배포 위험이 낮다.
동작 방식
블루 환경 (현재 운영): v1.0 — 트래픽 100%
그린 환경 (새 버전): v2.0 — 트래픽 0%
배포 과정:
1. 그린 환경에 v2.0 배포
2. 그린 환경 테스트/검증
3. 로드 밸런서 전환: 블루(0%) → 그린(100%)
4. 문제 발생 시: 즉시 블루로 롤백
배포 후:
블루 환경: v1.0 — 대기 (빠른 롤백용)
그린 환경: v2.0 — 트래픽 100%
yaml
# Service (트래픽 전환)
apiVersion: v1
kind: Service
metadata:
name: app-service
spec:
selector:
app: web
version: green # blue → green으로 변경만 하면 됨
| 항목 | 블루-그린 | 카나리 |
|---|
| 방식 | 전체 전환 | 점진적 트래픽 이동 |
| 롤백 속도 | 즉각적 | 점진적 |
| 비용 | 2배 인프라 | 약간 더 |
| 리스크 | 낮음 | 더 낮음 |
관련 개념
- •Kubernetes — 블루-그린 배포 구현
- •CI/CD — 자동화된 배포 파이프라인
- •로드 밸런서 — 트래픽 전환
참고문헌
- •Humble, J. & Farley, D. Continuous Delivery