Aller au contenu

Argo CD

À quoi il sert

Argo CD installe dans un cluster Kubernetes une boucle de réconciliation : il lit des dépôts Git (ou des charts Helm, ou des artefacts OCI), rend les manifestes (répertoire brut, Helm, Kustomize), les compare aux objets du cluster et applique les différences. Chaque Application relie une source à une destination ; Argo CD affiche son état de synchronisation et sa santé, élague ce qui a quitté Git, ordonne les déploiements par vagues et hooks, génère des applications en série (ApplicationSet) et pilote plusieurs clusters depuis une instance. Le pipeline n'a plus besoin d'aucun identifiant du cluster : il écrit dans Git, et Argo CD déploie. C'est un projet diplômé de la CNCF (décembre 2022).

Quand le choisir

Quand plusieurs équipes ou plusieurs applications partagent une plateforme Kubernetes : son interface web, son authentification unique, son RBAC propre et ses projets (AppProject) permettent de cloisonner les équipes tout en leur montrant l'état de leurs déploiements. Il convient aussi au pilotage centralisé de plusieurs clusters depuis un point unique. C'est l'outil de déploiement des applications de Lyneko, sur Kapsule. Pour un cluster géré par une seule équipe à l'aise avec Kubernetes et sans besoin d'interface, Flux est l'alternative.

Points d'attention

  • L'installation standard donne au contrôleur tous les droits sur le cluster, et le projet default autorise tout : videz-le, placez chaque application dans un projet restreint, et laissez policy.default vide dans la politique RBAC.
  • Changez le mot de passe admin initial, supprimez argocd-initial-admin-secret, puis désactivez le compte une fois le SSO vérifié.
  • argocd cluster add peut recopier votre certificat d'administration dans Argo CD : préférez l'enregistrement déclaratif d'un compte limité.
  • L'élagage peut supprimer un volume persistant retiré de Git : protégez les PVC par Prune=false avant d'activer prune.
  • Une version mineure par trimestre, et seules les trois dernières sont corrigées : des vulnérabilités critiques ont été publiées en 2025 et 2026, mettez à jour vite.
  • Installez avec kubectl apply --server-side : la définition d'ApplicationSet dépasse la limite d'annotation de l'application côté client.

Par où commencer

Le cours GitOps avec Argo CD, en commençant par la leçon GitOps : les principes et le modèle tiré, puis Installer Argo CD et déployer une application. La sécurisation est traitée dans Sécuriser Argo CD, et l'exploitation en production dans Exploiter Argo CD.