
데브옵스
Gitops를 활용한 AWS EKS Blue-Green 업데이트 적용기
두줄요약
EKS 1.22 지원 종료에 맞춰 GitOps 기반 Blue-Green 방식으로 클러스터를 교체했습니다. Route53 가중치 전환과 ArgoCD 분리 운영으로 롤백 제약을 줄이고 버전별 API 호환성도 점검했습니다.
문제 상황
- EKS 1.22 지원 종료를 앞두고 클러스터 업데이트 필요
- 운영 중인 환경에서 In-place 롤링 업데이트 시 롤백 제약과 다단계 업데이트 위험 존재
- 네트워크, 보안그룹, ArgoCD 멀티클러스터 전환 작업이 겹치며 시간 부담 증가
원인 분석
- EKS 버전 종료 시 Control Plane과 Data Plane, Add-on 버전 불일치 위험
- Kubernetes 버전별 API 변경으로 Manifest 호환성 확인 필요
- 서비스 레포와 배포 레포가 섞인 구조로 인프라 수정 시 이미지 재생성 문제 발생
해결 방법
- 새 EKS 클러스터를 Green으로 만들고 ArgoCD로 애플리케이션, Add-on, 3rd-party 솔루션 재구성
- Route53 가중치 기반 라우팅으로 Green 전환 후 문제 시 Blue로 트래픽 롤백
- App of Apps 구조와 배포 전용 Repo 분리로 이미지 태그 관리와 버전별 Chart 관리 체계화
주의할 점
- kubent, kubepug 등으로 deprecated API를 사전에 점검 필요
- PDB, CronJob처럼 버전별 API 변경으로 배포 실패 가능성 존재
- Route53 TTL 300초로 인해 전환 반영 지연 가능성 존재
