피드로 돌아가기
Dev.toDevOps
원문 읽기
Hub-Spoke 모델로 6개 EKS 클러스터 통합 관리하는 GitOps 전략
Part 5: GitOps with ArgoCD
AI 요약
Context
클러스터별 ArgoCD 개별 설치 시 관리 포인트가 선형적으로 증가하는 구조. 제어 평면의 분산으로 인해 업그레이드와 모니터링의 운영 오버헤드 발생. 일관된 감사 로그 확보와 통합된 UI 관제 체계의 부재.
Technical Solution
- 단일 ArgoCD 인스턴스가 여러 클러스터를 관리하는 Hub-Spoke 토폴로지 설계
- ApplicationSets를 활용하여 환경별 Application을 동적으로 생성하는 자동화 구조
- AppProject의 destination 설정을 server: "*"로 지정하여 클러스터 권한 확인 오류 해결
- VPC Peering 기반의 프라이빗 엔드포인트를 통해 외부 노출 없이 Spoke API 서버와 통신
- ServiceAccount와 ClusterRoleBinding을 Spoke 클러스터에 배포하는 중앙 집중식 리소스 관리 방식
- Git 커밋을 유일한 진실 공급원으로 삼아 Drift Detection 및 Self-healing 체계 구축
Key Takeaway
운영 규모 확장에 따라 제어 평면을 통합함으로써 관리 복잡도를 상수로 유지하는 전략적 설계가 중요함. 인프라의 상태를 코드화하여 선언적으로 관리하는 GitOps 모델은 복구 탄력성과 가시성을 동시에 확보하는 핵심 수단임.
실천 포인트
다중 클러스터 환경에서 ArgoCD AppProject 설정 시, 권한 에러 방지를 위해 destination에 name 대신 server: "*" 옵션을 사용할 것