上山打老虎 发表于 2021-8-3 13:53:13

部署 Argo CD

说明
Argo CD 有多种部署方式,常用的有三种:

[*]直接通过yaml文件部署
[*]使用helm方式部署
[*]使用KubeSphere部署 Argo CD,仅测试可参考在Linux上单机安装 KubeSphere
这里我们使用第一种方式,通过yaml文件部署。
部署流程

创建命名空间
kubectl create namespace argocd
下载 yaml 部署文件
# 下载yaml文件
wget https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yamlapply
kubectl apply -n argocd -f install.yaml
查看运行的 Pod
kubectl get pod -n argocd
NAME                                  READY   STATUS    RESTARTS   AGE
argocd-application-controller-0       1/1   Running   0          16h
argocd-dex-server-5cc647cc95-kwgnh    1/1   Running   0          16h
argocd-redis-f4fb46c44-7sdgf          1/1   Running   0          16h
argocd-repo-server-6f9986fd5b-hkm2c   1/1   Running   0          16h
argocd-server-56f4487bb7-gxc78      1/1   Running   0          16h安装 Argo CD CLI
要与 Argo CD API Server 进行交互,我们需要安装 CLI 命令:

下载 argocd CLI
# 下载 CLI
wget https://github.com/argoproj/argo-cd/releases/download/v2.0.0/argocd-linux-amd64
cp argocd-linux-amd64 /usr/local/bin/argocd
chmod +x /usr/local/bin/argocd查看版本
argocd version
修改 Argo CD 的 service 类型
上面 Argo CD 使用 yaml 方式部署,修改 serivce 类型为 nodeport,以便访问 Argo CD API Server:
kubectl patch svc argocd-server -n argocd -p '{"spec": {"type": "NodePort"}}'
查看 Argo CD的 service port
查看 Argo CD server service,记录 nodeport 信息:
kubectl get svc -n argocd
NAME                  TYPE      CLUSTER-IP      EXTERNAL-IP   PORT(S)                      AGE
argocd-dex-server       ClusterIP   10.233.62.221   <none>      5556/TCP,5557/TCP,5558/TCP   16h
argocd-metrics          ClusterIP   10.233.45.86    <none>      8082/TCP                     16h
argocd-redis            ClusterIP   10.233.14.50    <none>      6379/TCP                     16h
argocd-repo-server      ClusterIP   10.233.14.35    <none>      8081/TCP,8084/TCP            16h
argocd-server         NodePort    10.233.3.247    <none>      80:30287/TCP,443:32424/TCP   16h
argocd-server-metrics   ClusterIP   10.233.0.43   <none>      8083/TCP                     16h登录 Argo CD

修改 Argo CD 默认密码,方法如下:
# bcrypt(password)=$2a$10$0B5f6xlaKTA2bKRUmyzW6.JwtDa0dv5YvvpP4Ds5kL9en/U5hZ69O
kubectl -n argocd patch secret argocd-secret \
-p '{"stringData": {
"admin.password": "$2a$10$0B5f6xlaKTA2bKRUmyzW6.JwtDa0dv5YvvpP4Ds5kL9en/U5hZ69O",
"admin.passwordMtime": "'$(date +%FT%T%Z)'"
}}'说明:关于首次登录不上的问题,建议使用上面方法手动修改密码,官网链接,另外密码加密可使用工具:Bcrypt Password Generator。

Argo CD CLI 登录
argocd login 192.168.98.221:30287 --username admin --password Transsion#123
Web 登录
https://192.168.98.221:30287

文档来源:51CTO技术博客https://blog.51cto.com/wutengfei/3253819
页: [1]
查看完整版本: 部署 Argo CD