Kostenlose DevOps-Analyse
Zurück zum Glossar
DevOps Glossar·Automation

Terraform

// Direkte Antwort

Was macht Terraform?

Terraform ist ein Infrastructure-as-Code-Tool von HashiCorp. Man beschreibt den gewünschten Zustand der Infrastruktur deklarativ in HCL-Dateien, und Terraform stellt diesen Zustand bei AWS, Azure, GCP oder On-Premise her. Änderungen werden geplant, geprüft und erst nach Bestätigung ausgeführt.

DevOps Automatisierung
// Im DetailTerraform

Terraform ist ein verbreitetes Infrastructure-as-Code-Werkzeug von HashiCorp, mit dem sich Infrastruktur deklarativ beschreiben und über viele Anbieter hinweg einheitlich bereitstellen lässt. Die Konfiguration wird in der Sprache HCL (HashiCorp Configuration Language) geschrieben; über Provider spricht Terraform die APIs von AWS, Azure, GCP, VMware, Kubernetes und Hunderten weiterer Plattformen an — alle über denselben Arbeitsablauf.

Der zentrale Workflow ist plan und apply. Beim plan vergleicht Terraform den im Code beschriebenen Sollzustand mit dem aktuellen State und zeigt exakt an, welche Ressourcen es anlegen, ändern oder löschen würde. Erst nach Prüfung und Bestätigung setzt apply diese Änderungen um. Dieser Vorschau-Schritt ist für regulierte Umgebungen wertvoll, weil Infrastrukturänderungen vor der Ausführung sichtbar, reviewbar und freigabefähig werden.

Eine Kernkomponente ist der State, der Terraform abbildet, welche realen Ressourcen zu welchem Code gehören. In Teams wird er in einem Remote-Backend mit Sperrmechanismus abgelegt, um gleichzeitige, kollidierende Änderungen zu verhindern. Wiederverwendbare Module kapseln Infrastruktur-Bausteine, sodass etwa ein standardisiertes Netzwerk-Setup nicht in jedem Projekt neu geschrieben werden muss. In der Praxis ergänzt Terraform häufig Ansible: Terraform provisioniert, Ansible konfiguriert.

Typische Stolpersteine: Der State wird unsicher oder lokal verwaltet und enthält dabei oft sensible Werte im Klartext. Manuelle Änderungen am Provider erzeugen Drift, den der nächste plan unvermittelt korrigieren will. Und große, monolithische Konfigurationen ohne Modulstruktur und ohne State-Trennung werden schwer wartbar und riskant beim apply.

// Beispiele aus der Praxis2 Szenarien
/01

Standardisiertes Cluster-Setup als Modul

Ein Plattformteam kapselt Netzwerk, Cluster und Basis-Dienste in einem Terraform-Modul. Projektteams instanziieren es mit wenigen Parametern und erhalten so reproduzierbar konforme Umgebungen, statt Infrastruktur jedes Mal neu zu definieren.

/02

Infrastruktur-Review per plan im Pull Request

Bei jeder Änderung läuft terraform plan automatisch in der Pipeline und hängt das Ergebnis an den Pull Request. Reviewer sehen exakt, welche Ressourcen betroffen wären, bevor apply nach dem Merge die Änderung kontrolliert ausführt.

// Häufige FragenFAQ
Was ist der Unterschied zwischen terraform plan und apply?
plan berechnet und zeigt die geplanten Änderungen, ohne etwas zu verändern — eine Vorschau des Diffs zwischen Soll und Ist. apply führt diese Änderungen tatsächlich aus, nachdem sie geprüft und bestätigt wurden. Diese Trennung ermöglicht Review und Freigabe vor jeder Infrastrukturänderung.
Warum muss der Terraform-State geschützt werden?
Der State enthält die Zuordnung von Code zu realen Ressourcen und häufig sensible Werte. Geht er verloren oder wird parallel verändert, kann Terraform Ressourcen falsch anlegen oder löschen. Deshalb gehört er in ein Remote-Backend mit Verschlüsselung und State-Locking statt auf einen einzelnen Rechner.
Ist Terraform an die Public Cloud gebunden?
Nein. Über Provider deckt Terraform auch On-Premise-Plattformen wie VMware oder OpenStack, Kubernetes, Netzwerk-Hardware und viele weitere Systeme ab. Der einheitliche plan/apply-Workflow bleibt dabei gleich, unabhängig davon, ob die Ziele in der Cloud oder im eigenen Rechenzentrum liegen.
// Nächster Schritt

Erstgespräch.
Kostenlos.
90 Tage zum Ergebnis.

Wir klären gemeinsam, wie Sie in 90 Tagen die ersten messbaren Industrial-DevOps-Erfolge erzielen.

Erstgespräch buchen
Seit 2006 · 47+ Projekte
Industrie · Automotive · Finance