Rechner mit Software für Konfigurationsmanagement wie Puppet, Saltstack oder Ansible zu konfigurieren, ist modern. Tatsächlich geht die Geschichte von Techniken, die heute unter dem Schlagwort DevOps firmieren, schon beinahe 30 Jahre zurück: Das ist das Jahr, in dem die erste Version von CFEngine [1] veröffentlicht wurde. Hierbei handelt es sich um ein Tool, das statt auf Shellskripts auf eine deklarative Sprache setzt, in der die Zielkonfiguration eines Rechners spezifiziert ist, die dieser dann selbständig erreicht. Angetrieben durch die Kritik an der schweren Zugänglichkeit sowie das Aufkommen von Konkurrenz wie Puppet zeigt sich CFEngine 3 etwas benutzerfreundlicher. Der Einstieg fällt wegen der komplexen Konfigurationssprache dennoch nicht ganz leicht.
Der Popularität anderer Tools wie Ansible und Puppet zum Trotz kommt CFEngine in vielen großen Umgebungen zum Einsatz, da es in der Programmiersprache C geschrieben ist. Dementsprechend stellt es geringe Ansprüche hinsichtlich der Hardware- und Softwarevoraussetzungen. Mit einem Server mit vier Cores und 40 GByte Speicher lassen sich laut Hersteller bis zu 4000 Hosts managen. Zu den prominenten Anwendern von CFEngine gehört beispielsweise das Businessnetzwerk LinkedIn. Darüber hinaus schreibt sich das Tool auch gegenüber der Konkurrenz hohe Sicherheit auf die Fahnen und war in der Tat über die Jahre von nur wenigen Sicherheitslücken betroffen. Doch sind solche Werte natürlich mit Vorsicht zu genießen, da eine weniger populäre Software auch seltener in das Visier von Hackern oder Sicherheitsforschern gerät. Zur Absicherung der Netzwerkverbindungen verwendet CFEngine TLS mindestens in der Version 1.1.
Anders als bei Ansible, aber ähnlich wie bei Puppet läuft auf jedem gemanagten Rechner neben anderen Komponenten eine Agent-Software. Diese versucht per Default, alle fünf Minuten den
...Der komplette Artikel ist nur für Abonnenten des ADMIN Archiv-Abos verfügbar.