Kurzfassung
ArgoCD ist ein CNCF-Projekt, das GitOps Continuous Delivery für Kubernetes implementiert, indem es den Live-Cluster-Zustand kontinuierlich mit dem in Git definierten Sollzustand abgleicht.
Was ist ArgoCD?
ArgoCD läuft als Controller in einem Kubernetes-Cluster und überwacht Git-Repositories auf Änderungen an Anwendungs-Manifesten. Wenn es eine Abweichung zwischen dem gewünschten Zustand in Git und dem tatsächlichen Zustand im Cluster erkennt, kann es diese automatisch oder manuell synchronisieren.
Es unterstützt Helm-Charts, Kustomize-Overlays, einfache YAML-Manifeste und Jsonnet. ArgoCD bietet eine Web-UI und CLI, die den vollständigen Deployment-Graph, den Gesundheitsstatus jeder Ressource und die Synchronisierungshistorie anzeigen.
Multi-Cluster-Management ist eine Kernfunktion: Eine einzelne ArgoCD-Instanz kann auf mehrere Ziel-Cluster deployen, wobei RBAC steuert, welche Teams in welche Umgebungen deployen dürfen.
Warum ist ArgoCD relevant?
- GitOps-Konformität: Git wird zur einzigen Quelle der Wahrheit für den gesamten Anwendungszustand
- Auditierbarkeit: Jedes Deployment ist einem bestimmten Git-Commit und Benutzer zuordenbar
- Selbstheilung: ArgoCD erkennt Konfigurationsabweichungen und kann sie automatisch korrigieren
- Entwicklererfahrung: Visueller Deployment-Graph reduziert die Fehlersuche bei Rollout-Problemen