Set up Argo CD#
Warning
DLS users: Diamond runs a managed ArgoCD (Argus) — do not install your own. See the internal developer guide. This page targets self-hosted, non-DLS clusters only.
Argo CD is the GitOps continuous
delivery tool used by the Deploy an IOC with ArgoCD tutorial. Earlier cluster
tutorials deploy with plain Helm; ArgoCD adds the GitOps layer on top. This
short page installs ArgoCD into the cluster from Set up a Kubernetes Cluster,
reaches its web UI, retrieves the admin password and installs the argocd CLI.
Install the Argo CD server#
Install ArgoCD into its own argocd namespace, using the upstream stable
install manifest:
kubectl create namespace argocd
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
Wait for the pods to come up:
kubectl -n argocd get pods --watch
Reach the web UI#
The ArgoCD server is not exposed outside the cluster by default. Port-forward it
to your workstation, then open https://localhost:8081/ in a browser (accept the
self-signed certificate):
kubectl port-forward svc/argocd-server -n argocd 8081:443
Retrieve the admin password#
The web UI and the CLI both log in as admin. The initial password is stored in
a Kubernetes secret — print it with:
kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 --decode ; echo
Install the argocd CLI#
Finally install the argocd command-line client (used by ec and by
Deploy an IOC with ArgoCD):
curl -sSL -o argocd-linux-amd64 https://github.com/argoproj/argo-cd/releases/latest/download/argocd-linux-amd64
sudo install -m 555 argocd-linux-amd64 /usr/local/bin/argocd
rm argocd-linux-amd64
With the port-forward running, log in to check everything works:
argocd login localhost:8081
Next steps#
ArgoCD is now installed and reachable. Continue with Deploy an IOC with ArgoCD to put a services repo under GitOps control.