Open-Source-Tools fürs Konfigurationsmanagement

Containerisierung, DevOps und Cloud stellen neue Anforderungen an automatisierte Systemkonfiguration. Die etablierten Werkzeuge müssen mit dem Wandel umgehen.

Artikel verschenken
In Pocket speichern vorlesen Druckansicht
Lesezeit: 36 Min.
Von
  • Dr. Jan Bundesmann
Inhaltsverzeichnis

Konfigurationsverwaltung ist einerseits ein alter Hut, andererseits immer noch nicht überall angekommen. Andererseits haben Containerisierung und Cloud in den letzten Jahren einige grundlegende Neuerungen mit sich gebracht. Configuration Management muss sich auch daran messen lassen, wie es mit diesem Wandel umgeht. Wer jetzt erst einsteigt oder seine Infrastrukturverwaltung weiterentwickeln möchte, sollte diese neuen Aspekte bedenken: Einmal-Deployments werden typischer und häufig bildet die Containerorchestrierung eine Abstraktionsschicht zwischen Infrastruktur und Anwendungen.

Zugriff per Netzwerk versteht sich von selbst. Eine wichtige Eigenschaft von Tools fürs Konfigurationsmanagement ist Idempotenz. Das ist ein Begriff aus der Mathematik und bezeichnet einen Operator oder eine Funktion, die man beliebig oft nacheinander auf ein Objekt anwenden kann, wobei man stets das gleiche Ergebnis bekommt. Im Bereich der IT-Verwaltung sind Skripte und Funktionen dann idempotent, wenn sie erst prüfen, ob überhaupt Aktionen nötig sind, um das gewünschte Ziel zu erreichen. Zum Beispiel verfügen alle hier vorgestellten Werkzeuge über Komponenten, die sicherstellen, dass ein Systemdienst läuft. Dafür prüfen diese zuerst, in welchem Zustand sich der Dienst befindet, und entscheiden dann, welche Schritte sie vornehmen. Die deklarative Sprache hat schließlich dazu geführt, dass Methoden der Softwareentwicklung auch bei den Ops-Teams Einzug gehalten haben: der Startschuss für DevOps.

Mehr zum Thena Konfigurationsmanagement

Dieser Artikel betrachtet die Konfigurationsmanagementsysteme Ansible, CFEngine, Chef, Fully Automatic Installation, mgmt, Pulumi, Puppet, Rudder, SaltStack und Terraform. Dazu kommen noch die drei weitverbreiteten Metawerkzeuge Foreman, ManageIQ und StackStorm. Sie alle sind Open-Source-Software, bei einigen existiert auch eine kostenpflichtige Variante, die neben Herstellersupport zusätzliche Funktionen bietet. Deren Umfang findet sich gegebenenfalls in der detaillierten Beschreibung. Grob lassen sich die Tools in drei Kategorien unterteilen: ManageIQ und StackStorm sind prinzipiell eher Wrapper um andere Tools und bieten deren Fähigkeiten. Tools wie Puppet ziehen Systeme immer wieder auf einen gewünschten Zustand zurück, wenn diese davon abweichen. Andere wiederum (Ansible, Terraform) provisionieren die Zielsysteme einmal und kümmern sich dann nicht weiter automatisch um sie.