Infrastructure as Code stellt IT-Infrastrukturleistungen wie Rechenleistung, Speicher und Netzwerk auf Basis von maschinenlesbarem Code zur Verfügung. Die Infrastruktur wird ähnlich wie Software programmiert. Das IaC-Konzept ist eng mit dem DevOps-Konzept und dem Cloud-Computing-Modell Infrastructure as a Service (IaaS) verknüpft.
Infrastructure as Code ist eng verknüpft mit DevOps und Cloud Computing und dient zur Bereitstellung von IT-Infrastrukturleistungen auf Basis von maschinenlesbarem Code.
Die Abkürzung IaC steht für Infrastructure as Code. Es handelt sich um einen konzeptionellen Ansatz aus dem IT-Umfeld, der die Bereitstellung von Infrastrukturleistungen wie Rechenleistung (Computing), Speicherplatz (Storage) und Netzwerk (Networking) mithilfe von maschinenlesbarem Code ermöglicht. Oft wird IaC auch als programmierbare Infrastruktur bezeichnet.
Zur Bereitstellung von Infrastrukturleistungen müssen keine manuellen Konfigurationsarbeiten ausgeführt werden. Die Infrastruktur wird über Skripte oder Programmfiles beschrieben und automatisiert gemäß den Vorgaben konfiguriert. Das Erstellen der Infrastruktur ist ein mit dem Programmieren von Software vergleichbarer Vorgang.
Infrastructure as Code ist eng mit dem DevOps-Konzept und dem Cloud-Computing-Modell Infrastructure as a Service (IaaS) verknüpft. Vorteile von IaC sind, dass sich Infrastrukturleistungen schneller, kostengünstiger und in beliebigem Umfang bereitstellen, anpassen oder erweitern lassen. Grundlage für Infrastructure as Code bilden virtualisierte Umgebungen und das Cloud Computing. In diesen Umgebungen lassen sich Ressourcen ohne die Notwendigkeit eines manuellen Zugriffs auf die eigentlichen physischen Hardwareressourcen softwaredefiniert verwalten. IaC wird von zahlreichen Cloud-Computing-Anbietern wie Google, Amazon oder Microsoft unterstützt.
Gängige Tools zur Programmierung der Infrastruktur
Zur Programmierung der Infrastruktur kommen Tools wie Terraform, Chef, Puppet, Ansible, Packer, AWS CloudFormation oder der Google Cloud Deployment Manager zum Einsatz. Teils handelt es sich um spezifische Tools für die jeweiligen Cloud-Umgebungen, teils um anbieterübergreifend nutzbare Open-Source-Tools.
Die prinzipielle Funktionsweise von Infrastructure as Code
Um hardwarebasiert Computing-Ressourcen wie Rechenleistung, Speicherplatz oder Netzwerk über maschinenlesbaren Code zu programmieren, ist eine Abstraktionsschicht zwischen Hardware und Konfigurationsmanagementtool notwendig. In der Regel handelt es sich bei diesen Abstraktionsschichten um verschiedene Formen der Virtualisierung. Dem Anwender werden Schnittstellen oder Tools bereitgestellt, über die sich die einzelnen Ressourcen mithilfe einer definierten Code-Sprache programmieren lassen.
Die Programmierung kann je nach Umgebung und Konzept deklarativ oder imperativ erfolgen. Die deklarative Programmierung gibt die genaue Zielumgebung vor, während die imperative Programmierung die auszuführenden Aktionen definiert, um eine gewünschte Zielumgebung zu erstellen. Der Programmcode kann per Push- oder per Pull-Methode umgesetzt werden. Bei der Pull-Methode lädt sich die zu konfigurierende Umgebung den Programmcode selbst von einem Konfigurationsserver. Die Push-Methode sorgt dafür, dass der Konfigurationsserver den Programmcode an die zu konfigurierenden Komponenten überträgt.
Infrastructure as Code im Umfeld des Cloud-Computing-Modells Infrastructure as a Service (IaaS)
Das IaC-Konzept lässt sich zwar grundsätzlich auch in On-Premises-Umgebungen anwenden. Typisch ist die Programmierung von Infrastrukturleistungen per Programmcode allerdings für das Cloud-Computing-Modell Infrastructure as a Service (IaaS). IaC soll die Bereitstellung der IaaS-Ressourcen effizienter gestalten und beschleunigen, da eine manuelle Verwaltung vieler verschiedener Services und Ressourcen im Cloud-Computing-Umfeld kaum mit vertretbarem Aufwand zu leisten ist.
Mit dem richtigen Code lassen sich eine Vielzahl verschiedener Ressourcen schnell und automatisiert gemäß den spezifischen Anforderungen erstellen, verändern oder erweitern. Nahezu alle Cloud-Computing-Anbieter von IaaS-Leistungen stellen entsprechende Schnittstellen oder Tools für die Programmierung der Infrastruktur per maschinenlesbarem Code zur Verfügung.
Infrastructure as Code und DevOps
Eng verknüpft ist IaC mit dem DevOps-Konzept. Der Begriff DevOps setzt sich aus den beiden Wörtern Development und Operations zusammen. Das DevOps-Konzept sorgt für eine engere Verknüpfung von Software-Entwicklung (Development) und IT-Betrieb (Operations). Ziel von DevOps ist es, die Zusammenarbeit von Systemadministration und Software-Entwicklung effizienter zu gestalten und dadurch zu verbessern.
Infrastructure as Code passt perfekt zu diesem Ansatz, da die Programmierung der Infrastrukturleistungen die Systemadministration den Softwareentwicklern zugänglich macht. Die Aufgabenbereiche Entwicklung und Betrieb nähern sich fachlich wie personell einander an. Entwickler erhalten mehr Möglichkeiten, die Infrastruktur zu beeinflussen und Operations ist enger in den Entwicklungsprozess der Software eingebunden. Neue Software lässt sich automatisiert auf speziell hierfür per Programmcode bereitgestellten Ressourcen in den operativen Betrieb überführen. Das Deployment der Software und die Anpassung der Infrastruktur wird in einem einzigen integrierten Prozess realisiert und dadurch wesentlich effizienter, schneller und kostengünstiger.
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.
Tools für Infrastructure as Code
Es existieren zahlreiche IaC-Tools. Teilweise handelt es sich um spezifische Tools zur Programmierung der Infrastrukturleistungen einer bestimmten Cloud-Computing-Umgebung, teilweise um Open-Source-Tools, die mit den Services verschiedener Anbieter nutzbar sind. Kommen Cloud-Computing-Ressourcen verschiedener Anbieter zum Einsatz, sind Tools für ein anbieterübergreifendes Management der Ressourcen zu bevorzugen. In der Regel unterstützen die Cloud-Computing-Anbieter verschiedene IaC-Tools und -Sprachen.
Das Konzept Infrastructure as Code und die Bereitstellung von Infrastrukturservices über maschinenlesbaren Code bietet zahlreiche Vorteile. Einzelne Hardwarekomponenten müssen nicht mehr aufwendig manuell konfiguriert werden, sondern lassen sich über einen Programmcode automatisiert, schnell, flexibel und in großer Zahl gemäß den individuellen Anforderungen bereitstellen.
Mit dem gleichem Code können viele verschiedene Maschinen fehlerfrei und in gleicher Qualität dimensioniert und konfiguriert werden. Die Kosten zur Konfiguration der Infrastruktur sinken, gleichzeitig ist die Umgebung flexibler und leichter zu skalieren. Durch eine engere Verknüpfung von Betrieb und Softwareentwicklung (DevOps) verkürzen sich Entwicklungsprozesse und die Zusammenarbeit der Prozessbeteiligten verbessert sich.
Weitere Vorteile von Infrastructure as Code sind:
Hardware-Setups und Ressourcen werden wie Software testbar
selbst komplexe Änderungen der Infrastruktur lassen sich nach der Erstellung des Codes binnen kürzester Zeit durchführen
Veränderungen der Ressourcen sind zu beliebigen Zeiten unabhängig vom verfügbaren Personal automatisiert durchführbar
das Risiko manueller Bedien- oder Tippfehler lässt sich reduzieren
Downtimes der Infrastruktur während der Änderungen oder Anpassungen reduzieren sich
einmal erstellter Programmcode kann beliebig oft wiederverwendet werden
Infrastrukturservices lassen sich wie Software mithilfe einer Versionsverwaltung managen - Services und Ressourcen sind in beliebigen Versionen wiederherstellbar
Infrastructure as Code und Infrastructure as a Service ergänzen sich im Cloud-Computing-Umfeld perfekt
Infrastrukturen lassen sich beliebig duplizieren - beispielsweise für Betriebs-, Staging- oder Testumgebungen
Tools ermöglichen die anbieterübergreifende Programmierung von Infrastrukturleistungen mit gleicher Programmiersprache