Argo CD 是CNCF官方孵化的项目
https://landscape.cncf.io/card-mode?selected=argo
参考文档:
https://argo-cd.readthedocs.io/en/stable/
https://kubeoperator.io/docs/user_manual/argocd/ (zh)
GitOps
参考:
Argo CD是一个基于Kubernetes的声明式的GitOps工具。
GitOps是以Git为基础,使用CI/CD来更新运行在云原生环境的应用,它秉承了DevOps的核心理念—“构建它并交付它(you built it you ship it)”。
概念说起来有点虚,我画了张图,看了你就明白了。
- 当开发人员将开发完成的代码推送到git仓库会触发CI制作镜像并推送到镜像仓库
- CI处理完成后,可以手动或者自动修改应用配置,再将其推送到git仓库
- GitOps会同时对比目标状态和当前状态,如果两者不一致会触发CD将新的配置部署到集群中
其中,目标状态是Git中的状态,现有状态是集群的里的应用状态。
实际项目
公司正好也在使用argo,参考
Argo-gitops