argocd

2024. 11. 25. 22:49·CloudNative/App Definition & Developement

기록한줄 알았는데 빼먹었던 argo를 3일동안 조금씩 써야겠다.

 

overview

ArgoCD는 GitOps 기반으로 Kubernetes 클러스터를 관리하는 선언적 배포 도구이다.

장점은 

  • GitOps도구답게 Git을 단일 소스로 활용해 변경 추적 가능.
  • 클러스터 상태와 선언적 정의 AUTO SYNC.
  • 시각화: UI 제공으로 배포 상태를 직관적으로 확인 가능.

단점은

  • 초기 설정과 러닝커브가 가파를 수 있음.
  • 일부 CRD 미지원
  • 리소스 소비

Argo Rollouts 을 추가로 사용하므로서 배포전략을 사용할 수 있는데

  1. Canary 배포: 트래픽을 점진적으로 증가시키며 새로운 버전 안정성 확인할 수 있는데 rollingUpdate와 다른점은 점진적 증가 구간에 대한 설정과 개입이 가능하다는 것
  2. Blue-Green 배포: 새 버전과 기존 버전을 동시에 유지하며 즉시 전환 가능.

 

installation

애용하는 bitnami chart로 구성해보자.

helm repo add bitnami https://charts.bitnami.com/bitnami

helm pull bitnami/argo-cd

cd argo-cd

vi values.yaml
# argocdServerAdminPassword: "password1!"

helm install argocd -f values.yaml .

kubectl edit svc argocd-argo-cd-server
#spec.type: NodePort

kubectl get svc
NAME                            TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)                         AGE
argocd-argo-cd-app-controller   ClusterIP   10.97.66.18      <none>        8082/TCP                        98s
argocd-argo-cd-repo-server      ClusterIP   10.98.227.126    <none>        8081/TCP                        98s
argocd-argo-cd-server           NodePort    10.96.140.37     <none>        80:32712/TCP,443:30872/TCP      98s
argocd-redis-headless           ClusterIP   None             <none>        6379/TCP                        98s
argocd-redis-master             ClusterIP   10.103.178.103   <none>        6379/TCP                        98s

 

http://localhost:32712를 통해 접속해보자.

https로 redirect 된다.

 

admin // password1! 로 로그인해보자.

 

이제 application 생성을 해보자.

728x90

'CloudNative > App Definition & Developement' 카테고리의 다른 글

openshift gitlab + gitlab runner CI/CD  (2) 2024.12.19
argocd applicationSet  (2) 2024.11.26
tekton gradle build + yaml update  (0) 2024.11.21
confluentinc/cp-kafka KRaft yaml (zookeeper out)  (2) 2024.11.20
confluentinc/cp-kafka, zookeeper, kafka-ui  (1) 2024.11.18
'CloudNative/App Definition & Developement' 카테고리의 다른 글
  • openshift gitlab + gitlab runner CI/CD
  • argocd applicationSet
  • tekton gradle build + yaml update
  • confluentinc/cp-kafka KRaft yaml (zookeeper out)
yunapapa
yunapapa
working on the cloud
    250x250
  • yunapapa
    supermoon
    yunapapa
  • 전체
    오늘
    어제
    • 분류 전체보기 (94)
      • 개발 (20)
        • java (17)
        • web (2)
        • MSX (1)
        • Go (0)
      • CloudNative (50)
        • App Definition & Developeme.. (17)
        • Orchestration & Management (4)
        • Runtime (3)
        • Provisioning (7)
        • Observability & Analysis (14)
        • event review (5)
      • AWS (7)
      • 환경관련 (17)
      • 취미생활 (0)
        • 맛집 (0)
        • 게임 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • CNCF Past Events
    • Kubernetes Korea Group
  • 공지사항

  • 인기 글

  • 태그

    오블완
    helm
    Pinpoint
    AWS
    APM
    OpenShift
    dop-c02
    gitlab
    k8s
    devops
    티스토리챌린지
    istio
    springboot
    Java
    kubernetes
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
yunapapa
argocd
상단으로

티스토리툴바