当前位置 : 主页 > 操作系统 > centos >

部署 Argo CD

来源:互联网 收集:自由互联 发布时间:2022-06-20
说明 Argo CD 有多种部署方式,常用的有三种: 直接通过yaml文件部署 使用helm方式部署 使用KubeSphere部署 Argo CD,仅测试可参考在Linux上单机安装 KubeSphere 这里我们使用第一种方式,通过

说明

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.yaml # apply kubectl apply -n argocd -f install.yaml

说明:

(1)使用指定最新版版本:

# 当前最新的稳定版 v2.0.4 kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/v2.0.4/manifests/install.yaml # 生产环境,则可以使用下面的命令部署一个 HA 高可用的版本: kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/v2.0.4/manifests/ha/install.yaml

(2)如果你对 UI、SSO、多集群管理这些特性不感兴趣,只想把应用变更同步到集群中,那么你可以使用--disable-auth标志来禁用认证,可以通过下面命令实现:

kubectl patch deploy argocd-server -n argocd -p '[{"op": "add", "path": "/spec/template/spec/containers/0/command/-", "value": "--disable-auth"}]' --type json

查看运行的 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 Git仓库发布页面https://github.com/argoproj/argo-cd/releases/latest查看最新版本的 Argo CD 或运行以下命令来获取版本:

VERSION=$(curl --silent "https://api.github.com/repos/argoproj/argo-cd/releases/latest" | grep '"tag_name"' | sed -E 's/.*"([^"]+)".*/\1/') # VERSION 在下面的命令中替换为你要下载的 Argo CD 版本: curl -sSL -o /usr/local/bin/argocd https://github.com/argoproj/argo-cd/releases/download/$VERSION/argocd-linux-amd64

修改 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

部署 Argo CD

上一篇:Centreon监控超融合集群Proxmox VE(PVE)
下一篇:没有了
网友评论