Setting Up Argo CD With Helm Charts In Kubernetes
December 30, 2023
I am just playing around with Argo CD, To’ve more idea about GitOps with Argo CD, But I was having some challenges around the Ingress with ERR_TOO_MANY_REDIRECTS
, I have to look at the Helm Values from the Github Repository - https://github.com/argoproj/argo-helm and then look more into some issues raised on Github - https://github.com/argoproj/argo-cd/issues/2953 and then I was able to successfully set it up.
How To Install Argo CD With Helm Charts
- Add the Argo CD Helm charts repo
helm repo add argo https://argoproj.github.io/argo-helm
- Then install argocd, You can make use of this custom-override file by only changing the domain url and then the annotations to march your cluster config.
server:
ingress:
enabled: true
annotations:
kubernetes.io/ingress.class: nginx
kubernetes.io/tls-acme: "true"
cert-manager.io/cluster-issuer: letsencrypt
cert-manager.io/acme-challenge-type: dns01
cert-manager.io/acme-dns01-provider: cloudflare
ingressClassName: ""
hosts:
- "argo.shehuawwal.one"
paths:
- /
pathType: Prefix
tls:
- secretName: argo.shehuawwal.one
hosts:
- argo.shehuawwal.one
configs:
params:
server.insecure: "true"
You can save the above file as argo-custom-override.yaml
.
Install argo with the override file
helm upgrade --install argocd argo/argo-cd --namespace argocd --create-namespace -f argo-custom-override.yaml
You can then check to see if all pods are running. As you can see all pods are running below.
kubectl -n argocd get pods
NAME READY STATUS RESTARTS AGE
argocd-application-controller-0 1/1 Running 0 153m
argocd-applicationset-controller-7985f946dd-tfbfp 1/1 Running 0 153m
argocd-dex-server-5d5846d67d-65p4m 1/1 Running 0 153m
argocd-notifications-controller-847cfdc894-68w9r 1/1 Running 0 153m
argocd-redis-6fdc6cc966-rnlcx 1/1 Running 0 153m
argocd-repo-server-6c49c96879-t789t 1/1 Running 0 153m
argocd-server-77d4b76b69-gx2n8 1/1 Running 0 153m
How To View Argo CD Password
To view the argo cd password just run the kubectl command below
kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d
And access the webui or cli, The Username is admin
and the password you view from above.
That’s all.