DevOps Automation10. September 2025Comquent Academy

ArgoCD für Automatisierung und Skalierung

ArgoCD ermöglicht GitOps-basierte Deployments auf Kubernetes -- so automatisieren und skalieren Sie Ihre Continuous-Delivery-Prozesse.

ArgoCD für Automatisierung und Skalierung
1

GitOps als Grundprinzip

ArgoCD basiert auf einem einfachen, aber wirkungsvollen Prinzip: Der gewünschte Zustand Ihrer Kubernetes-Cluster ist in Git beschrieben. ArgoCD vergleicht diesen Soll-Zustand kontinuierlich mit dem Ist-Zustand im Cluster und korrigiert Abweichungen automatisch. Das ist GitOps -- und es verändert grundlegend, wie Teams über Deployments nachdenken.

Statt Deployments über Skripte oder manuelle kubectl-Befehle auszuführen, ändern Teams ein YAML-File in einem Git-Repository und erstellen einen Merge Request. ArgoCD erledigt den Rest. Jedes Deployment ist dadurch nachvollziehbar, reviewbar und bei Bedarf durch einen Git Revert rückgängig zu machen.

2

ArgoCD in der Praxis aufsetzen

Die Installation von ArgoCD auf einem bestehenden Kubernetes-Cluster ist unkompliziert:

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

Danach definieren Sie eine Application-Ressource, die ArgoCD mitteilt, welches Git-Repository welchem Cluster und Namespace zugeordnet ist:

apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
  name: my-app
  namespace: argocd
spec:
  project: default
  source:
    repoURL: https://gitlab.example.com/team/k8s-manifests.git
    targetRevision: main
    path: environments/production
  destination:
    server: https://kubernetes.default.svc
    namespace: production
  syncPolicy:
    automated:
      prune: true
      selfHeal: true

Mit automated.selfHeal: true korrigiert ArgoCD jede manuelle Änderung am Cluster automatisch -- der Git-Stand ist immer die Wahrheit.

3

Skalierung über mehrere Cluster

Die eigentliche Stärke von ArgoCD zeigt sich, wenn mehrere Cluster und Umgebungen im Spiel sind. In typischen Enterprise-Setups verwalten Teams Development-, Staging- und Produktionsumgebungen, oft verteilt auf mehrere Regionen oder Cloud-Provider.

ApplicationSets für Multi-Cluster

ApplicationSets sind das Werkzeug der Wahl, wenn Sie dieselbe Anwendung auf mehreren Clustern deployen:

apiVersion: argoproj.io/v1alpha1
kind: ApplicationSet
metadata:
  name: my-app-set
spec:
  generators:
    - clusters:
        selector:
          matchLabels:
            environment: production
  template:
    metadata:
      name: 'my-app-{{name}}'
    spec:
      source:
        repoURL: https://gitlab.example.com/team/k8s-manifests.git
        path: environments/production
      destination:
        server: '{{server}}'
        namespace: production

Neue Cluster, die das Label environment: production tragen, erhalten automatisch das Deployment. Das skaliert, ohne dass Sie für jeden Cluster manuell eine Application anlegen müssen.

Repository-Strukturen für große Teams

Bei vielen Anwendungen und Umgebungen wird die Repository-Struktur entscheidend. Zwei Ansätze haben sich etabliert:

  • Monorepo: Alle Manifeste in einem Repository, organisiert nach Anwendung und Umgebung. Einfach zu verwalten, aber unübersichtlich bei vielen Teams
  • App-per-Repo: Jede Anwendung hat ihr eigenes Manifest-Repository. Sauberere Zugriffsrechte, aber mehr Repositories zu verwalten

In der Praxis fahren viele Teams einen Mittelweg: Ein Repository pro Team oder Domäne, mit klarer Verzeichnisstruktur für Anwendungen und Umgebungen.

4

Automatisierung der Promotion

Ein häufiges Muster: Nach erfolgreichem Deployment in der Staging-Umgebung soll die Anwendung automatisch in die Produktion beföordert werden. Das lässt sich über die CI/CD-Pipeline der Manifest-Repositories abbilden:

  1. Ein Image-Build in der Anwendungs-Pipeline erzeugt ein neues Container-Image
  2. Die Pipeline aktualisiert das Image-Tag im Staging-Manifest-Repository
  3. ArgoCD deployed nach Staging
  4. Automatisierte Tests laufen gegen Staging
  5. Bei Erfolg wird das Image-Tag im Produktions-Manifest aktualisiert
  6. ArgoCD deployed nach Produktion

Dieser Prozess ist vollständig automatisierbar, wobei die meisten Teams bewusst einen manuellen Approval-Schritt vor dem Produktions-Deployment einbauen.

5

Monitoring und Observability

ArgoCD liefert über die Web-UI und die API detaillierte Informationen zum Sync-Status aller Anwendungen. Für den produktiven Betrieb sollten Sie zusätzlich:

  • Prometheus-Metriken exportieren und in Grafana visualisieren
  • Notifications konfigurieren (Slack, Teams, E-Mail) für fehlgeschlagene Syncs
  • Health Checks definieren, die über den reinen Kubernetes-Status hinausgehen

Fazit

ArgoCD macht Kubernetes-Deployments vorhersagbar und skalierbar. Der GitOps-Ansatz bringt Ordnung in Multi-Cluster-Umgebungen und macht Deployments nachvollziehbar. Der Einstieg ist einfach, die Komplexität kommt mit der Skalierung -- aber genau dafür bringt ArgoCD die richtigen Werkzeuge mit.

Unser Training Continuous Delivery mit ArgoCD vermittelt die praktische Einrichtung und den Betrieb von ArgoCD in Enterprise-Umgebungen.

Weitere Artikel aus DevOps Automation

Self-Healing DevOps Pipelines
20. Oktober 2025

Self-Healing DevOps Pipelines

Self-Healing Pipelines erkennen Fehler automatisch und beheben sie ohne manuellen Eingriff -- ein Paradigmenwechsel in der CI/CD-Automatisierung.

Weiterlesen

Passendes Training finden

Vertiefen Sie Ihr Wissen in einem unserer praxisnahen Trainings. Kleine Gruppen, erfahrene Trainer und echte Szenarien aus dem DevOps-Alltag.

Trainings entdecken