Install

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

https://argoproj.github.io/argo-cd/getting_started/

Proxy connection to server

kubectl port-forward svc/argocd-server -n argocd 8080:443

You can access the argocd server at

http://localhost:8080

Until we configure SSL you will get a certificate error in the browser. Click continue and use the default credentials

Default Credentials

User: admin

Password: it is the name of the pod, get it with:

kubectl get pods -n argocd -l app.kubernetes.io/name=argocd-server -o name | cut -d'/' -f 2

The default password is generated the first time the pod is created. If the pod is restarted the password will not change and you won’t be able to get the password this way.

Troubleshooting

Too many redirects when using nginx ingress controller:

If you have configured SSL termination elsewhere (e.g. ALB, nginx, …), disable SSL handling in argocd-server by adding insecure to the command:

- --insecure

https://argoproj.github.io/argo-cd/operator-manual/ingress/

Forgot password

Reset to the default (pod name) by editing secret argocd/argocd-secret and removing the keys ‘admin.password’ and ‘admin.passwordMtime’.

kubectl edit secret argocd-secret -n argocd

Restart the argocd server after:

kubectl rollout restart deployment/argocd-server -n argocd

https://argoproj.github.io/argo-cd/faq/#i-forgot-the-admin-password-how-do-i-reset-it

Stuck deleting the argocd namespace

get the namespace as json file

kubectl get ns argocd -o json > deleteme.json

remove “kubernetes” from the list of finalizers in the deleteme.json file

start the api proxy

kubectl proxy

update the file back

curl -k -H "Content-Type: application/json" -X PUT --data-binary @deleteme.json \
http://localhost:8001/api/v1/namespaces/argocd/finalize
Categories: TL;DR

0 Comments

Leave a Reply

Your email address will not be published. Required fields are marked *