Argo CD 简介
2022-10-19
简单场景
- Argo CD 从 Git Repo 拉取应用的配置,部署在 Kubernetes 集群中。
- 当有人新增功能时,提交一个 Pull Requests 到 Git Repo 修改应用的部署配置,等待合并。
- 在 Pull Requests 合并之后,通过 Webhook 触发 Argo CD 执行更新操作。
- 应用得到更新,发送通知
理解起来很容易,将运维过程自动化,持续的部署。
稍微复杂的场景
在 Argo CD 的处理逻辑中,定义了四个组件:
- Event Source, 接入各种事件消息
- Sensor, 将消息转换为触发的动作
- Eventbus, 消息订阅路由系统
- Trigger, 触发外部的实际动作
对于运维人员,需要了解的主要是两点:
- Argo CD 可以处理什么事件?AMQP、AWS SNS、AWS SQS、Cron Schedules、GCP PubSub、GitHub、GitLab、HDFS、File Based Events、Kafka、Minio、NATS、MQTT、K8s Resources、Slack、NetApp StorageGrid、Webhooks、Stripe、NSQ、Emitter、Redis、Azure Events Hub
- Argo CD 可以处理执行哪些动作?Argo Workflows、Standard K8s Objects、HTTP Requests、AWS Lambda、NATS Messages、Kafka Messages、Slack Notifications、Argo Rollouts CR、Custom / Build Your Own Triggers、Apache OpenWhisk