Kurzfassung
Terraform ist ein Open-Source Infrastructure-as-Code (IaC) Tool von HashiCorp, mit dem sich Cloud-Infrastruktur deklarativ definieren, provisionieren und verwalten lässt.
Was ist Terraform?
Terraform ermöglicht es Teams, ihre gesamte Infrastruktur in sogenannten HCL-Konfigurationsdateien (HashiCorp Configuration Language) zu beschreiben. Anstatt Server, Netzwerke und Dienste manuell in Cloud-Konsolen anzulegen, definiert man den gewünschten Zustand in Code. Terraform vergleicht diesen Soll-Zustand mit dem aktuellen Ist-Zustand und führt nur die notwendigen Änderungen durch.
Das Tool unterstützt alle großen Cloud-Provider (AWS, Azure, Google Cloud) sowie hunderte weitere Anbieter über sogenannte Provider-Plugins.
Warum ist Terraform relevant?
Für DACH-Unternehmen, die ihre Infrastruktur modernisieren, bietet Terraform entscheidende Vorteile:
- Reproduzierbarkeit: Identische Umgebungen lassen sich in Minuten aufsetzen
- Versionierung: Infrastrukturänderungen werden wie Code in Git nachverfolgt
- Compliance: Richtlinien können als Policy-as-Code mit Sentinel oder OPA durchgesetzt werden
- Multi-Cloud: Vermeidung von Vendor Lock-in durch providerunabhängige Abstraktionen
Praxis-Tipps
- Nutzen Sie Remote State (z.B. S3 + DynamoDB oder Terraform Cloud) für Team-Zusammenarbeit
- Strukturieren Sie Ihren Code in Module für Wiederverwendbarkeit
- Setzen Sie
terraform planimmer vorapplyein, um Änderungen zu prüfen - Verwenden Sie Workspaces für die Trennung von Staging und Production
Häufige Fehler
- State-Dateien lokal speichern statt remote
- Zu große monolithische Konfigurationen ohne Modularisierung
- Fehlende State-Locks bei Teamarbeit
- Manuelle Änderungen an Ressourcen, die von Terraform verwaltet werden (State Drift)