gitops-demo

ArgoCD 학습 가이드

GitOps를 위한 선언적 Kubernetes CD(Continuous Delivery) 도구인 ArgoCD를 학습합니다.

📚 목차

01. ArgoCD 개요

02. Kind에 ArgoCD 설치하기

03. K3s에 ArgoCD 설치하기 (선택사항)

04. Keycloak SSO 연동

🎯 학습 목표

이 섹션을 통해 다음을 학습할 수 있습니다:

💡 권장 학습 경로

  1. 개념 이해01-overview.md
  2. 환경 구축02-kind-installation.md
  3. 실습:
    • Git Repository 연결
    • Application 생성 및 배포
    • Auto Sync 확인
  4. 고급 기능04-keycloak-sso.md

📝 사전 요구사항

필수

권장

🚀 빠른 시작

ArgoCD를 빠르게 설치하려면:

# 1. Namespace 생성
kubectl create namespace argocd

# 2. ArgoCD 설치 (공식 매니페스트)
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml

# 3. ArgoCD Server를 NodePort로 노출
kubectl patch svc argocd-server -n argocd -p '{"spec": {"type": "NodePort"}}'

# 4. 초기 admin 비밀번호 확인
kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d && echo

# 5. ArgoCD 접속
# localhost:<nodeport> 또는 포트 포워딩
kubectl port-forward svc/argocd-server -n argocd 8080:443
# https://localhost:8080

[!TIP] 프로덕션 환경에서는 Helm을 사용한 설치를 권장합니다. 자세한 내용은 02-kind-installation.md를 참조하세요.

📦 주요 구성 요소

ArgoCD Server

Application Controller

Repo Server

Redis

Dex (선택사항)

🛠️ 주요 기능

1. GitOps 기반 배포

2. 자동 동기화

3. 멀티 클러스터 지원

4. Rollback 및 히스토리

5. RBAC

🔗 다음 단계

ArgoCD 설치 및 설정 후:

  1. Jenkins 설치 - CI 파이프라인 구축
  2. Vault 연동 - 시크릿 관리
  3. Application 배포 자동화 구현

📖 참고 자료

🎓 추천 도서