安装 Argo CD 并登录
在任意 Kubernetes 集群上安装 Argo CD 并访问 Web UI。
本指南将 Argo CD 安装到集群中,并让你登录 Web UI。你需要为一个可以随意试验的集群配置好 kubectl。本地的 kind 或 minikube 集群是理想选择。
创建命名空间并应用安装清单
Argo CD 运行在它自己的命名空间中。先创建命名空间,然后应用官方安装清单:
kubectl create namespace argocd
kubectl apply -n argocd --server-side --force-conflicts \
-f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
较新的 Argo CD 版本推荐使用 server-side apply,因为部分内置的 CRD 过大,超出了 client-side apply 的注解大小限制。请查看入门页面,了解你所安装版本的确切命令。如果你希望先审阅将要运行的内容,可以先下载清单并阅读。
等待各组件就绪
kubectl get pods -n argocd
kubectl wait --for=condition=Ready pods --all -n argocd --timeout=300s
你应该会看到 application controller、repo server、API server、Redis 以及一些辅助控制器。有些 Pod 需要一分钟才会就绪,因此一开始看到 ContainerCreating 是正常的。
访问 Web UI
API 服务器通过名为 argocd-server 的 ClusterIP Service 暴露。对于本地集群,使用 port-forward:
kubectl port-forward svc/argocd-server -n argocd 8080:443
打开 https://localhost:8080。由于 Argo CD 默认生成自签名证书,浏览器会给出证书警告。对于这个本地环境,接受该警告即可。
获取初始管理员密码并登录
用户名是 admin。初始密码在安装时生成,并存放在一个 Secret 中:
kubectl -n argocd get secret argocd-initial-admin-secret \
-o jsonpath="{.data.password}" | base64 -d; echo
将其粘贴到登录表单中。由于尚未注册任何应用,UI 会是空的,这正是下一篇指南的内容。
在将其用于本地试验以外的任何场景之前,有两件事要做:更改管理员密码并删除初始密码 Secret;并通过带有真实 TLS 证书的 Ingress 或 LoadBalancer 暴露 Argo CD,而不是依赖 port-forward。