Konfigurationsverwaltung für die Cloud

Per Mausklick kann man bei AWS zum Beispiel einen virtuellen Server (EC2) starten, die Firewall (SecurityGroup) ändern oder auch einen DNS-Eintrag (Route53) setzen. Für den Einstieg ist die Weboberfläche (AWS Management Console) scheinbar perfekt geeignet. Alles funktioniert einfach und schnell. Aber wenn das Setup wächst und wächst, Mitarbeiter wechseln oder nach Monaten nochmal Änderungen vorgenommen werden müssen führt das schnell zu Kopfschmerzen.

Häufige Probleme

  • Bei Änderungen an der Konfiguration kommt es zu Fehlern, die den Produktivbetrieb stören.
  • Bereitstellung neuer Ressourcen erfordert hohen manuellen Aufwand.
  • Bei Sicherheitslücken ist nicht klar, an welchen Stellen ein Update erforderlich ist.
  • Fehler fallen in der Testumgebung nicht auf, weil sich diese zu stark von der Produktivumgebung unterscheidet.
  • Dokumentation und Realität passen nicht 100%ig zueinander.

Lösung

Die oben beschriebenen Probleme lassen sich mit einer Konfigurationsverwaltung lösen, die perfekt an die Anforderungen der Cloud angepasst ist. Für AWS heißt diese Lösung CloudFormation. Das zugrundeliegende Prinzip heißt Infrastructure as Code. AWS lässt sich nicht nur per Weboberfläche konfigurieren, sondern die Konfiguration kann auch in Form von Code (JSON) abgelegt werden. Mit CloudFormation lässt sich dieser Code dann ausführen und die Konfiguration anwenden.

Das hat verschiedene Vorteile.

  • Wissen wandert aus dem Kopf der Mitarbeiter in Code und ist damit dokumentiert und standardisiert.
  • Die Konfiguration lässt sich automatisiert und ohne manuellen Aufwand auf verschiedene Umgebungen anwenden (z.B. Test- und Produktivumgebung).
  • Die Dokumentation erfolgt nicht in separaten System sondern direkt dort, wo die Konfiguration selbst stattfindet.
  • Die Anwendung von Änderungen ist ohne großen Aufwand über AWS Regionen und Konten hinweg möglich.
  • Der Code (Vorlage) wird 1:1 in Konfiguration der AWS Ressourcen übersetzt.
  • Peer-Review von Änderungen an Konfiguration zur Qualitätssicherung wird möglich.
  • Änderungen an Konfiguration werden archiviert und nachvollziehbar.

Prozess

Wie sich Infrastructure as Code in einem Prozess umsetzen lässt zeigt das folgende Schaubild.

Prozess für Infrastructure as Code

Dank der AWS API lässt sich der Prozess einfach mit einem Continuous Integration Server (z.B. Jenkins) standardisieren.

Fazit

In der Cloud eröffnen sich auf im Hinblick auf das Thema Konfigurationsverwaltung neue Möglichkeiten. Mit Infrastructure as Code lassen sich Prozesse im IT-Management neu gestalten. Die Wart- und testbarkeit von Systemen kann so gesteigert werden.

Ähnliche Tags

konfigurationsverwaltung

Teilen

           

RSS

  RSS

Newsletter


Andreas Wittig

Andreas Wittig

Ich bin Autor von Author of Amazon Web Services in Action. Ich arbeite als Software Engineer und unabhängiger Berater mit dem Fokus auf AWS und DevOps. Engagiere mich!

Fehlt etwas in meinem Artikel? Ich freue mich auf dein Feedback! @andreaswittig oder andreas@widdix.de.


Veröffentlicht am