ArgoCD容器持续交付AI中转服务完整流水线

ArgoCD 是一套基于 GitOps 理念的持续交付工具,简单说就是把 Git 仓库里的部署清单作为唯一事实来源,当仓库内容变化时自动同步到 Kubernetes 集群。
AI 中转服务通常包含网关、鉴权、日志和模型调度等多个组件,手动更新容易出错,因此用 ArgoCD 搭建一条完整容器流水线,能让镜像版本更新、配置回滚和集群部署都变得可追踪、可重复。
本文从零开始,带你完成 ArgoCD 安装、仓库接入、应用创建和同步验证,全程给出可直接执行的命令和配置。

搭建前需要准备什么

开始操作前,请确认以下条件已经满足:

  • 一个可用的 Kubernetes 集群,版本建议 1.24 及以上,本地已有 kubectl 并能正常连接集群。
  • 一个 Git 仓库,用来存放 AI 中转服务的 Deployment、Service、Ingress 等 YAML 清单。
  • 一个容器镜像仓库,比如 Docker Hub、Harbor 或云厂商的镜像服务,并已将 AI 中转服务镜像推送到仓库。
  • 安装 Helm(可选),如果你习惯用 Helm Chart 管理应用,后续可以通过 ArgoCD 的 Helm 支持直接渲染。

如果集群还没有装过 Ingress Controller,建议先安装 Nginx Ingress,否则后续访问 ArgoCD 或 AI 中转服务会比较麻烦。

在集群中安装 ArgoCD

最直接的方式是使用官方提供的 manifests 文件安装,执行下面两条命令即可:

kubectl create namespace argocd
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml

等待所有 Pod 运行起来:

kubectl get pods -n argocd

看到 argocd-serverargocd-repo-server 等 Pod 的状态为 Running 后,继续修改 Service 类型。
为了方便浏览器访问,将 argocd-server 服务改成 NodePort 或直接使用 kubectl port-forward
这里以端口转发为例:

kubectl port-forward svc/argocd-server -n argocd 8080:443

然后打开 https://localhost:8080
默认用户名为 admin,初始密码可以通过下面的命令获取:

kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d

登录后建议立即修改密码。

接入Git仓库并创建AI中转服务应用

进入 ArgoCD 界面后,点击 Settings ▸ Repositories,选择 Connect Repo,填写 Git 仓库地址。
如果仓库是私有的,还需要填写对应的用户名和令牌(Token)。
使用 HTTPS 方式时,用户名可写仓库用户名,密码使用 Access Token。

仓库连接成功后,开始创建应用。
在 ArgoCD 中,应用(Application)是连接 Git 仓库和集群目标的关键对象。
可以直接用命令创建,也可以先准备一个 YAML 文件:

apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
  name: ai-gateway
  namespace: argocd
spec:
  project: default
  source:
    repoURL: https://git.example.com/your-team/ai-gateway-deploy.git
    targetRevision: main
    path: manifests
  destination:
    server: https://kubernetes.default.svc
    namespace: ai-gateway
  syncPolicy:
    automated:
      prune: true
      selfHeal: true
    syncOptions:
      - CreateNamespace=true

repoURLpathnamespace 换成你自己的值。
注意 syncPolicy.automated.prune 表示当 Git 仓库中删除某个资源时,集群中也会对应删除;selfHeal 表示如果集群中的资源被手工改掉,ArgoCD 会自动改回仓库里的定义,这对 AI 中转服务这类需要稳定运行的应用非常有用。

保存文件后执行:

kubectl apply -f application.yaml

也可以不使用文件,直接在 ArgoCD 界面点击 New App 填写同名信息,效果一样。

自动同步与高频避坑提示

首次创建应用后,ArgoCD 不会立刻部署,需要点击 Sync 按钮或等待自动同步策略生效。
建议在 Git 仓库的 manifests 目录中维护好 AI 中转服务所需的全部 YAML,包括 ConfigMap、Secret、Deployment、Service、Ingress。
下面几个问题最容易遇到:

  • Secret 资源建议用 Sealed Secrets 或 External Secrets 管理,不要把明文密钥直接提交到 Git 仓库,否则 ArgoCD 同步时会把敏感信息暴露给有仓库权限的人。
  • 镜像更新后需要修改 Git 仓库中的 deployment.yaml,ArgoCD 只认 Git 仓库里的定义,单纯在集群里改镜像不会生效,甚至会被 selfHeal 自动还原。
  • 如果同步时报错 Failed to get cluster info,检查 ArgoCD 是否能够访问目标集群的 API Server,通常是因为 RBAC 权限不足。
  • Ingress 配置要注意注解与 Ingress Controller 匹配,比如 Nginx Ingress 有 nginx.ingress.kubernetes.io/rewrite-target 等注解,写错会导致 AI 中转接口路径 404。
  • 资源较多时可以拆分多个 Application,比如把 Redis、MySQL 等中间件用一个应用管理,AI 中转网关单独用一个应用,避免某个服务回滚时影响其他组件。

如何确认流水线正常工作

验证要从三个层面看。
先在 ArgoCD 界面找到刚创建的 ai-gateway 应用,看到状态为 SyncedHealthy,说明集群资源与 Git 仓库一致。
然后检查实际部署的 Pod:

kubectl get pods -n ai-gateway

最后验证 AI 中转服务的接口连通性,比如访问网关的 /health 路径,观察是否返回预期的 JSON 结果。
也可以做一个完整的发布测试:在 Git 仓库中修改镜像版本号 push 到 main 分支,等待 ArgoCD 自动同步后,再次刷新接口确认服务版本已经更新。
整个流程走通后,你就拥有了一条基于 ArgoCD 的 AI 中转服务容器持续交付流水线,后续只需维护 Git 仓库,集群部署会自动跟上。
如果搭建过程中遇到网络或权限问题,建议优先查看 ArgoCD 的 argocd-serverargocd-repo-server 日志,大多数报错都能在日志里找到直接线索。

分享到:
上一篇
数据库误删数据从定时备份紧急恢复操作教程
下一篇
内存泄漏定位清理脚本释放服务器占用内存资源
1
系统公告

机房迁移升级通知

尊敬的用户: IP 段 103.23.148.x、156.224.29.x 原香港一区线路波动、攻击频繁,平台定于 7 月 5 日凌晨分批迁移至香港 GIA 机房,硬件升级 AMD 铂金机型。 迁移均在凌晨操作,最大程度降低业务影响,迁移期间服务器临时关机; 升级后配置不降低、费用不涨价,数据默认同步迁移; 迁移后 IP 全部更换,请及时修改域名解析、防火墙白名单; 建议提前备份重要数据,有问题可联系在线客服。 感谢理解与支持! 泽御云科技 2026.06.30
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意