加载中...
GitOps 把 Git 仓库作为整个系统的单一可信源,基础设施和应用配置的变更都通过 Git 提交(PR/Merge)触发,自动化工具负责让真实环境与 Git 声明的状态保持一致。Weaveworks 于 2017 年首次提出这个术语。

| 类型 | 运维方法论 / DevOps 实践 |
| 术语提出者 | Weaveworks,Alexis Richardson,2017 年 |
| 主流工具 | ArgoCD、Flux CD |
GitOps 的核心机制是「对账(Reconciliation)」:集群内有一个控制器(如 ArgoCD、Flux),持续对比 Git 仓库中声明的期望状态和集群实际运行状态,发现不一致时自动拉平。
这和传统 CI/CD 的推送模式(Pipeline 主动 kubectl apply)有本质区别:GitOps 是拉取模式(Pull),集群主动从 Git 拉取变更,意味着 CI 系统不需要集群的 kubeconfig 凭据,攻击面大幅减小。[1]
GitOps 最直接的好处是审计日志天然完备——每次变更都是一次 Git commit,有 who/when/what/why(commit message),合规审计时直接查 Git 历史。回滚也变得直接:git revert 一条提交,5 分钟内集群状态自动回到历史版本。
局限在于:密钥管理是痛点,不能把数据库密码明文写进 Git 仓库,需要额外工具(Sealed Secrets 把密钥加密后再提交,或用 Vault + External Secrets Operator);调试时工程师习惯直接 kubectl edit,但这会被 GitOps 控制器覆盖回去,思维模式需要转换。

| 类型 | 运维方法论 / DevOps 实践 |
| 术语提出者 | Weaveworks,Alexis Richardson,2017 年 |
| 主流工具 | ArgoCD、Flux CD |
登录 后参与讨论
暂无讨论,来发表第一条评论吧