Vertriebliche Beratung:
plusserver-Blog-IaC
Blog

|

11.03.2020

Was ist Infrastructure as Code (IaC)?

Florian Weigmann
Infrastructure as Code beschreibt ein Administrationskonzept für „programmierbare Infrastruktur“.
Infrastructure as Code (IaC) steht für die Beschreibung von Infrastrukturen wie Speicher, Rechenleistung oder Netzwerkressourcen durch ausführbaren Code. Neben der eigentlichen Anwendung wird auch die für den Betrieb benötigte Umgebung in einer maschinenlesbaren Sprache festgehalten. Dies automatisiert letztlich die Bereitstellung der Infrastruktur. Grundlagen für IaC sind gängige Cloud-Technologien wie Virtualisierung sowie ein softwaredefiniertes Infrastruktur-Management.

Infrastruktur wird zur flexiblen Plattform

Dank Virtualisierung können Unternehmen ihre Rechenzentrums-Ressourcen seit Jahren einfacher und gezielter zusammenstellen und skalieren. Viele setzen auch bereits ganz auf Infrastructure as a Service (IaaS). Noch flexibler sind softwaredefinierte Umgebungen. Hierbei werden alle Elemente einer IT-Infrastruktur abstrahiert, zusammengefasst und automatisiert. Cloud Provider bauen auf diese Weise mit herkömmlicher Hardware eine hoch skalierbare und äußerst agile Netzwerkplattform auf.

Die Kunden greifen über eine Abstraktionsschicht der virtualisierten Infrastruktur sowie API-Schnittstellen auf die entsprechenden Plattform-Ressourcen zu. Die Abstraktionsschicht bildet sozusagen eine logische, sicherheitsüberwachte Laufzeitumbegung. Sie entkoppelt dadurch die Anwendungen von der darunter liegenden Hardware. Provisionierung, Konfiguration und Betrieb der Plattform lassen sich so komplett in Software steuern und überwachen.

Automatisierung durch Infrastructure as Code

Infrastructure as Code geht aber noch einen Schritt weiter. Hier geht es darum, die Infrastruktur, die für die Ausführung einer Anwendung benötigt wird, komplett in Code zu beschreiben. So werden beispielsweise benötigte Rechenleistung, Speicherplatz oder Netzwerk-Ressourcen als ausführbarer Code programmiert. Durch das softwaregesteuerte Management virtueller Infrastruktur-Ressourcen ermöglicht Infrastructure as Code eine weitere Automatisierung bei der Bereitstellung von Infrastruktur-Plattformen.

So können die Infrastruktur-Ressourcen in Rechenzentren ohne manuellen Eingriff agil und optimal an die erforderlichen Verhältnisse angepasst werden. Denn der Code lässt sich flexibel und einfach duplizieren, ändern oder auch löschen. Und er kann einfach und schnell für mehrere Einsatzszenarien genutzt werden. Man kann sozusagen auf Best Practices immer wieder zurückgreifen. Wichtig ist es dabei, den Code von Anfang an möglichst sauber und fehlerfrei zu programmieren. Denn sonst besteht natürlich das Risiko, einmal gemachte Fehler schnell weiter zu verbreiten.

Wie unterstützt IaC Multi-Clouds?

Inzwischen nutzen viele Unternehmen vermehrt Multi-Cloud-Umgebungen, die ihnen eine parallele Nutzung verschiedener Cloud-Ressourcen ermöglichen. So kann eine Multi-Cloud beispielsweise aus einer Private Cloud, der pluscloud, AWS oder der Google Cloud Platform bestehen.

Das führt zum einen zu einer steigenden Dynamisierung der Infrastruktur und zum anderen zu einer zunehmenden Komplexität bei der Verwaltung. Deshalb ist es wichtig, nicht nur Prozesse wie die Softwareentwicklung zu automatisieren und dadurch zu beschleunigen. Auch im Bereich der Infrastruktur bringt Automatisierung zahlreiche Vorteile mit sich.

Wenn die Infrastruktur in Code beschrieben ist, ermöglicht das nicht nur eine automatisierte Ausführung, sondern auch die Einführung von Versionskontrollen. Dies erlaubt die Erstellung einer inkrementellen Historie, die anzeigt wer was wann geändert hat. Zudem zeigt es, wie die Infrastruktur zu einem bestimmten Zeitpunkt tatsächlich definiert ist und bietet durch diese Dokumentation genaue Transparenz. Und genau das fehlte meist in herkömmlichen Infrastruktur-Umgebungen, in denen die einzelnen Komponenten manuell zugeordnet wurden.

Fazit: Warum IaC nutzen?

Infrastructure as Code trägt dazu bei, DevOps-Anforderungen zu erfüllen und den Einsatz von Cloud-Technologien zu optimieren. Die Verwendung qualitativ hochwertiger, fertig konfigurierter Skripte senkt das Fehlerpotenzial deutlich, das bei einer manuellen Administration gegeben ist. Dank Automatisierung sind Änderungen an der Infrastruktur so schnell möglich wie noch nie. Den grundlegenden Mehrwert von Infrastructure as Code bilden somit die Versionierung, die Wiederverwendbarkeit des Codes sowie die Möglichkeit eines höheren Automatisierungsgrades.

Über den Autor

Florian Weigmann ist seit Mai 2022 Chief Portfolio Officer (CPFO) bei der plusserver gmbh. Sein besonderes Augenmerk liegt dabei auf den Bereichen Datenarchitektur und Datensicherheit innerhalb skalierbarer Cloud-Infrastrukturen. Zudem eruiert er gemeinsam mit seinem Team die Mehrwerte neuer virtueller Produkte und Services für die plusserver Kunden und entwickelt das plusserver Angebot entsprechend weiter. Vor seiner Ernennung zum CPFO war er Chief Product Officer bei plusserver.

Weiterführende Inhalte

Blog

Was ist Cloud-native?

Eine agile, konzeptionelle Methode, um Anwendungen vollständig in der Cloud zu entwickeln und zu betreiben.
Produkt

Private Registry

Container Images und Helm Charts einfach speichern, verwalten und nutzen.
Produkt

Managed Kubernetes

Mit unserem Managed Kubernetes erstellen und orchestrieren Sie Kubernetes-Cluster im Handumdrehen.