Die Verwaltung der IT-Infrastruktur über mehrere Clouds, Server und Umgebungen hinweg kann schnell komplex und aufwändig werden. Eine der besten Möglichkeiten für Unternehmen, ihre Infrastruktur in großem Umfang zu betreiben und zu erweitern, ist die Infrastructure-as-Code-Lösung (IaC) Terraform.
IaC-Lösungen bilden Bindeglied und gemeinsame Sprache, um IT-Stacks aus Ressourcen verschiedener Anbieter parallel und übergreifend aufzubauen und zu verwalten.
(Bild: Asha Sreenivas - stock.adobe.com)
Terraform ist ein IaC-Tool, das hauptsächlich von DevOps-Teams zur Automatisierung verschiedener Infrastrukturaufgaben verwendet wird. So ist beispielsweise die Bereitstellung von Cloud-Ressourcen einer der Hauptanwendungsfälle von Terraform. Das von Cloud-Anbietern unabhängige Open-Source-Bereitstellungstool wurde von HashiCorp in Go entwickelt.
Terraform ermöglicht es, die gesamte Infrastruktur in Form von Code zu beschreiben. Selbst wenn die Server von verschiedenen Anbietern wie AWS oder Azure stammen, können mit Terraform diese Ressourcen parallel und anbieterübergreifend aufgebaut und verwaltet werden. Terraform ist also eine Art Bindeglied und gemeinsame Sprache, die für das Management des gesamten IT-Stacks genutzt werden kann.
Wofür wird Terraform verwendet?
Eine der Hauptfunktionen von Terraform ist die Bereitstellung von Public Clouds bei einem der großen Anbieter: Die Möglichkeit, IaC für Dienste wie AWS und Azure bereitzustellen, ist und bleibt der Hauptfokus von Terraform. Dabei ermöglicht die Lösung die Nutzung dieser öffentlichen Clouds über einen Provider sowie ein Plugin, das bestehende APIs und Sprachen wie Azure Bicep umfasst, und erstellt eine Terraform-Syntax.
Der zweite Anwendungsfall von Terraform ist die Erleichterung von Multi-Cloud-Bereitstellungen. Einer der Hauptvorteile besteht darin, dass es im Gegensatz zu einigen seiner IaC-Konkurrenten über alle Cloud-Anbieter hinweg gleichzeitig eingesetzt werden kann. Die Fähigkeit, Ressourcen bei mehreren Cloud-Anbietern bereitzustellen, ist von entscheidender Bedeutung, da Infrastruktur-Verantwortliche dieselbe Syntax verwenden können, ohne sich mit mehreren Tools und Technologien vertraut machen zu müssen.
Die dritthäufigste Verwendung von Terraform ist die Bereitstellung, Verwaltung und Orchestrierung von Ressourcen mit benutzerdefinierten Cloud-Providern. Ein Provider ist eine Möglichkeit, in Terraform eine bestehende API zu verwenden und sie in die entsprechende Syntax von Terraform zu konvertieren, auch wenn man nicht AWS oder einen anderen der großen Cloud-Services verwendet. Provider können auch für interne Anwendungsfälle geschrieben werden, wenn man vorhandene Tools oder APIs in Terraform konvertieren möchte.
Kurz gesagt hilft Terraform, das gesamte IT-Ökosystem über IaC zu verwalten, egal ob es sich um eine einzelne Cloud, eine Multi-Cloud oder eine benutzerdefinierte Bereitstellung handelt.
Vorteile von Infrastructure-as-Code (IaC)
IaC ersetzt die für die Verwaltung von IT-Ressourcen erforderlichen Standardbetriebsverfahren und den manuellen Aufwand durch Codezeilen. Anstatt Cloud-Knoten oder Hardware manuell zu konfigurieren, automatisiert IaC den Prozess der Infrastrukturverwaltung durch Quellcode.
Die größten Vorteile einer IaC-Lösung wie Terraform:
Schnelligkeit und Einfachheit: IaC macht manuelle Prozesse überflüssig und beschleunigt so die Bereitstellung und Verwaltung. IaC ermöglicht es, eine gesamte Infrastrukturarchitektur durch einfaches Ausführen eines Skripts in Betrieb zu nehmen.
Team-Zusammenarbeit: Verschiedene Teammitglieder können mit Hilfe von Tools wie Github an IaC-Software genauso zusammenarbeiten wie an normalem Anwendungscode. Dabei kann der Code für die spätere Verwendung und als Referenz einfach mit Issue-Tracking-Systemen verknüpft werden.
Fehlerreduzierung: IaC minimiert die Wahrscheinlichkeit von Fehlern oder Abweichungen bei der Bereitstellung der Infrastruktur. Der Code standardisiert die Einrichtung vollständig, so dass die Anwendungen reibungslos und fehlerfrei laufen, ohne dass es der ständigen Überwachung eines Administrators bedarf.
Disaster Recovery: Mit IaC lassen sich Störungen schneller beseitigen. Eine manuell aufgebaute Infrastruktur muss manuell wiederhergestellt werden. Mit IaC hingegen kann man in der Regel einfach Skripte neu ausführen und die gleiche Software erneut bereitstellen.
Erhöhte Sicherheit: IaC beruht auf Automatisierung, die viele mit menschlichen Fehlern verbundene Sicherheitsrisiken beseitigt. Wenn eine IaC-basierte Lösung korrekt installiert wird, verbessert sich die Gesamtsicherheit der Architektur und der damit verbundenen Daten erheblich.
Wie funktioniert Terraform?
Mit Terraform lässt sich die gesamte Infrastruktur über Konfigurationsdateien und Versionskontrolle definieren und verwalten. Dies wird durch die Verwendung der beiden Hauptkomponenten der Terraform-Architektur erreicht: Core und Provider.
Terraform Core verwendet zwei Input-Quellen: Die erste besteht aus den Eingaben, die der User in Terraform konfiguriert und die definieren, welche Ressourcen erstellt oder bereitgestellt werden müssen. Die zweite umfasst den Daten-Feed zu Terraform, der Aufschluss über die aktuelle Infrastruktur gibt. Anhand dieser Informationen bestimmt Terraform, welche Maßnahmen ergriffen werden müssen. Es vergleicht den vom User gewünschten mit dem aktuellen Zustand und konfiguriert die Architektur so, dass die Lücken geschlossen werden. Terraform Core findet im Wesentlichen heraus, was erstellt, aktualisiert oder gelöscht werden muss, um die Infrastruktur vollständig bereitzustellen.
Die zweite Schlüsselkomponente sind Provider für bestimmte Technologien. Dabei handelt es sich in der Regel um Cloud-Anbieter wie AWS oder Azure, es kann aber auch jede andere Infrastruktur oder jedes Plattform-as-a-Service-Tool sein. So fällt beispielsweise auch Kubernetes in diese Kategorie. Terraform verfügt über mehr als hundert Provider für verschiedene Technologien, die den Benutzern Zugang zu den Ressourcen gewähren. Verwendet man beispielsweise AWS, so hat Terraform auch Zugriff auf EC2-Instanzen und andere Ressourcen innerhalb des Stacks. Auf diese Weise lassen sich Infrastrukturen auf verschiedenen Ebenen erstellen, z. B. Kubernetes auf Azure stapeln.
Stand: 08.12.2025
Es ist für uns eine Selbstverständlichkeit, dass wir verantwortungsvoll mit Ihren personenbezogenen Daten umgehen. Sofern wir personenbezogene Daten von Ihnen erheben, verarbeiten wir diese unter Beachtung der geltenden Datenschutzvorschriften. Detaillierte Informationen finden Sie in unserer Datenschutzerklärung.
Einwilligung in die Verwendung von Daten zu Werbezwecken
Ich bin damit einverstanden, dass die Vogel IT-Medien GmbH, Max-Josef-Metzger-Straße 21, 86157 Augsburg, einschließlich aller mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen (im weiteren: Vogel Communications Group) meine E-Mail-Adresse für die Zusendung von Newslettern und Werbung nutzt. Auflistungen der jeweils zugehörigen Unternehmen können hier abgerufen werden.
Der Newsletterinhalt erstreckt sich dabei auf Produkte und Dienstleistungen aller zuvor genannten Unternehmen, darunter beispielsweise Fachzeitschriften und Fachbücher, Veranstaltungen und Messen sowie veranstaltungsbezogene Produkte und Dienstleistungen, Print- und Digital-Mediaangebote und Services wie weitere (redaktionelle) Newsletter, Gewinnspiele, Lead-Kampagnen, Marktforschung im Online- und Offline-Bereich, fachspezifische Webportale und E-Learning-Angebote. Wenn auch meine persönliche Telefonnummer erhoben wurde, darf diese für die Unterbreitung von Angeboten der vorgenannten Produkte und Dienstleistungen der vorgenannten Unternehmen und Marktforschung genutzt werden.
Meine Einwilligung umfasst zudem die Verarbeitung meiner E-Mail-Adresse und Telefonnummer für den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern wie z.B. LinkedIN, Google und Meta. Hierfür darf die Vogel Communications Group die genannten Daten gehasht an Werbepartner übermitteln, die diese Daten dann nutzen, um feststellen zu können, ob ich ebenfalls Mitglied auf den besagten Werbepartnerportalen bin. Die Vogel Communications Group nutzt diese Funktion zu Zwecken des Retargeting (Upselling, Crossselling und Kundenbindung), der Generierung von sog. Lookalike Audiences zur Neukundengewinnung und als Ausschlussgrundlage für laufende Werbekampagnen. Weitere Informationen kann ich dem Abschnitt „Datenabgleich zu Marketingzwecken“ in der Datenschutzerklärung entnehmen.
Falls ich im Internet auf Portalen der Vogel Communications Group einschließlich deren mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen geschützte Inhalte abrufe, muss ich mich mit weiteren Daten für den Zugang zu diesen Inhalten registrieren. Im Gegenzug für diesen gebührenlosen Zugang zu redaktionellen Inhalten dürfen meine Daten im Sinne dieser Einwilligung für die hier genannten Zwecke verwendet werden. Dies gilt nicht für den Datenabgleich zu Marketingzwecken.
Recht auf Widerruf
Mir ist bewusst, dass ich diese Einwilligung jederzeit für die Zukunft widerrufen kann. Durch meinen Widerruf wird die Rechtmäßigkeit der aufgrund meiner Einwilligung bis zum Widerruf erfolgten Verarbeitung nicht berührt. Um meinen Widerruf zu erklären, kann ich als eine Möglichkeit das unter https://contact.vogel.de abrufbare Kontaktformular nutzen. Sofern ich einzelne von mir abonnierte Newsletter nicht mehr erhalten möchte, kann ich darüber hinaus auch den am Ende eines Newsletters eingebundenen Abmeldelink anklicken. Weitere Informationen zu meinem Widerrufsrecht und dessen Ausübung sowie zu den Folgen meines Widerrufs finde ich in der Datenschutzerklärung.
Der Terraform-Workflow besteht aus den folgenden drei Schritten:
1. Schreiben: Hier werden die Ressourcen der Infrastruktur als Code mit der Hashicorp Configuration Language (HCL) definiert.
2. Überprüfen: Terraform erstellt daraufhin einen Plan zum Hinzufügen oder Entfernen von Ressourcen, der auf dem Vergleich der definierten Infrastruktur und dem aktuellen Zustand der vorhandenen Ressourcen basiert.
3. Anwenden: Abschließend können die geplanten Änderungen akzeptiert werden, um Infrastrukturressourcen hinzuzufügen oder zu entfernen. Die Infrastruktur kann sodann mit Hilfe von Terraform vollständig bereitgestellt werden.
Entlastung der DevOps-Teams
Die Bereitstellung, Verwaltung und Orchestrierung von Multi-Cloud-Umgebungen stellen für DevOps-Teams oft eine große Herausforderung dar.
Michael Scheffler, Varonis Deutschland GmbH.
(Bild: Varonis Systems)
Mit Infrastructure-as-Code lässt sich jedoch die Koordination zwischen verschiedenen Dienstanbietern und Technologien wie AWS und Azure Virtual Networks wesentlich einfacher und weniger zeitaufwändig gestalten. Terraform ist plattformunabhängig und funktioniert mit nahezu jedem Cloud- oder Datendienstanbieter. Somit eignet sich Terraform ideal, um das eigene DevOps-Team zu entlasten und gleichzeitig die Sicherheit und Stabilität der Infrastruktur zu erhöhen.
* Der Autor Michael Scheffler ist Country Manager DACH von Varonis Systems.