Konfigurationsmanagement mit Cfengine

Das leistungsstarke Cfengine ermöglicht plattformübergreifendes Konfigurationsmanagement für zuverlässige und sichere Systeme. Durch Einführung einer neuen Abstraktionsebene, die direkt am Betriebssystem aufsetzt, ist Cfengine für Linux-, Unix- und auch Windows-basierte Systeme geeignet. Ein automatisierter Betrieb einheitlicher Serversysteme wird durch Cfengine einfach und wartungsfrei durch die selbstheilende Kontrolle des Konfigurationsmanagements. In Kombination mit dem Versionsverwaltungssystem Subversion ist Cfengine eine sichere und ITIL-konforme Lösung zum Betrieb eines revisionssicheren Rechenzentrums.

Am Anfang steht das Versprechen.

Das wissenschaftlich bewährte Konzept der „Promises“ hilft die Kriterien für jeden Server festzulegen. Abhängigkeiten zwischen Prozessen und Systemen werden durch die Promise-Sprache aufgelöst, die in Form von „Input“-Dateien jedem Client zur Verfügung stehen. Das zu erreichende Konfigurationsziel steht zu Beginn jedes Konfigurationsparameters und legt die zur Erreichung des Ziels notwendigen Schritte fest. So lassen sich hierarchische Gliederungen erstellen, die beispielsweise den kompletten Betrieb einer verteilten Applikation über meherere Server und Ebenen abbildet. Durch die transparente Klassendefinition lassen sich anhand äußerer Kriterien (z.B. IP-Adressbereiche, Hostnamen) oder eigener Merkmale Server zu Klassen zusammenfassen und gezielt konfigurieren. Dadurch wird gezielt die benötigte Konfiguration ausgerollt und lässt sich bei Bedarf durch Änderung der Klassendefinition wechseln. Beispielsweise ist so ein schneller und dynamischer Rollentausch eines Webservers durch einen Application Server bei Ausfällen möglich.

Cfengine beherrscht Datei-Transfers für Kopieraufgaben, Dateimodifikationen und die Verarbeitung von Dateiattributen. Darüber hinaus ist die Kontrolle und Steuerung von Betriebsystemprozessen und –diensten möglich. Durch den Zugriff auf das Paketmanagement des Betriebssystems lassen sich Software- und Patchstände überwachen und anpassen. Das Ausrollen neuer Software oder Updates ist mit Cfengine einfach und sicher, da Änderungen transaktionsbasiert stattfinden. Mit dem integrierten Reporting-Daemon und Monitoringdienst wird eine frei konfigurierbare Überwachung des Systemstatus geschaffen. Die übersichtliche Kontrolle ermöglicht dadurch eine Erkennung von Abweichungen in Systemparametern und ein schnelles Eingreifen bei Ausfällen.