Terraform
An open-source infrastructure as code (IaC) tool by HashiCorp.
Terraform ist ein Open-Source Infrastructure as Code (IaC) Tool, das von HashiCorp entwickelt wurde. Es ermöglicht Benutzern, Infrastruktur mithilfe einer deklarativen Konfigurationssprache (HCL - HashiCorp Configuration Language oder JSON) zu definieren und bereitzustellen. Terraform ermöglicht es Ihnen, Infrastruktur sicher und effizient über mehrere Cloud-Anbieter (wie AWS, Azure, Google Cloud) und On-Premises-Umgebungen hinweg aufzubauen, zu ändern und zu versionieren. Der Kern-Workflow umfasst das Schreiben von Konfigurationsdateien, das Planen der Ausführung von Änderungen und das Anwenden dieser Änderungen, um Infrastrukturressourcen zu erstellen oder zu aktualisieren. Terraform pflegt eine State-Datei, die den aktuellen Zustand der verwalteten Infrastruktur verfolgt, was inkrementelle Änderungen und die Erkennung von Drift ermöglicht. Seine Modularität, das umfangreiche Provider-Ökosystem und der Fokus auf einen konsistenten Workflow über verschiedene Plattformen hinweg machen es zu einem leistungsstarken Werkzeug für die Verwaltung komplexer Infrastruktur-Deployments, die Automatisierung der Bereitstellung und die Gewährleistung von Infrastrukturkonsistenz und Wiederholbarkeit.
graph LR
Center["Terraform"]:::main
classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
linkStyle default stroke:#4b5563,stroke-width:2px;
🧠 Wissenstest
🧒 Erkläre es wie einem 5-Jährigen
Terraform ist wie ein Bauplan für den Aufbau Ihrer Computersysteme in der Cloud. Sie schreiben genau auf, was Sie wollen (wie Server, Datenbanken und Netzwerke), und Terraform baut es automatisch für Sie auf und kann es später sogar aktualisieren.
🤓 Expert Deep Dive
Terraform's declarative approach contrasts with imperative IaC tools by focusing on the desired end-state rather than the sequence of commands to achieve it. Its state management is crucial; the state file acts as a real-time mapping of configured resources to actual infrastructure objects. This state allows Terraform to perform diffing operations, identifying discrepancies between the configuration and the live environment for planning and applying changes. Providers are plugins that abstract the APIs of various cloud and service providers, enabling Terraform's multi-cloud capabilities. The execution plan generated before applying changes provides a critical safety net, detailing resource creation, modification, and destruction. Advanced features include modules for code reuse, workspaces for managing multiple environments, and a registry for sharing modules and providers.