M365Con 2027 – die kostenlose Online-Konferenz · 11–22 Jan 2027 · 120 sessions→ m365con.net

Blog · Mirko Peters

Infrastrukturdrift in Terraform für Azure verhindern und beheben

Von ·

Erfahren Sie, wie Infrastrukturdrift in Terraform und Azure entsteht, wie Notfall-Hotfixes im Portal Statusdateien inkonsistent machen und wie Sie Abweichungen sicher erkennen und korrigieren.

Automatisch mit KI aus dem Originalbeitrag übersetzt. Englisches Original lesen

Cover: Terraform - Simply Explained

Infrastrukturdrift gehört zu den häufigsten und gefährlichsten stillen Risiken in modernen Cloud-Umgebungen. Nehmen Engineers im Notfall manuelle Anpassungen direkt im Azure-Portal vor, bricht dadurch leise die Synchronisation mit den Code-Repositories ab. Dieser umfassende Leitfaden zeigt, wie Drift entsteht, welche Risiken er für Ihre Statusdateien birgt und wie Sie Abweichungen systematisch erkennen und beheben, ohne einen Produktionsausfall zu verursachen.

Das Wichtigste in Kürze

Was ist Infrastrukturdrift und warum entsteht sie?

Selbst die diszipliniertesten Cloud-Engineering-Teams werden irgendwann Opfer von Infrastrukturdrift. Als Drift gilt jede nicht autorisierte, nicht dokumentierte oder im Notfall vorgenommene Änderung an Cloud-Ressourcen, durch die ein Zustand außerhalb Ihrer automatisierten Pipelines verwaltet wird. Stellen Sie sich vor: Ein Engineer wird mitten in der Nacht zu einem Vorfall alarmiert. Unter Druck meldet er sich im Azure-Portal an, erhöht ein Auto-Scaling-Limit von fünf auf zehn Instanzen, behebt das Problem und geht wieder schlafen.

Das Problem: Die versionierte Konfigurationsdatei im Repository nennt weiterhin fünf. Die Live-Umgebung hat zehn. Weil niemand die Änderung dokumentiert oder den Code angepasst hat, entsteht eine erhebliche Diskrepanz zwischen der geplanten Architektur und der Realität. Diese Lücke bleibt oft wochenlang verborgen, bis jemand einen routinemäßigen Terraform-Plan für eine ganz andere Änderung ausführt. Plötzlich zeigt die Terminalausgabe eine Warnung: Terraform will diese Instanzen wieder auf fünf reduzieren.

Der menschliche Faktor und der operative Druck

Drift entsteht selten aus böser Absicht, sondern fast immer aus operativer Dringlichkeit. Wenn Produktivumgebungen ausfallen, drängt der Instinkt dazu, den Schaden sofort mit den schnellsten verfügbaren Mitteln zu beheben. Klickbasierte Bereitstellung im Azure-Portal ist schnell, greifbar und unmittelbar. Doch jedes Mal, wenn ein Problem über das Portal behoben und nicht im Code festgehalten wird, entsteht technische Schuld, die später mit Zinsen zurückgezahlt werden muss.

Wie der Terraform-Status Abweichungen erkennt

Um zu verstehen, wie Terraform Drift erkennt, müssen Sie sich den Speichermechanismus genauer ansehen: die Statusdatei. Die Terraform-Statusdatei ist die maßgebliche Quelle der Wahrheit und ordnet Ihre Cloud-Ressourcen den Konfigurationsdateien zu. Wenn Sie einen Befehl ausführen, schiebt Terraform Dateien nicht einfach blind in die Cloud. Stattdessen führt es einen Dreiwege-Vergleich durch.

Erstens liest es, was Sie in Ihren Konfigurationsdateien geschrieben haben. Zweitens prüft es, was es bei der letzten erfolgreichen Anwendung in der State-Datei festgehalten hat. Drittens wendet es sich über Plugins an die API des Cloud-Anbieters und prüft, was in Ihrem Abonnement gerade tatsächlich existiert. Stimmen diese drei Elemente nicht überein, erkennt Terraform, dass sich die Realität still und leise verändert hat.

Die Gefahr ignorierter Warnungen

