找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

754

积分

0

好友

104

主题
发表于 6 小时前 | 查看: 1| 回复: 0

ArgoCD 作为一款主流的 GitOps 持续交付工具,其强大之处在于能够通过添加远程集群的 Kubeconfig 或 Token 凭证,实现对多个 Kubernetes 集群的统一管理与应用部署,从而轻松应对跨集群的交付场景。

添加远程集群

要实现多集群管理,首先需要将目标集群的访问凭证(kubeconfig 文件)添加到你的本地环境中。许多开发者喜欢使用 kubecm 这类工具来管理多个上下文(context),你可以通过以下命令查看当前已有的上下文:

kubectl config get-contexts

目前,添加集群的操作需要通过 ArgoCD CLI 命令行工具来完成,Web UI 界面暂不支持此功能。首先,你需要登录到你的 ArgoCD 实例:

argocd login 10.218.191.10:32698 --username admin --password vC80AqMZsmZprDKm --insecure

登录成功后,使用 argocd cluster add 命令并指定目标集群的上下文名称即可添加集群:

argocd cluster add context-name

以下是一个在 Windows PowerShell 环境下的完整操作示例及输出:

PS E:\yaml\argocd> .\argocd.exe login 10.218.191.10:32698 --username admin --password vC80AqMZsmZprDKm --insecure
'admin:login' logged in successfully
Context '10.218.191.10:32698' updated
PS E:\yaml\argocd> .\argocd.exe cluster add ack-zb
WARNING: This will create a service account `argocd-manager` on the cluster referenced by context `ack-zb` with full cluster level privileges. Do you want to continue [y/N]? y
{"level":"info","msg":"ServiceAccount \"argocd-manager\" already exists in namespace \"kube-system\"","time":"2026-01-14T17:20:25+08:00"}
{"level":"info","msg":"ClusterRole \"argocd-manager-role\" updated","time":"2026-01-14T17:20:25+08:00"}
{"level":"info","msg":"ClusterRoleBinding \"argocd-manager-role-binding\" updated","time":"2026-01-14T17:20:25+08:00"}
{"level":"info","msg":"Using existing bearer token secret \"argocd-manager-long-lived-token\" for ServiceAccount \"argocd-manager\"","time":"2026-01-14T17:20:25+08:00"}
Cluster 'https://10.222.62.166:6443' added

添加完成后,你可以在 ArgoCD 的 Web 界面中查看集群状态。

ArgoCD UI中成功添加远程集群后的设置页面显示

如图所示,新集群 ack-zb 已经成功加入。如果其连接状态显示为 “Unknown”,无需担心,这通常是正常的,在向该集群成功部署第一个应用后,状态通常会更新为 “Successful”。

其他常用集群管理命令

掌握基本的集群管理命令,能让你的 运维 工作更加高效。

查看集群列表

使用 list 命令可以列出所有已被 ArgoCD 管理的集群,并支持多种输出格式。

argocd cluster list

# 输出格式化
argocd cluster list -o json
argocd cluster list -o yaml
argocd cluster list -o wide

获取集群详细信息

要查看某个特定集群的详细配置信息,可以使用 get 命令。

argocd cluster get context-name

移除集群

如果不再需要管理某个集群,可以使用 rm 命令将其从 ArgoCD 中移除。

argocd cluster rm context-name

迈向多集群部署

在成功配置了多集群管理能力后,下一步自然就是实现应用在多个集群上的自动部署。这通常会涉及到一个更强大的 CRD 资源——ApplicationSet。它能够基于集群标签、Git 仓库目录等生成器,动态地创建和管理多个 Application,是实现真正意义上多集群、多环境 GitOps 的关键。关于 ApplicationSet 的详细用法,我们将在下一篇文章中深入探讨。

希望这篇关于 ArgoCD 多集群管理的基础操作指南能对你有所帮助。如果你在实践过程中遇到其他问题,欢迎到 云栈社区 的相关板块与大家交流讨论。




上一篇:实测腾讯CodeBuddy Code:支持Skills/SubAgent/MCP的Claude Code平替,免费使用
下一篇:Amiga图像格式冷知识:在PNG/JPG前世,图标竟是启动配置
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-1-27 18:23 , Processed in 0.258466 second(s), 40 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表