概览与核心价值ArgoCD 以 Git 为单一事实来源,提供声明式应用同步、健康检查与回滚能力。通过多环境与分支/目录结构,可实现可审计的持续交付。目录结构与应用定义apps/
dev/
values.yaml
prod/
values.yaml
charts/
myapp/
Chart.yaml
templates/
示例 Application:apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: myapp-prod
spec:
project: default
source:
repoURL: https://github.com/company/ops.git
path: charts/myapp
targetRevision: main
helm:
valueFiles:
- apps/prod/values.yaml
destination:
server: https://kubernetes.default.svc
namespace: myapp
syncPolicy:
automated:
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
同步策略与健康检查自动同步:`prune/selfHeal` 保证与 Git 期望状态一致健康检查:基于 `rollout`/`deployment` 状态,失败自动回滚(配合 Argo Rollouts)参数与验证环境:`ArgoCD v2.9+`、`Helm v3.13`、`Kubernetes v1.28`。验证点:变更审计:Git 历史记录可追踪每次发布自动修复:漂移检测后自愈恢复到声明状态回滚:使用 `history` 与 `sync` 指令快速恢复最佳实践分支或目录分离 `dev/staging/prod`,避免相互影响启用 `CreateNamespace` 与 RBAC 最小权限与 `Argo Rollouts` 集成实现金丝雀/蓝绿发布结论借助 ArgoCD 的声明式 GitOps 能力,多环境发布流程更安全、可审计且可回滚,适合与 Helm/Operators 共同使用。

发表评论 取消回复