Argo CD
Argo CD(아르고 CD)는 쿠버네티스를 위한 선언적 GitOps 지속적 배포(CD) 도구다. Git 저장소에 정의된 애플리케이션의 원하는 상태를 기준으로, 실제 클러스터 상태를 자동으로 동기화하고 관리한다.
Argo CD는 Git을 단일 진실 공급원(Single Source of Truth)으로 삼아 배포의 투명성과 재현성을 높인다. CNCF 프로젝트로서 클라우드 네이티브 환경의 표준적인 배포 도구로 널리 채택되고 있다.
주요 특징
- 선언적 GitOps: Git에 정의된 상태를 기준으로 배포를 관리함.
- 자동 동기화: 클러스터 상태를 원하는 상태와 지속적으로 일치시킴.
- 드리프트 감지: 실제 상태와 정의된 상태의 차이를 탐지함.
- 롤백 지원: 이전 Git 커밋으로 손쉽게 복구함.
- 시각적 대시보드: 애플리케이션 상태와 구성을 UI로 확인함.
장점
- 배포 투명성: 모든 변경이 Git 이력으로 추적됨.
- 재현성: 동일한 정의로 배포를 반복 재현함.
- 빠른 복구: 문제 시 이전 상태로 즉시 롤백함.
- 일관성: 여러 클러스터에 동일한 구성을 적용함.
- 운영 효율: 수동 배포를 줄여 운영 부담을 낮춤.
관련 용어
- GitOps: Git을 기준으로 인프라와 배포를 관리하는 방식.
- 쿠버네티스: 컨테이너를 오케스트레이션하는 플랫폼.
- 선언적 구성: 원하는 상태를 명시해 시스템이 맞추도록 하는 방식.
- CI/CD: 지속적 통합·배포로 변경을 자동 반영하는 체계.
- CNCF: 클라우드 네이티브 기술을 육성하는 재단.
주요 솔루션 및 사용 사례
- 주요 솔루션
- Argo CD 애플리케이션: 배포 대상과 소스를 정의하는 핵심 리소스.
- ApplicationSet: 다수 클러스터·환경에 배포를 자동 생성함.
- Argo Rollouts 연계: 카나리·블루그린 배포를 지원함.
- Helm·Kustomize 지원: 다양한 매니페스트 도구와 통합함.
- SSO·RBAC: 접근 제어와 인증을 통합 관리함.
- 사용 사례
- GitOps 배포 자동화: Git 커밋으로 애플리케이션을 자동 배포함.
- 멀티 클러스터 관리: 여러 클러스터에 일관된 구성을 적용함.
- 구성 드리프트 방지: 수동 변경을 감지해 정의된 상태로 복구함.
- 점진적 배포: 카나리 방식으로 안전하게 롤아웃함.
- 감사·규제 대응: 배포 이력을 Git으로 추적해 감사에 활용함.

