-
ArgoCD 설치 및 설정Computer Science/Argo 2023. 8. 15. 00:38
1. ArgoCD 설치
2. ArgoCD 설정
1. ArgoCD 설치하기
https://argo-cd.readthedocs.io/en/stable/getting_started/
namespace를 생성한뒤 argocd를 설치해준다.
kubectl create namespace argocd kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
설치가 완료되면 포트포워딩을 통해 argocd server에 접속한다.
kubectl port-forward svc/argocd-server -n argocd 8080:443
이제 브라우저를 통해 localhost:8080 으로 접속하면 로그인 화면이 나오는데 초기 관리자 id는 admin이며 pw는 다음 명령어로 알수 있다.
kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d
2. ArgoCD 설정
로그인을 한 후 들어가서 application을 하나 생성해보려고 한다면 다음과 같은 화면이 뜨게 된다.
- Application Name
생성할 Application의 이름.
- Project Name
Project는 Appplication을 관리하는 그룹이라고 보면 된다. Default가 기본적으로 생성되어 있으며 따로 Setting에서 생성할 수 있다.
- SYNC POLICY
동기화 옵션이다. Manual로 한다면 내가 직접 동기화를 해주어야하고 Automatic으로 한다면 자동으로 동기화가 된다.
- PRUNE RESOURCES ( SYNC POLICY Automatic )
Git에 정의되어 있는 파일이 없어진다면 Argo가 자동적으로 resources를 삭제한다.
- SELF HEAL ( SYNC POLICY Automatic )
클러스터에 변화가 생겨도 Git에 정의되어 있는 것으로 적용한다.
- SET DELETION FINALIZER
ArgoCD가 해당 리소스가 삭제될 때 설정한 작업들을 완료한 후 리소스가 삭제되도록 보장한다.
SYNC OPTIONS
- SKIP SCHEMA VALIDATION
Application 설정파일에 대한 스키마의 유효성 검사를 하지 않는다.
- AUTO-CREATE NAMESAPCE
클러스터에 namespace가 존재하지 않을 경우 자동으로 생성한다.
- PRUNE LAST
동기화의 마지막 단계에서 현재 배포된 버전에는 없는 리소스라면 제거한다.
- APPLY OUT OF SYNC ONLY
현재 클러스터 상태를 확인하여 동기화되지 않은 리소스에 대해서만 업데이트를 진행한다.
- RESPECT IGNORE DIFFERENCES
Git 리포지토리의 변경 사항 중에서 무시 대상으로 설정된 부분은 클러스터의 상태를 변경하지 않습니다.
- SERVER-SIDE APPLY
변경사항 확인 등의 작업이 클라이언트가 아닌 서버 ( k8s ) 측에서 확인하고 배포하도록 하는 옵션이다.
'Computer Science > Argo' 카테고리의 다른 글
Argo Workflow 도입하기 (0) 2023.07.04