Deployments
Änderungen laufen über Git. Nicht über den Server.
Was sich an einem betriebenen System ändert, wird als Änderung in Git beschrieben und automatisch ausgerollt. Kein Handbetrieb auf dem Server. Jede Version ist nachvollziehbar und lässt sich zurückrollen.
backupalle Kundensysteme gestartet
backupabgeschlossen · Integrität geprüft
diskSpeicher 82 % · beobachtet
tls2 Zertifikate erneuert
restoreProbe-Wiederherstellung bestanden
vorfälleheute: 0
Der Weg einer Änderung
Beschrieben, nicht getippt
Eine Änderung entsteht als Eintrag in Git, nicht als Handgriff auf dem laufenden Server. Der Soll-Zustand steht schwarz auf weiß in einem Repository. Wer etwas ändern will, ändert die Beschreibung, nicht die Maschine.
Automatisch gebaut und geprüft
Ein Push stößt die Pipeline an: bauen, testen, auf bekannte Sicherheitslücken scannen. Erst was durchläuft, wird zum fertigen Stand. Fällt ein Schritt durch, geht nichts live.
Ausgerollt und abgeglichen
Ein Dienst gleicht den laufenden Zustand fortlaufend gegen den in Git beschriebenen ab und rollt Unterschiede aus. Was auf dem Cluster läuft, entspricht dem, was im Repository steht. Ohne dass jemand sich einloggen muss.
Womit
Git, Pipeline, Abgleich, Cluster.
Der Soll-Zustand liegt in Git (Gitea). Ein Push stößt die CI-Pipeline an, die baut, testet und auf bekannte Sicherheitslücken scannt. ArgoCD gleicht den laufenden Zustand fortlaufend gegen Git ab und rollt Unterschiede auf den Kubernetes-Cluster aus, der auf Talos läuft. Zurückrollen heißt dann: in Git auf die vorige Version zeigen, den Rest macht der Abgleich.
Zurückrollen
Ein Knopf, kein Kraftakt.
Weil der Zustand in Git liegt, ist ein fehlerhafter Stand kein Drama. Wir zeigen wieder auf die vorige Version, der Abgleich rollt sie aus, und das System steht so da wie vorher. Kein Nachbauen aus dem Gedächtnis.
Warum nicht von Hand
Handarbeit hinterlässt kein Protokoll.
Wer sich auf einen Server einloggt und dort etwas ändert, hinterlässt eine Erinnerung, kein Protokoll. Beim nächsten Mal fehlt der Schritt, oder er sieht anders aus. Über Git ist jede Änderung datiert, benannt und nachlesbar. Auch Monate später.
Was Sie davon haben
- Ein neuer Stand geht erst live, wenn er gebaut, getestet und gescannt wurde. Nicht auf Zuruf.
- Ein schlechtes Deployment ist in Minuten zurückgerollt, nicht in Stunden repariert.
- Jede Änderung ist nachlesbar: wer, wann, was. Auch lange nach dem Tag, an dem sie passierte.
- Der laufende Zustand entspricht dem beschriebenen. Keine stillen Handgriffe, die niemand dokumentiert hat.