Terraform für Anfänger

In diesem Kurs lernen Sie die Grundlagen der Infrastructure as Code (IaC) mit Terraform. Erforschen Sie Installation, Projekteinrichtung, Ressourcenerstellung, Variablen, Outputs, Module, State Management und die Zerstörung von Ressourcen.

DevOps

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

Lerne den grundlegenden Infrastructure-as-Code-Workflow von Terraform in acht geführten Terminal-Labs. Nach der Installation unter Ubuntu schreibst du HCL, initialisierst Provider, planst und übernimmst Änderungen, verwendest Variablen und Outputs, erstellst ein lokales Modul, untersuchst State und führst einen kontrollierten Abbau durch.

Der Kurs verwendet bewusst den Provider hashicorp/local, um Dateien im Lab zu verwalten. So stehen Terraform-Konzepte und Befehle im Mittelpunkt, ohne Cloud-Plattform, Zugangsdaten oder kostenpflichtige Infrastruktur.

Was du lernen wirst

Nach Abschluss kannst du:

  • Terraform aus HashiCorps offiziellem Ubuntu-Repository installieren und den Signaturschlüssel prüfen.
  • Einen Provider in HCL deklarieren, mit terraform init initialisieren und heruntergeladene Plugins untersuchen.
  • Eine local_file-Ressource definieren, mit terraform plan prüfen, anwenden und die erzeugte Datei verifizieren.
  • Typisierte Eingabevariablen deklarieren und Werte übergeben, um Konfiguration flexibel zu gestalten.
  • Outputs aus Ressourcenattributen definieren und mit terraform output abrufen.
  • Ein lokales Child Module mit Inputs und Outputs erstellen und aus der Root-Konfiguration aufrufen.
  • Lokalen State mit terraform show, terraform state list und der State-Datei prüfen, eine Adresse verschieben und State aktualisieren.
  • Löschung mit terraform plan -destroy vorschauen, terraform destroy ausführen und das Ergebnis bestätigen.

Für wen dieser Kurs geeignet ist

Der Kurs richtet sich an Terraform-Einsteiger, Junior-DevOps-Lernende und Entwickler, die einen deklarativen IaC-Workflow verstehen möchten, bevor sie Cloud-Provider einsetzen. Er zeigt die Beziehung zwischen Konfiguration, Plugins, Plans, Ressourcen, Outputs, Modulen und State.

Voraussetzungen: Terraform-Erfahrung ist nicht erforderlich. Du solltest ein Ubuntu-Terminal bedienen, Textdateien erstellen und bearbeiten sowie Befehlsausgaben lesen können; Kenntnisse zu Konfigurationsdateien und Paketinstallation sind hilfreich.

Lernumgebung: Alle acht Labs laufen in bereitgestellten Ubuntu-22.04-Terminals. Im ersten installierst du Terraform, danach arbeitest du mit lokalen Projektordnern und hashicorp/local; eine Browser-Cloud-Konsole ist nicht beteiligt.

Häufig gestellte Fragen

Erstelle ich echte Ressourcen in AWS, Azure, Google Cloud oder einer anderen Cloud?

Nein. Alle verwalteten Ressourcen sind lokale Dateien von hashicorp/local. Du lernst den auch für Cloud-Provider geltenden Workflow, ohne Credentials oder Infrastrukturkosten.

Wie tief geht das State Management?

Behandelt werden lokale Inspektion, Adresslisten, das Verschieben einer Ressourcenadresse und Refresh. Remote Backends, Locking, Workspaces, Import und Team-Workflows sind nicht enthalten.

Verwendet das Modul-Lab die öffentliche Terraform Registry?

Nein. Du erstellst ein Child Module im lokalen Ordner modules, definierst Inputs und Outputs und rufst es von der Root-Konfiguration auf. Veröffentlichung, Versionierung und Registry-Module liegen außerhalb des Kurses.

Muss ich Terraform vorher auf meinem Computer installieren?

Nein. Installation und Übungen finden in den bereitgestellten Ubuntu-Labs statt; dein persönlicher Rechner wird nicht verändert.

Lehrer

labby
Labby
Labby is the LabEx teacher.