Cloud-Infrastruktur leicht konfigurieren mit Terraform

Terraform ist ein Tool, das im Bereich der Infrastruktur eingesetzt wird. Cloud-Infrastruktur wie Server und Datenbanken werden von Unternehmen heute oft bei Cloud-Anbietern eingekauft und nicht mehr selbst betrieben. Gängige Anbieter in dem Bereich sind AWS, Microsoft Azure und Google Cloud. Der Kauf und die Verwaltung finden dabei über die Weboberfläche des jeweiligen Anbieters statt.
So ein Serverkauf ist ziemlich ähnlich zum Kauf eines Laptops in einem Onlineshop. Dort suche ich einen Laptop aus, bestelle ihn und der Shop stellt ihn mir zur Verfügung. Da es sich hierbei aber um keinen physischen Gegenstand handelt, bekomme ich den Server im Gegensatz zum Laptop nicht zugeschickt. Ich kann nur über das Internet damit arbeiten und vieles muss ich dann über die Weboberfläche des jeweiligen Anbieters einstellen.
Bleiben wir nun bei der Analogie des Laptops. Dabei ist es einfach, einen solches Gerät zu bestellen und zu wissen, wie dieses konfiguriert ist. Mit wachsender Unternehmensgröße wird das jedoch immer komplexer. Denn je größer das Unternehmen, desto mehr Laptops, Bestellungen und beteiligte Personen gibt es. Ähnlich gestaltet es sich auch bei der Cloud-Infrastruktur. Dort gibt es dann viele Server, viele Bestellungen, viele beteiligte Personen und noch viel mehr Konfiguration.

Um der Unübersichtlichkeit bei der Vielzahl an Laptops vorzubeugen, etabliert sich ein Inventar. Eine ähnliche Aufgabe übernimmt Terraform für die Cloud-Infrastruktur. Terraform bietet die Möglichkeit, in Textform festzuhalten, welche Server gekauft werden und wie diese dann konfiguriert sind. Die Sprache dazu lässt sich relativ einfach lesen und ist an das JSON-Format angelehnt.
Die notierte Cloud Infrastruktur lässt sich dann bei den verschiedenen Anbietern automatisch bestellen und konfigurieren. Auch spätere Anpassungen lassen sich darüber durchführen. Das alles geschieht über einen einfachen Befehl in der Kommandozeile.
Der Vorteil dieser Vorgehensweise ist, dass die Cloud-Infrastruktur in Textform überblickt werden kann. Veränderungen können betrachtet und auf Wunsch auch erst im Unternehmen freigegeben werden. Damit sind Transparenz und Kontrolle immer gegeben. Und wenn ein anderes Team oder Projekt mal ähnliche Ressourcen benötigt, lassen sich die Dateien einfach teilen. Das Resultat? Kein stundenlanges Klicken mehr in den Oberflächen!