Newsletter

    Newsletter abonnieren

    Neue Infrastruktur-Guides, Vergleichsberichte und Migrationshinweise direkt ins Postfach.

    Infrastruktur-Notizen, Guides und neue Tools. Jederzeit abbestellbar.

    Zurück zum Blog
    GitOps
    ArgoCD
    Kubernetes
    DevOps
    SRE
    Produktion

    Wenn GitOps auf Notfall-Fixes trifft: Operative Lektionen mit ArgoCD

    20. Oktober 2025
    10 Min. Lesezeit

    GitOps klingt auf dem Papier makellos. Man definiert die gesamte Infrastruktur und alle Deployments in Git, die Pipelines erledigen den Rest, und Tools wie ArgoCD halten alles im Cluster mit der versionskontrollierten Wahrheit im Einklang. Das ist die Art von DevOps-Traum, die auf jeder Cloud-Native-Konferenz Keynote-Zeit bekommt.

    Aber Infrastruktur in der echten Welt ist keine Keynote. Sie ist ein Friedhof aus Kompromissen, nächtlichen Alerts und Feuerwehrübungen. Und wenn GitOps böse aus dem Ruder läuft - meist um 2 Uhr morgens - dann ist es nicht der Senior Engineer, der den Talk auf der KubeCon hält, der aufwacht. Es ist der Junior SRE, der über kubectl edit schwitzt und hofft, dass seine Änderungen sich halten, bevor ArgoCD es bemerkt.

    Das ist nicht theoretisch. Es ist schmerzhaft, urkomisch real - und das Internet hat Geschichten dazu.

    GitOps vs. Prod-Brände: Wer gewinnt?

    Eine der häufigeren Frustrationen mit GitOps-Workflows ist, dass sie per Design starr sind. Das ist der Sinn der Sache - wir wollen manuelle Eingriffe eliminieren, Drift reduzieren und Wiederholbarkeit sicherstellen. Aber manchmal ist Wiederholbarkeit der Feind.

    Stellen Sie sich vor: Die Produktion brennt. Die Pipeline ist langsam. Die Freigabe-Warteschlangen sind verstopft. Und ArgoCD, der loyale Vollstrecker Ihres deklarierten Zustands, macht Ihre Notfall-Fixes immer wieder rückgängig, weil sie nicht "den GitOps-Weg" gegangen sind.

    Genau das passierte einem Junior SRE, der mitten in der Nacht gepagt wurde. Konfrontiert mit einem Deployment-Problem, nutzte er kubectl edit, um die Sache zu flicken - nur um zuzusehen, wie ArgoCD seine Änderungen alle paar Minuten zurücksetzte. Der Clou? Die einzige Person mit Zugriff auf die ArgoCD-Plattform war nicht erreichbar. Das Ergebnis? Acht Stunden Downtime, weil niemand die Automatisierung davon abhalten konnte, die Notfallarbeit rückgängig zu machen.

    Das sind keine Einzelfälle. Das passiert häufiger, als die meisten Teams zugeben wollen.

    Drift Detection: Retter oder Saboteur?

    Die Idee hinter Drift Detection ist edel: Jede Änderung außerhalb von Git soll markiert oder rückgängig gemacht werden. Aber in Notfallszenarien wird das zum zweischneidigen Schwert. Wie ein Engineer es formulierte: "Manchmal muss man einfach das Feuer löschen."

    Um das zu tun, müssen viele Teams jedoch entweder:

    Drift Detection vorübergehend aussetzen, das Problem beheben und sie dann wieder aktivieren, nachdem der PR gemergt wurde (falls das je passiert), oder

    Sich mit Breakglass-Berechtigungen ins System hacken (falls diese überhaupt existieren).

    Und selbst dann liefert man sich ein Rennen mit der ArgoCD-Reconciliation-Loop. In manchen Setups macht sie den Fix in Millisekunden rückgängig. In anderen hat man vielleicht ein Drei-Minuten-Fenster, bevor sie den Cluster wieder in den kaputten Zustand zurücksetzt.

    Das ArgoCD-Catch-22

    Reden wir über ArgoCD, denn es taucht in fast jeder dieser Kriegsgeschichten auf.

    Es ist ein solides Tool. Es tut, was es verspricht. Aber es ist ihm egal, dass Ihre Freigabekette schläft oder dass Ihre CI-Pipeline ewig braucht. Es setzt den zuletzt deklarierten Zustand durch, egal wie veraltet der ist.

    Das hat zu einigen … kreativen Lösungen geführt:

    Auto-Sync abschalten, indem man das ArgoCD-Application-Objekt manuell bearbeitet (kubectl edit app argocd -n argocd)

    ArgoCD auf einen temporären PR-Branch umleiten, um den langsamen Merge-Prozess zu umgehen

    Den ArgoCD-Server-Pod einfach komplett löschen, in der Hoffnung, dass er beim Zurückkommen seine Lektion gelernt hat (Spoiler: hat er nicht)

    Das sind keine Best Practices. Das sind Verzweiflungstaktiken. Aber wenn die Produktion down ist, tritt Eleganz hinter Uptime zurück.

    Warum haben Junioren überhaupt Prod-Zugriff?

    Einer der am heißesten diskutierten Aspekte dieses Schlamassels ist die Zugriffskontrolle. Warum hat ein Junior SRE überhaupt Produktionsberechtigungen? Ist das ein Vertrauensbeweis, oder ein Zeichen, dass die On-Call-Rotation dringend umstrukturiert werden muss?

    Die Meinungen gehen auseinander.

    Manche glauben, Junioren sollten nie First Responder für kritische Incidents sein. Andere argumentieren, dass man bei der Incident Response wirklich lernt - vorausgesetzt, ein Senior ist verfügbar, um mitzuschauen oder zu führen.

    Das Problem ist nicht immer der Zugriff selbst - es ist das Fehlen einer Support-Struktur. Einem Junior SRE die Schlüssel zur Produktion zu geben, ohne Guardrails, Anleitung oder einen klaren Breakglass-Prozess, ist nicht empowernd - es ist fahrlässig.

    Wie ein gutes Breakglass-Setup tatsächlich aussieht

    Breakglass-Zugriff ist keine kontroverse Idee. Er soll genau für solche Situationen existieren. Aber er muss richtig gestaltet sein:

    Auditierbar: Jede Nutzung wird protokolliert und überprüft.

    Temporär: Der Zugriff läuft automatisch ab.

    Begründet: Jede Nutzung braucht einen Grund - und oft ein Postmortem.

    Zugänglich: Es sollte nicht nötig sein, fünf Leute zu wecken oder eine Stunde zu warten, um ihn zu nutzen.

    Wenn Ihr "Notfallzugriff" länger dauert zu entsperren als die PR-Pipeline, ist das keine Lösung - das ist eine Falle.

    Ein Team beschrieb die Nutzung von AWS-IAM-Rollen, bei denen man über SSO eine spezielle "Breakglass"-Rolle annehmen kann, aber erst nach einem zusätzlichen Bestätigungsschritt. Das geht schnell, es ist sichtbar, und es zwingt Engineers, vor Änderungen zweimal nachzudenken - ohne sie zu blockieren, wenn jede Minute zählt.

    Ist GitOps eigentlich das Problem?

    Hier wird es interessant. Viele dieser Probleme kommen nicht von GitOps selbst, sondern von schlechter Implementierung.

    Wenn Ihr GitOps-Flow zu langsam ist, um bei einem Incident nützlich zu sein, ist das ein Versagen des Pipeline-Designs - nicht des Paradigmas. Wenn Sie für ArgoCD-Zugriff auf einen einzigen Engineer angewiesen sind, ist das ein Menschen-/Prozessproblem, keine Tool-Beschränkung.

    Und wenn Engineers das Gefühl haben, den Prozess brechen zu müssen, nur um Dinge schnell zu reparieren, bedeutet das wahrscheinlich, dass Ihr Prozess von Anfang an nicht für reales Chaos gebaut war.

    Lektionen von der Front

    Die Engineers in diesen Situationen sind nicht ahnungslos - sie sind erfinderisch. Sie wissen, dass das System zu retten manchmal bedeutet, die Regeln zu biegen. Aber sie sind auch frustriert, dass sie das müssen.

    Hier ist, was Teams tatsächlich tun könnten, um GitOps-Schmerz in der Produktion zu reduzieren:

    Das Notfall-Playbook dokumentieren. Gehen Sie nicht davon aus, dass jeder weiß, wie man ArgoCD pausiert oder einen Sync umleitet. Schreiben Sie es auf.

    Schnelle Pfade für Prod-Hotfixes schaffen. Wenn Ihr PR Stunden zum Mergen braucht, haben Sie kein Continuous Deployment - Sie haben Continuous Frustration.

    Webhooks in ArgoCD einrichten. Verlassen Sie sich nicht mehr auf Polling alle 3 Minuten. Push-Modus ist schneller, weniger verwirrend und effizienter.

    Zugriff rotieren. Machen Sie kritische Berechtigungen nicht von einer einzigen Person abhängig. Wenn Sie um 2 Uhr morgens jemanden brauchen, der Argo bearbeitet, sollte diese Person nicht unerreichbar sein.

    Und vor allem:

    Postmortems durchführen. Wenn etwas richtig kaputtgeht, stellen Sie sicher, dass der nächste 2-Uhr-morgens-Responder mit mehr als nur Hoffnung arbeiten kann.

    Fazit

    GitOps ist nicht kaputt. Aber Ihr Team vielleicht schon.

    Automatisierung ist nur so gut wie die Menschen dahinter. Und wenn die Menschen müde, unzureichend geschult oder ohne Unterstützung sind, können die besten Tools der Welt Sie nicht retten.

    Also ja, ArgoCD heilt sich automatisch selbst. Aber es heilt nicht Ihre kaputten Prozesse, Ihren Mangel an Dokumentation oder das Fehlen eines Sicherheitsnetzes für Ihre jüngsten Engineers.

    Beheben Sie das, und GitOps läuft nicht mehr aus dem Ruder - es funktioniert einfach.