
Inhalt (4 Abschnitte)
- Das Problem von unattended-upgrades ist nicht, was es tut, sondern was es nicht sieht
- Zwischenschritt: die selbst gebaute Automatisierung, und warum wir auch sie entfernt haben
- Der heutige Grundsatz: PatchMon, erst hinsehen, dann entscheiden
- Das Ritual, das Patchen langweilig macht (genau darum geht es)
Bei der Frage der Sicherheitsupdates kennt eine Serverflotte nur drei mögliche Grundhaltungen. Nichts tun, die verbreitetste und nicht zu rechtfertigen. Alles automatisieren: unattended-upgrades überall, die Pakete installieren sich nachts von selbst. Oder erst hinsehen, dann entscheiden: laufende Sichtbarkeit über den Zustand jeder Maschine und Updates, die nach einer werkzeuggestützten menschlichen Entscheidung eingespielt werden. Wir haben die zweite praktiziert und dann sogar unsere selbst gebaute Automatisierung abgebaut, um die dritte einzuführen. Hier die Gründe und das vollständige Vorgehen.
Das Problem von unattended-upgrades ist nicht, was es tut, sondern was es nicht sieht #
Seien wir fair: Auf einem einzelnen Arbeitsplatzrechner oder einem privaten Server ist unattended-upgrades unendlich viel besser als Vergessen. Unser Einwand gilt für eine produktive Serverflotte: Ein Patch ist eine ungetestete Änderung, eingespielt zu einem Zeitpunkt, den Sie nicht wählen, ohne einen Menschen, der das Ergebnis prüft. Ein Dienst, der mitten in der Nacht neu startet und nicht wiederkommt, eine Abhängigkeit, die eine Anwendung lahmlegt, ein Update, dessen vollständiger Neustart wochenlang aussteht: Die blinde Automatisierung macht jede Nacht zu einem Deployment ohne Piloten. Und ihr Scheitern ist still: Das Paket, das sich nicht installiert, warnt niemanden, die Maschine, die in Ihrem Kopf „aktuell“ ist, driftet in der Realität ab. Bei dreißig Maschinen mit unterschiedlichen Rollen kostet der zufällige nächtliche Ausfall mehr als die paar Tage Verzögerung eines bewusst entschiedenen Patches.
Zwischenschritt: die selbst gebaute Automatisierung, und warum wir auch sie entfernt haben #
Unsere erste Antwort war ein zentrales Patching mit Ansible: Playbooks, eine Zeitplanung, Berichte. Ordentlich, aber zwei strukturelle Schwächen wogen mit der Zeit schwer. Erstens kein lebendes Inventar: Zwischen zwei Läufen keine Ahnung vom tatsächlichen Zustand der Flotte: wie viele Updates ausstehen, wo, seit wann. Zweitens patchte der Cronjob ohne hinzusehen: dieselbe blinde Automatisierung, nur von uns geschrieben. Die Lehre: Das Problem war nicht das Werkzeug zum Einspielen, sondern das Fehlen dauerhafter Sichtbarkeit zwischen den Eingriffen.
Der heutige Grundsatz: PatchMon, erst hinsehen, dann entscheiden #
Heute meldet ein schlanker Agent auf jeder der 36 Maschinen der Flotte laufend an eine selbst gehostete PatchMon-Instanz (Open Source): ausstehende Pakete, Sicherheitsupdates, Versionen, Verlauf. Das Dashboard beantwortet jederzeit die Frage „Wie steht die Flotte da?“, und das Patching wird wieder, was es immer hätte sein sollen: eine informierte Entscheidung. Von derselben Konsole aus läuft ein Patch-Lauf gezielt auf einer Maschine oder einer Gruppe, zur gewählten Uhrzeit, und sein Ergebnis wird protokolliert. Bis heute über achtzig Läufe, null Fehlschläge: nicht weil das Werkzeug zaubern kann, sondern weil jeder Lauf unter Beobachtung erfolgt.
Das Ritual, das Patchen langweilig macht (genau darum geht es) #
- Vorher hinsehen: Was wird passieren, welche Dienste sind betroffen, steht ein Neustart eines Dienstes oder der Maschine an?
- Snapshot vorher, bei jedem nennenswerten Update: Auf einem Hypervisor kostet ein Snapshot der Maschine ein paar Sekunden und macht aus dem schlimmsten Fall ein Zurückrollen von fünf Minuten.
- Reihenfolge: zuerst Entwicklungsumgebungen und unkritische Maschinen, danach die Produktion, nie alles auf einmal.
- Nachher prüfen: der Healthcheck der Anwendung: nicht „das Paket ist installiert“, sondern „der Dienst antwortet“. Das ist der Schritt, den blinde Automatisierung nie machen wird.
- Bewusste Ausnahmen: Ein Major-Versionssprung einer Datenbank ist eine Migration, kein Patch: nie automatisch, nie gebündelt mit anderen.
Sichtbarkeit über die Flotte, bewusst entschiedene Läufe, Snapshots vorher, Prüfungen nachher: Das ist der konkrete Inhalt unserer Managed Services. Wenn Ihre aktuelle Antwort „unattended-upgrades und Daumen drücken“ lautet oder, schlimmer, „das sehen wir später“, lassen Sie uns vergleichen.



