배포가 두렵지 않은 팀 만들기: Argo Rollouts로 카나리 배포 자동화하기
데브옵스
배포가 두렵지 않은 팀 만들기: Argo Rollouts로 카나리 배포 자동화하기
두줄요약
쿠버네티스 기본 배포의 한계를 줄이기 위해 Argo Rollouts로 카나리 배포를 자동화했습니다. Nginx Ingress와 Datadog 연동으로 점진적 전환과 무인 롤백 구조를 구축했습니다.
핵심 내용
- 쿠버네티스 기본 Deployment 롤링 업데이트의 빠른 전파, 느린 롤백, 사람 의존성으로 인한 배포 리스크 정리
- 99.9% 가용성 SLO와 한 달 43.2분 수준의 에러 버짓을 바탕으로 점진적 트래픽 전환과 무인 롤백 필요성 제시
- Argo Rollouts를 카나리 배포 자동화 도구로 선택한 이유로 Nginx Ingress 연동, Datadog 기반 분석, 대시보드 제공 강조
- Rollout, AnalysisTemplate, AnalysisRun, stable/canary ReplicaSet, 단계별 setWeight와 pause로 구성된 동작 흐름 설명
구조와 흐름
- Argo Rollouts 컨트롤러가 Rollout 리소스 변화를 감지해 배포 전략에 따라 클러스터 상태 조정
- Nginx Ingress가 트래픽을 stable/canary ReplicaSet으로 백분율 분배
- AnalysisTemplate과 Datadog 메트릭으로 이상 여부를 판단해 자동 승격 또는 롤백
