Coden statt konfigurieren
Höheres Reparaturpotenzial
Doch wie bei jeder Technologie sind auch bei IaC einige Herausforderungen zu bewältigen. «Die grössten Gefahren bei diesem Ansatz lauern, wie so oft, beim Anwender selbst», erläutert Andreas Jaekel von IONOS. „Denn wenn man eine Infrastruktur automatisiert, dann kann man sie auch ‚automatisch‘ zerstören. Somit ist das Katastrophenpotenzial höher. Das gilt allerdings auch für das Reparaturpotenzial.»
Für einen sorgfältigen Umgang mit IaC plädiert auch Gerald Pfeifer von SUSE: «Natürlich erlaubt es IaC auch, sich mit gnadenloser Effizienz und Skalierbarkeit ‚ins eigene Knie zu schiessen‘. Im schlimmsten Fall verbreiten sich Konfigurationsfehler in Windeseile und zerschiessen möglicherweise die eigene Infrastruktur. Doch das kann auch durch Tippfehler von Administratoren passieren.» Sein Rat: Die Nutzer sollten Änderungen von IaC-Vorlagen testen und schrittweise ausrollen.
“Mit IaC erreichen wir Konsistenz und Reproduzierbarkeit, Skalierbarkeit und Agilität. Zusätzlich erleichtert die Technologie das Erstellen von Vorlagen und Richtlinien sowie deren gemeinsame Nutzung und Wiederverwendung.„
Gerald Pfeifer, Chief Technology Officer bei SUSE
Wichtig ist zudem, die Mitarbeiter frühzeitig in ein IaC-Projekt einzubeziehen, unterstreicht Kalki Rose. «Der Zeitersparnis bei der Implementierung neuer Services steht ein umfassender Paradigmenwechsel gegenüber. Dieser erfordert Trainings und eine Sensibilisierung der Beschäftigten.»
Fazit & Ausblick
Allein der wachsende Druck, IT-Ressourcen immer schneller nach Bedarf und weitgehend automatisch bereitzustellen, spielt Infrastructure as Code in die Hände. Hinzu kommt, dass Unternehmen in immer stärkerem Mass auf agile Entwicklungsmethoden und Cloud-Computing zurückgreifen. Beide Ansätze lassen sich bestens mit IaC kombinieren. Diese Faktoren tragen dazu bei, dass IaC in den kommenden Jahren an Boden gewinnen wird, und dies nicht nur bei Grossunternehmen und im gehobenen Mittelstand.
Gerade Start-ups und kleinere Firmen können dank Infrastructure as Code den Aufwand reduzieren, der mit dem Aufsetzen und dem Management von Cloud- und herkömmlichen IT-Infrastrukturen verbunden ist. Erste Gehversuche können Anwender mit Hilfe von Open-Source-Lösungen wie Terraform starten.
Problematisch ist jedoch, dass es bislang keine universellen IaC-Tools und -Plattformen gibt. Dies tangiert vor allem Nutzer von Multi-Cloud- und Hybrid-Cloud-Umgebungen. Denn die IaC-Lösungen der grossen Cloud-Service-Provider wie AWS, Microsoft und Google sind auf deren Cloud-Umgebungen zugeschnitten. Auch bei Infrastructure as Code sollten Anwender daher im Vorfeld prüfen, ob das Risiko besteht, sich von einem Anbieter abhängig zu machen. Denn dies würde zulasten der Flexibilität gehen, die Nutzer durch IaC gewinnen.
Tipps für die Implementierung von IaC
Infrastructure as Code kann die Aufgabe erleichtern, IT- und Cloud-Infrastruktur bereitzustellen und zu verwalten. Damit sich dieser Effekt einstellt, sollten Nutzer einige Regeln beachten.
IaC-Code wie klassischen Anwendungscode behandeln: Das gilt auch für den Test von neuen Versionen und Updates sowie die Dokumentation von Änderungen.
Auf Automatisierung setzen: Je weniger Handarbeit bei der Implementierung von IaC-Vorlagen und dem Einspielen von Updates anfällt, desto geringer ist die Fehlerquote.
Die Nachvollziehbarkeit von Änderungen sicherstellen: Dies lässt sich mit einer Versionskontrolle erreichen.
Sicherheits- und Compliance-Konzepte integrieren: Das erfordert beispielsweise Zugangs- und Berechtigungsregeln sowie eine regelmässige automatisierte Kontrolle.
Sicherheits- und Compliance-Konzepte integrieren: Das erfordert beispielsweise Zugangs- und Berechtigungsregeln sowie eine regelmässige automatisierte Kontrolle.
Wartungsaufwand nicht unterschätzen: Anbieter stellen häufig neue Treiber, Firmware-Ausgaben und Releases bereit. Diese zu testen und in IaC-Templates einzupflegen, erhöht den Aufwand beim Betrieb von IT-Infrastrukturen, die mit IaC erstellt werden.
Gegebenenfalls nur eine begrenzte Zahl von Infrastrukturtopologien (small, medium, large) und Schnittstellen bereitstellen: Dadurch reduziert sich der Managementaufwand der Infrastrukturen.
Ein Monitoring etablieren: Es sollte alle Komponenten des Stacks berücksichtigen, also Hardware-Komponenten, Middleware, Container und gegebenenfalls Anwendungen.
Die Mitarbeiter mitnehmen: Ängste vor Kontrollverlust nehmen, Schulungen durchführen, die Beschäftigten für die Besonderheiten von IaC (Vorteile, aber auch Risiken) sensibilisieren.