카테고리 없음

[MLOps] ArgoCD

0hyeon의 2024. 12. 17. 20:05
반응형

 

1. ArgoCD

ArgoCD는 Kubernetes 클러스터에서 GitOps 방식으로 애플리케이션 배포를 자동화하는 툴

 

 

2.Install 

-로컬

kubectl create namespace argocd

curl -LO https//raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml

kubectl apply -f install.yaml -n argocd

#로컬에서
kubectl patch svc argocd-server -n argocd -p '{"spec":{"type":"NodePort"}}'

#배포시
kubectl patch svc argocd-server -n argocd -p '{"spec":{"type":"LoadBalancer"}}'

kubectl get secrets argocd-initial-admin-secret -n argocd -o yaml

 

-kubectl환경

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

#External-ip 가할당이 안된상태를 확인 로드밸런서 타입지정해야한다는 의미
kubectl get -n argocd svc -w argoced-server

 

 

3.서비스타입 타입변경( LoadBalancer )

 

 

 

Kubernetes의 argocd-server 서비스의 설정을 수정하는 데 사용되며, 서비스의 타입(type)을 LoadBalancer로 변경

 

4. LoadBalancer변경확인

kubectl get svc argocd-server -n argocd

 

 

질문. ArgoCD는 cicd인데 분산처리하는 로드밸런서가 왜필요할까?

 

  • ArgoCD의 웹 UI는 argocd-server 서비스로 제공됩니다.
  • 기본적으로 ClusterIP 타입으로 생성되어 클러스터 내부에서만 접근 가능합니다.
  • 로드밸런서를 사용하여 클러스터 외부에서도 ArgoCD UI에 접근할 수 있습니다.

=> 그렇다고 한다. 클러스터외부에서도 ui에 접속하기 위해. 

 

5. ArgoCD ui 접속계정 활성화 및 접속주소 

 

kubectl get svc -n argocd

 

*로드밸런서안되면 노드포트로 argo UI 접속

localhost:31988

 

 

접속할 id/pw

 

 

6.argoCD 설치확인

kubectl get pds -n argocd

 

반응형