Gitops를 활용한 AWS EKS Blue-Green 업데이트 적용기
데브옵스
Gitops를 활용한 AWS EKS Blue-Green 업데이트 적용기
두줄요약
EKS 1.22 종료 대응을 위해 Route53 가중치 기반 Blue-Green 업그레이드를 적용했습니다. ArgoCD와 GitOps로 클러스터를 분리 관리하며 API 호환성과 롤백 제약을 줄였습니다.
문제 상황
- Amazon EKS 1.22 지원 종료를 앞둔 상태에서 클러스터 버전 업그레이드 필요
- 인플레이스 롤링 업데이트는 이전 버전 롤백 제약과 Add-on, 3rd-party 호환성 점검 부담 존재
- 네트워크, 보안그룹, ArgoCD 멀티클러스터 전환 작업까지 겹쳐 일정 압박 발생
해결 방법
- 신규 EKS를 Green 클러스터로 생성하고 Route53 가중치 기반으로 트래픽을 점진 전환
- ArgoCD App of Apps 구조로 애플리케이션, Add-on, 외부 솔루션을 클러스터별로 분리 관리
- kubent 등으로 Kubernetes 1.25에서 제거되는 API를 사전 점검하고 Manifest 수정
성능/운영 포인트
- Blue, Green 양쪽이 동일한 이미지 태그를 바라보도록 CI를 분리해 배포 일관성 확보
- Helm Template과 Kustomize를 활용해 Kubernetes 버전별 Chart 재사용성 강화
- Route53 TTL 값 조정 필요, 누락된 도메인은 임시 Proxy로 확인
적용해볼 점
- 마이너 버전 건너뛰기와 롤백 가능성을 고려한 Blue-Green 업그레이드 전략 검토
- 지원 종료 일정과 API 폐기 목록을 미리 확인하는 사전 점검 체계 마련
- ArgoCD와 GitOps로 인프라, 애플리케이션, Add-on 운영 분리
