Definition

Infrastructure as Code (IAC)

Infrastructure as Code (IAC) ist eine bestimmte IT-Infrastruktur, die Operations-Teams anstatt manueller Verfahren automatisch per Code verwalten und bereitstellen können. Infrastructure as Code wird deshalb gelegentlich auch als programmierbare Infrastruktur bezeichnet.

Das Konzept von IAC ähnelt der Skript-Programmierung, die verwendet werden, um wichtige IT-Prozesse zu automatisieren. Skripte werden allerdings in erster Linie eingesetzt, um eine Reihe statischer Schritte zu automatisieren, die sich mehrmals auf verschiedenen Servern wiederholen. Statt Skripte verwendet IAC High-Level- oder deskriptive Sprachen, um die komplexen und adaptiven Bereitstellungsprozesse zu codieren.

Zum Beispiel kann IAC, codiert mit Ansible, einem IT-Management und Konfigurations-Tool, einen MySQL-Server installieren, verifizieren, ob MySQL korrekt ausgeführt wird, einen Benutzer-Account und das Passwort erzeugen, eine neue Datenbank einrichten und nicht benötigte Datenbanken entfernen - alles per Code.

Der IAC-Prozess ähnelt formalen Softwaredesign-Praktiken, bei denen Entwickler sorgfältig Codeversionen kontrollieren, Code-Iterationen testen und die Bereitstellung zurückhalten, bis sich die Software im Testbetrieb bewährt hat und für die Produktion freigegeben werden kann.

Die Nutzung von Code für die Bereitstellung und das Ausrollen von Servern und Anwendungen ist besonders für Softwareentwickler interessant. Anstatt sich bei der Bereitstellung und dem Management operationaler Aspekte einer DevOps-Umgebung auf Systemadministratoren zu verlassen, kann ein Entwickler einen IAC-Prozess für die Bereitstellung und das Ausrollen einer neuen Anwendung für die Qualitätssicherung oder experimentelle Zwecke schreiben.

Trotz der Vorteile birgt IAC auch Nachteile. Zum Beispiel kann die IAC-Codeentwicklung zusätzliche Werkzeuge erfordern, die erst erlernt werden müssen und zu zusätzlichen Fehlern führen können. Jeder Fehler im IAC-Code kann sich außerdem schnell über Server verbreiten, so dass Versionskontrollen und umfassende Pre-Release-Tests notwendig sind.

Wenn Administratoren Serverkonfigurationen ändern, ohne gleichzeitig den IAC-Code anzupassen, verbreiten sich möglicherweise die Konfigurationsveränderungen über das gesamte Rechenzentrum hinweg. Es ist daher wichtig, IAC komplett in die Systemadministration, den IT-Betrieb und die DevOps-Prozesse mit gut dokumentierten Richtlinien und Verfahren zu integrieren.

Bekannte Werkzeuge für IAC sind neben Ansible die Tools Vagrant, Puppet und Chef.

Diese Definition wurde zuletzt im Februar 2016 aktualisiert

Erfahren Sie mehr über Software-Entwicklung

Pro+

Premium-Inhalte

Weitere Pro+ Premium-Inhalte und andere Mitglieder-Angebote, finden Sie hier.

Diskussion starten

Schicken Sie mir eine Nachricht bei Kommentaren anderer Mitglieder.

Mit dem Absenden dieser Daten erklären Sie sich bereit, E-Mails von TechTarget und seinen Partnern zu erhalten. Wenn Ihr Wohnsitz außerhalb der Vereinigten Staaten ist, geben Sie uns hiermit Ihre Erlaubnis, Ihre persönlichen Daten zu übertragen und in den Vereinigten Staaten zu verarbeiten. Datenschutz

Bitte erstellen Sie einen Usernamen, um einen Kommentar abzugeben.

- GOOGLE-ANZEIGEN

Extensions de fichiers et formats de fichiers

Motorisé par:

SearchSecurity.de

SearchStorage.de

SearchNetworking.de

SearchDataCenter.de

Close