用途:为 Kubernetes 集群实施声明式、基于 Git 的持续交付,遵循 OpenGitOps 原则(声明式、版本化且不可变、自动拉取、持续协调)。适用于搭建集群 GitOps、从 Git 自动部署应用、渐进式交付、多集群管理、自动同步策略与密钥管理;不适用于一次性手动部署、无法管理集群访问或仓库权限、以及非 Kubernetes 部署场景。
主要能力:ArgoCD 与 Flux CD 的安装与集群连接;仓库布局与期望状态约定;同步策略、环境与晋升流程配置;回滚与密钥处理验证;ArgoCD 的 Application 与 App of Apps 模式;Flux 的 GitRepository 与 Kustomization;ArgoCD Rollouts 的金丝雀与蓝绿发布;External Secrets Operator 与 Sealed Secrets 密钥管理。
必要用法:ArgoCD 安装可执行 kubectl create namespace argocd,再 kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml,并用 kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d 获取初始密码。Flux 可用 brew install fluxcd/tap/flux,或下载官方安装脚本审查后执行,再以 flux bootstrap github 引导。密钥可用 kubeseal --format yaml < secret.yaml > sealed-secret.yaml 加密后提交。排障可用 argocd app get、argocd app diff、argocd app sync 等命令。
限制与安全:避免未经审批对生产环境启用自动同步;密钥不得进入 Git,应使用 sealed 或外部密钥管理器;输出不能替代针对具体环境的验证、测试或专家评审;若缺少必要输入、权限、安全边界或成功标准,应停止并请求澄清。具体版本兼容性与平台细节暂未提供。