참고: https://argoproj.github.io/argo-workflows/quick-start/


ArgoCD 개념

  • GitOps를 구현하기 위한 도구 중 하나
    • GitOps: Git 저장소를 사용하는 소프트웨어 배포 접근 방식(인프라+소프트웨어)
    • Declarative Application Management 사용
      • git에 push한 desired state와 현재 kubernetes의 상태를 확인해 동기화 시켜줌
  • 이외의 기능
  • 단점
    • 쿠버네티스에서만 동작
    • 많은 지식이 필요
    • 빌드 파이프라인은 별도 구축 필요
    • 버전마다 버그가 있어 최신 버전 권장

ArgoCD 설치

  • ArgoCD 설치 - Rancher Desktop 기반의 k3s 환경에서 진행 중

❗ 튜토리얼의 설치 방법은 연습을 위한 것으로 실 운영 환경에선 설정 검토가 필수!!! ❗

kubectl create namespace argocd
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml

# 설치 확인
kubectl -n argocd get po

 

  • argocd-server service 접속

접속을 위해 ClusterIP가 아닌 NodePort로 변경 (LoadBalancer가 있으면 그걸로 바꿔도 됨)

kubectl patch svc argocd-server -n argocd -p '{"spec": {"type": "NodePort"}}'

# window powershell에서 작업할 경우
kubectl patch service argocd-server -n argocd -p '{\"spec\": {\"type\": \"NodePort\"}}'

https://127.0.0.1:31497 로 접속

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

# window powershell의 경우 base64 설치 안되어있음(그냥 직접 확인하자)
 kubectl edit secret -n argocd argocd-initial-admin-secret
 # 찾은 비밀번호를 base64로 디코딩!!!!

admin / 찾은 초기 비밀번호 로 로그인!

 

  • hello-world 예제 배포

실습 자료: https://github.com/choisungwook/argocd-practice/tree/main/example-1

New App 클릭
App Name, Project Name 작성
설정 후 create 클릭
sync버튼 눌러서 동기화..

'Container > Kubernetes' 카테고리의 다른 글

[Kubernetes] Rancher Desktop 설정  (0) 2023.09.25

+ Recent posts