## GitOps

GitOps 特点：

-   基础设施即代码（IaC）：Git 作为单一可信源，保存完整的基础架构信息，可实现快速部署新环境（灾难恢复、销售私有化产品）。
-   合并请求（MR）：借助 Git 的合并请求评审机制，让部署可评审、记录可追溯。
-   更安全：由于 Git 中保存了完整的基础设施配置，可通过 Agent 拉取生效，而不像 CD 流水线推送需要暴露服务器网络权限。

GitLab 专业版提供 GitOps K8s 工作流：

1.  声明环境和 manifest 仓库路径
2.  为每个环境安装 agent
3.  提交 K8s mainfest 到 Git

https://docs.gitlab.com/ee/user/clusters/agent/gitops.html

![install K8s agent](./install-k8s-agent.png)
