ArgoCD简介
Argo CD是用于Kubernetes的声明性GitOps持续交付工具,遵循GitOps模式,该模式使用Git仓库作为定义所需应用程序状态的真实来源。
Argo CD可在指定的目标环境中自动部署所需的应用程序状态,应用程序部署可以在Git提交时跟踪对分支,标签的更新,或固定到清单的特定版本。
argoCD支持的Kubernetes 配置清单包括helm charts、kustomize、Ksonnet、Plugin或纯YAML/json文件等。
Argocd架构图
?
Argo CD被实现为kubernetes控制器,该控制器持续监视正在运行的应用程序,并将当前的活动状态与所需的目标状态(在Git存储库中指定)进行比较。当已部署应用程序的运行状态偏离目标状态时将被argoCD视为OutOfSync。Argo CD报告并可视化差异,同时提供自动或手动方式将实时状态同步回所需目标状态的功能。在Git存储库中对所需目标状态所做的任何修改都可以自动应用并同步到指定的目标环境中。
ArgoCD特性 将应用程序自动部署到指定的目标环境 支持多种配置管理/模板工具(Kustomize,Helm,Ksonnet,Jsonnet,plain-YAML) 能够管理和部署到多个集群 SSO集成(OIDC,OAuth2,LDAP,SAML 2.0,GitHub,GitLab,Microsoft,LinkedIn) 多租户和RBAC授权策略 在任何地方回滚/滚动到Git存储库中提交的任何应用程序配置 应用程序资源的健康状况分析 自动配置漂移检测和可视化 自动或手动将应用程序同步到所需状态 Web UI,提供应用程序活动的实时视图 用于自动化和CI集成的CLI Webhook集成(GitHub,BitBucket,GitLab) 访问令牌以实现自动化 PreSync,Sync,PostSync钩子可支持复杂的应用程序部署(例如,蓝/绿发布和金丝雀升级) 应用程序事件和API调用的审核跟踪 普罗米修斯指标 在Git中覆盖ksonnet / helm参数
|