
OpenShift + Argo CD = 标准 GitOps 架构
OpenShift 是容器平台,Argo CD 是部署工具,两者天生就是一套。
一句话总结
- OpenShift:跑容器、Pod、Service、Route 的云平台(你们的 K8s)
- Argo CD:把 Git 里的部署配置自动同步到 OpenShift 的GitOps 引擎
它们怎么组合工作?
1. 架构(非常标准)
- GitLab/GitHub 存放:
- Deployment
- Service
- Route
- ConfigMap
- Secret(加密后)
- Argo CD 持续监听 Git
Argo CD → OpenShift
- 自动创建 / 更新 / 删除资源
- 保持集群状态 = Git 状态
- OpenShift 负责运行应用
2. 你们实际工作流程(最常用)
- 开发 / 运维把 YAML 提交到 Git
- Argo CD 自动检测到变化
- Argo CD 把应用部署到 OpenShift
Argo CD 面板展示:
- drift 了自动修复
为什么要从纯 Azure DevOps 部署 → 转向 OpenShift + Argo CD?
1. 你们现在的模式(传统 CI/CD)
Azure DevOps Pipeline:
- 拉代码
- 编译
- 构建镜像
- 直接 kubectl apply 部署到 OpenShift
问题:
- 部署逻辑写在 pipeline 里,散得到处都是
- 集群当前状态 = 黑盒
- 谁在什么时候改了什么,不可追溯
- 环境漂移:test 和 prod 慢慢不一样
- 回滚难、审批难、多集群管理难
2. 未来模式(GitOps)
- Azure DevOps:只负责构建镜像,打标签
- Git:存放所有部署配置(Deployment、Route、ConfigMap…)
- Argo CD:自动同步到 OpenShift
- OpenShift:只负责运行
这就是云原生主流架构。
真正的核心优势(你在工作中能立刻感受到)
① 部署不再是 “执行一次”,而是 “持续保证状态”
- Azure DevOps:跑一遍 pipeline = 部署一次
- Argo CD:7x24 小时盯着集群
集群和 Git 不一样 → 自动修复 / 报警
② Git = 唯一真实来源(Single Source of Truth)
- 所有环境(dev/test/prod)都从 Git 来
- 配置可见、可 review、可回滚
- 不会出现 “我机器上能跑,集群不行”
③ 回滚 = 点一下,不用重新跑构建
- Azure DevOps 回滚:要重新跑 pipeline
- Argo CD 回滚:直接选历史版本,10 秒恢复
④ 多集群、多环境管理变得极简单
你们 肯定有:
- 国内集群
- 欧洲集群
- 开发 / 测试 / 生产
用 Argo CD 可以一套配置,统一部署、统一视图。
⑤ 安全 & 权限更清晰
- 谁能部署
- 哪些项目能改
- 哪些环境需要审批
Argo CD + OpenShift 权限体系比 Azure Pipeline 强得多。
⑥ 符合云原生趋势( 一定会推)
- RedHat OpenShift
- GitOps / Argo CD
- 统一治理、合规、审计
这是企业级平台标准路线,不是可选,是方向。