Bei der Ausführung eines Plans erstellt Terraform eine detaillierte Ausgabe mit Hinzufügungen, Änderungen und Löschungen. Liegt Drift vor, sehen Sie oft Warnungen, dass eine Ressource geändert oder sogar vollständig ersetzt werden muss. Einsteiger geraten häufig in Panik, wenn sie Warnungen zu erzwungenen Ersetzungen von Ressourcen sehen. Diese Warnung ist jedoch kein Fehler. Terraform teilt Ihnen damit mit, dass sich die reale Ressource bis zur Unkenntlichkeit verändert hat. Um sie wieder mit Ihrem Code in Einklang zu bringen, muss sie gelöscht und neu erstellt werden.

Bewährte Methoden zur Erkennung und Vermeidung von Drift

Drift zu verhindern erfordert eine Kombination aus organisatorischen Leitplanken und automatisierten technischen Kontrollen. Wenn Sie die Drift-Erkennung vollständig manuellen Prüfungen überlassen, werden Sie zwangsläufig schmerzhafte Produktionsausfälle erleben. Hier sind die grundlegenden Strategien, mit denen Teams ihre Cloud-Umgebungen abgestimmt halten:

Drift beheben, sobald er auftritt

Wenn Sie feststellen, dass Ihre Live-Infrastruktur von Ihrer Konfiguration abweicht, stehen Sie vor einer strategischen Weggabelung. Für die Behebung gibt es zwei Hauptwege:

Die erste Option besteht darin, Terraform die Live-Umgebung überschreiben zu lassen. Mit dem üblichen „terraform apply“ zwingen Sie Azure, zu dem Zustand zurückzukehren, der in Ihrem Code beschrieben ist. Das ist der richtige Weg, wenn die Abweichung durch eine nicht autorisierte manuelle Änderung oder eine temporäre Debug-Einstellung entstanden ist, die nicht mehr bestehen sollte.

Die zweite Option besteht darin, Ihre Terraform-Konfiguration an die Realität anzupassen. Wählen Sie diesen Weg, wenn sich der manuelle Hotfix während eines Vorfalls als notwendig, stabil und für die Produktion vorteilhaft erwiesen hat. Indem Sie Ihren Code an die neue Realität anpassen, schließen Sie die Lücke und stellen sicher, dass künftige automatisierte Läufe die notwendige Konfiguration beibehalten.

Fazit

Infrastruktur-Drift ist eine unvermeidbare Herausforderung in dynamischen Cloud-Umgebungen, muss für Ihr Team aber nicht das Ende bedeuten. Wenn Sie verstehen, wie die State-Datei von Terraform Änderungen nachverfolgt, strikte Zugriffskontrollen umsetzen und die Drift-Erkennung als regelmäßige betriebliche Routine etablieren, behalten Sie die volle Kontrolle über Ihre Cloud-Architektur. Um die grundlegenden Mechanismen von Infrastructure as Code, Providern und State-Management ausführlicher kennenzulernen, hören Sie sich die vollständige Episode an und erhalten alle Einblicke unserer Experten, um Ihre Strategie für die Cloud-Automatisierung auf das nächste Level zu heben.

Häufige Fragen

Was verursacht Infrastruktur-Drift in Terraform?

Drift entsteht durch Änderungen außerhalb von Terraform, die direkt an Cloud-Ressourcen über Portale, CLI-Befehle oder Skripte vorgenommen werden und die Terraform-Pipeline umgehen.

Wie erkennt Terraform Konfigurations-Drift bei einem Plan-Lauf?

Terraform vergleicht die gespeicherte State-Datei mit den tatsächlichen Live-Cloud-Ressourcen über Provider-APIs und mit Ihren lokalen Konfigurationsdateien.

Was passiert, wenn jemand eine von Terraform verwaltete Azure-Ressource manuell ändert?

Beim nächsten Terraform-Plan-Lauf erkennt Terraform die Abweichung, markiert sie und versucht, die Ressource wieder an Ihren deklarierten Code anzupassen, sofern die Konfiguration nicht aktualisiert wurde.

Sollte ich meinen Terraform-Code anpassen oder die Änderung im Azure-Portal rückgängig machen?

War die manuelle Änderung ein Notfall-Hotfix, der jetzt für die Stabilität erforderlich ist, aktualisieren Sie Ihre Terraform-Konfiguration. Handelte es sich um eine nicht autorisierte oder versehentliche Änderung, lassen Sie Terraform sie zurücksetzen.

Terraform

Verwandte Artikel

RSS