將 Kubeflow(訓練 / 評估 / 註冊)與 Argo CD(GitOps 交付 / 回滾)配對的實用指南。完整架構、manifest 與反模式,請閱讀 長文章.
一段話版。 Kubeflow 掌管 Kubernetes 上的 ML 生命週期——流水線、訓練作業、model registry 與 KServe。Argo CD 掌管交付:每一個
InferenceService、流水線定義與平臺元件均從 Git 調和。在 Kubeflow 中訓練與評估;透過更新 Git manifest 晉級;回滾用 git revert。把模型放在物件儲存——Git 存 URI 與配置,不存權重。
為何兩者都要?
Kubeflow 回答:我們如何在 GPU 上做可復現的訓練與評估? Argo CD 回答:我們如何把得到的模型交付到生產,而不造雪花叢集?只用 Kubeflow 往往止於手工 kubectl apply 用於服務。僅用 Argo CD 會缺少一流的 ML 流水線與實驗系統。兩者合起來形成閉環 MLOps。
分工
| 關注點 | 工具 | Git 中存什麼 |
|---|---|---|
| 流水線 DAG、TrainJobs、實驗 | Kubeflow Pipelines / Trainer | 流水線 YAML / 元件規格 |
| 模型產物與血緣 | Model Registry + object storage | URI + 後設資料——不是權重檔案 |
| 服務、金絲雀、回滾 | KServe + Argo CD | InferenceService overlays |
| 平臺安裝與升級 | Argo CD Applications | Kubeflow 本身用 Helm/Kustomize |
端到端閉環(好的樣子是什麼樣)
- 資料科學家合併流水線變更 → Argo CD 同步流水線 CRD。
- Kubeflow 在 GPU 節點上執行訓練(可選經 Kueue 排隊)。
- 評估門禁透過 → 註冊模型 URI;PR 更新生產
InferenceServicestorageUri. - Argo CD 檢測到 OutOfSync 並上線(先金絲雀流量)。
- 漂移或指標變差 →
git revert恢復先前 URI;Argo CD 進行調和。
幫你少踩坑的五項實踐
- 分離倉庫或資料夾: 平臺(Kubeflow 安裝)vs 應用(pipelines + InferenceServices)。
- 切勿提交模型二進位制檔案 — 參考
s3:///gs:/// PVC URIs。 - Sync waves: 在 KFP 元件之前準備好 MySQL/MinIO(或託管等價物)。
- 每一步的資源限制 — 無限制的訓練作業會餓死叢集。
- 晉級 = PR, 不是筆記本里的一個按鈕。審計軌跡免費附帶。
何時這套棧過重
一臺執行 Ollama 的 Mac Studio 服務中小企業聊天機器人,並不需要 Kubeflow + Argo CD。當你有多個模型、GPU 爭用、合規需求,或必須保持一致的多個環境(dev/staging/prod)時,再採用這一模式。
相關閱讀。 我們已釋出聚焦 Argo CD 與 Flux 的 GitOps 概覽: Kubernetes Continuous Delivery:用 ArgoCD 與 Flux 的 GitOps 流水線。本文是面向 ML 的配套文——把 Kubeflow 納入閉環。
閱讀長文版本
該 長文章 涵蓋 2026 Kubernetes MLOps 地圖(KFP v2、Trainer、KServe、Kueue)、Argo CD Application 模式、晉級門禁、金絲雀服務、GPU FinOps 與上線清單。釋出方為 Workstation.