Argo CD

简介

Argo CD是什么?

Argo CD是一个基于Kubernetes声明性的GitOps持续交付工具

为什么使用Argo CD

  • 声明式定义应用程序、配置和环境,并且是版本控制的

  • 应用程序部署和生命周期管理是自动化的、可审计的和易于理解的

工作原理

Argo CD遵循GitOps模式,使用Git存储库作为定义应用程序期望状态的数据源。 Kubernetes应用清单可以通过以下几种方式指定:

Argo CD可以在指定的目标环境中自动部署、维护期望的应用程序状态,该期望状态由清单文件定义。 应用程序清单版本可以基于Git提交时跟踪对分支、tag或固定到特定版本的Git commit

Argo CD基于kubernetes控制器实现,它持续监控运行中的应用程序, 并将当前的活动状态与期望的目标状态(如Git repo中所指定的)进行比较。 如果已部署的应用程序的活动状态偏离目标状态,则将被视为OutOfSyncArgo CD可视化展现程序状态差异,同时提供自动或手动同步工具。

特性

  • 将应用程序自动部署到指定的目标环境
  • 支持多种应用配置管理工具/模板(Kustomize, Helm, Ksonnet, Jsonnet, plain-YAML
  • 能够管理和部署到多个k8s集群
  • 单点登录(OIDC, OAuth2, LDAP, SAML 2.0, GitHub, GitLab, Microsoft, LinkedIn
  • 用于授权的多租户和RBAC策略
  • 回滚至Git仓库中指定的commit
  • 应用程序资源的运行状况分析
  • 自动配置漂移检测和可视化
  • 自动/手动同步应用至期望状态
  • 提供应用程序活动的实时视图的Web UI
  • 用于自动化和CI集成的CLI
  • Webhook集成(GitHub, BitBucket, GitLab)
  • PreSync, Sync, PostSync钩子来支持复杂应用(例如蓝/绿和金丝雀的升级)
  • 应用程序事件审计和追踪API调用
  • Prometheus指标
  • 覆盖Gitksonnet/helm的参数
Copyright © weiliang 2021 all right reserved,powered by Gitbook本书发布时间: 2024-04-22 16:03:42

results matching ""

    No results matching ""