Einstieg in AWS CloudFormation

Infrastructure as code (IaC) kann sehr einschüchternd wirken, wenn man es noch nie selber verwendet hat. Jedem ITler sind mittlerweile die vielen Vorteile von Automatisierung klar, vor allem im Bereich der Administration und Konfiguration von IT-Umgebungen. Dennoch wird IaC meist leider nur in großen Enterprise Umgebungen genutzt. Dabei kann es so einfach sein, seine Cloud-Infrastruktur mit Code abzubilden.

Einstieg in AWS CloudFormation - SEQUAFY Blog

AWS CloudFormation Templates

AWS bietet den kostenlosen IaC Dienst AWS CloudFormation an. Hierbei kann, basierend auf selbst erstellten oder bereits veröffentlichten Templates, ein Stack erstellt werden, welcher dann ausgerollt wird. Ein Stack ist eine Ansammlung von AWS Ressourcen, welche als eine Einheit verwaltet werden kann. In diesem Schritt bietet AWS auch den AWS CloudFormation Designer an. Mit dem Template Designer kann per Drag&Drop eine Umgebung wie ein Diagramm erstellt werden.

Die Details einzelner Ressourcen können dann im integrierten Editor angepasst werden. Der Designer kann auch für das Anpassen von existierenden Templates verwendet werden. Das AWS CloudFormation Template ist ein JSON oder YAML formatiertes Dokument, welches in einem Amazon S3 bucket gespeichert wird. Veränderungen an den Ressourcen können einfach nachverfolgt werden.

Wenn eine neue Version des Templates beim Ausrollen an einem Schritt scheitert, kehrt der Stack automatisch zur vorherigen Version des Templates zurück.

„Der Code purzelt einfach Hinten raus.“

Michael Baumöhl, Cloud Engineer

Für bereits bestehende Umgebungen konnten früher, mit Hilfe von AWS CloudFormer, Templates generiert werden. Leider hat AWS die Instandhaltung von CloudFormer abgekündigt. Deshalb müssen wir in diesem Fall auf Lösungen von Drittanbietern wie z.B. Former2 zugreifen, dessen Weboberfläche auch um einiges benutzerfreundlicher ist. Jedoch ist hier dringend zu empfehlen ein IAM Key Pair mit einer ReadOnlyAccess Policy zu verwenden. Außerdem muss man sich genau überlegen, ob man dem Tool Zugang zu einer produktiven Umgebung geben möchte.

Weiterführende Informationen

Alle AWS Quick Starts nutzen bereits AWS CloudFormation. Eine detaillierte Dokumentation zur Verwendung von IaC bei AWS findet man im AWS CloudFormation User Guide. Dieser beinhaltet auch Referenzen für Templates, welche die Syntax und Eigenschaften der erstellbaren Ressourcen aufzeigt. Selbstverständlich bietet AWS auch einige Anleitungen an.

Egal ob zur Vereinfachung des Deployments von neuen Umgebungen, oder zur Verbesserung der Verwaltbarkeit von bestehender Cloud Infrastruktur – das Verwenden von Infrastructure as code wird in Zukunft einen noch größeren Schwerpunkt im IT Umfeld annehmen und sollte deshalb nicht verschlafen werden.