Aller au contenu

Blog

Kubeflow + Argo CD : GitOps MLOps sur Kubernetes

Entraînez avec Kubeflow, livrez avec Argo CD — pipelines, Model Registry, KServe, et rollback via git revert

  • Balinder Walia
  • 3 min de lecture
  • Updated

Un guide pratique pour associer Kubeflow (entraîner / évaluer / enregistrer) à Argo CD (livrer / rollback GitOps). Pour l’architecture complète, les manifests et les anti-patterns, lisez le long article.

Kubeflow et Argo CD GitOps MLOps sur Kubernetes

La version en un paragraphe. Kubeflow possède le cycle de vie ML sur Kubernetes — pipelines, jobs d’entraînement, model registry et KServe. Argo CD possède la livraison : chaque InferenceService, définition de pipeline et composant plateforme est reconcilié depuis Git. Entraînez et évaluez dans Kubeflow ; promouvez en mettant à jour un manifest Git ; rollback avec git revert. Gardez les modèles en object storage — Git stocke URIs et config, pas les poids.

Pourquoi les deux outils ?

Kubeflow répond : comment mener entraînement et évaluation reproductibles sur GPUs ? Argo CD répond : comment livrer le modèle résultant en production sans clusters snowflake ? Utiliser seulement Kubeflow finit souvent en kubectl apply pour le serving. Utiliser seulement Argo CD vous laisse sans pipeline ML et système d’expériences de premier plan. Ensemble ils forment une boucle MLOps fermée.

La division du travail

Préoccupation Outil Ce qui vit dans Git
DAGs de pipeline, TrainJobs, expériencesKubeflow Pipelines / TrainerYAML de pipeline / specs de composants
Artefacts de modèle et lignageModel Registry + object storageURI + métadonnées — pas le fichier de poids
Serving, canaries, rollbacksKServe + Argo CDInferenceService overlays
Install plateforme et upgradesApplications Argo CDHelm/Kustomize pour Kubeflow lui-même

Boucle de bout en bout (à quoi ressemble le bon)

  1. Le data scientist merge un changement de pipeline → Argo CD synchronise les CRDs pipeline.
  2. Kubeflow lance l’entraînement sur des nœuds GPU (optionnellement file d’attente via Kueue).
  3. Les gates d’évaluation passent → URI du modèle enregistrée ; une PR met à jour le prod InferenceService storageUri.
  4. Argo CD détecte OutOfSync et déploie (trafic canary d’abord).
  5. Drift ou mauvaises métriques → git revert restaure l’URI précédente ; Argo CD réconcilie.

Cinq pratiques qui vous épargnent la douleur

  • Repos ou dossiers séparés : plateforme (install Kubeflow) vs apps (pipelines + InferenceServices).
  • Ne committez jamais les binaires de modèles — référencez s3:// / gs:// / URIs PVC.
  • Sync waves : MySQL/MinIO (ou équivalents managés) avant les composants KFP.
  • Limites de ressources à chaque étape — des jobs d’entraînement sans limites affameront le cluster.
  • Promotion = PR, pas un bouton dans un notebook. La piste d’audit est gratuite.

Quand cette pile est excessive

Un seul Mac Studio qui fait tourner Ollama pour un chatbot PME n’a pas besoin de Kubeflow + Argo CD. Adoptez ce pattern quand vous avez plusieurs modèles, de la contention GPU, des besoins de conformité, ou plus d’un environnement (dev/staging/prod) qui doivent rester identiques.

Lectures liées. Nous avons déjà publié une vue d’ensemble GitOps centrée sur Argo CD et Flux : Kubernetes Continuous Delivery : pipelines GitOps avec ArgoCD et Flux. Ce billet est le compagnon spécifique ML — Kubeflow dans la boucle.

Lire la version longue

Le long article couvre la carte MLOps Kubernetes 2026 (KFP v2, Trainer, KServe, Kueue), les patterns Application Argo CD, les gates de promotion, le serving canary, le FinOps GPU, et une checklist de rollout. Publié par TenthMatrix.