Suchen

Puppet und Fabric als sinnvolle Softwarekombination Cloud Skalierung mit automatischen Verteilungsprozessen

Autor / Redakteur: Ingo Gottwald / Ulrike Ostler

Ob Apple oder Amazon – die effiziente Bereitstellung von technischen Ressourcen wie Datenspeicher oder Netzwerkkapazität in der Cloud lebt von der Standardisierung und Automatisierung der Systeme und Prozesse. Je mehr in einem System nach einem geordneten Schema ablaufen kann, desto besser können Unternehmen Prozesse automatisieren und auf mehrere Systeme verteilen. Hier eine Übersicht und Bewertung der Tools.

Firma zum Thema

Puppet und Fabric – Puppen und Fabrik: als Tools ergänzen sich die Dinge gut.
Puppet und Fabric – Puppen und Fabrik: als Tools ergänzen sich die Dinge gut.
( Archiv: Vogel Business Media )

Dabei kommt es stark auf die Ausrichtung des Hostings an: Hostet ein Unternehmen nur ein Produkt oder System, das beliebig wachsen soll, oder werden verschiedene Produkte gehostet?

Sowohl für die erste als auch für die zweite Variante bietet der Markt eine Vielzahl an System- und Produktvarianten an. Allein der Open-Source-Markt stellt eine große Auswahl an Tools bereit, wie cfEngine, Chef, Puppet und Fabric.

Ziel dieses Artikels ist es, einen der vielen möglichen Wege aufzuzeigen, wie beide Varianten gelöst werden können. Da die meisten Clouds im Hinblick auf die Betriebssysteme im Linux Segment angesiedelt sind, konzentrieren sich die Ausführungen im weiteren Verlauf auf diese Systeme.

Einige der oben genannten Softwareprodukte lassen sich zwar auch auf Windows Plattformen betreiben, sie werden sich jedoch trotzdem sehr „Unix-artig“ verhalten. Windows-User sollten daher eher auf „hauseigene“ Lösungen, wie „Microsofts System Center Configuration Manager“ zurückgreifen.

Scripting ergänzt die Tools

Sowohl in der Windows- als auch in der Unix-Welt benötigten Anwender zur automatisierten Software- und Konfigurationsverteilung ein paar Scripting-Skills. Die unterschiedlichen Tools bringen oft eigene Skriptsprachen oder Konfigurationsformate mit sich.

Häufig sind auch vorhandene Scripting Programmiersprachen um bestimmte Module oder Application Programming Interfaces (APIs“ erweitert. Um Automatisierungsprozesse schreiben zu können, müssen Anwender keine Meister der objektorientierten Programmierung sein, erste Erfahrungen und Grundkenntnisse im Scripting sollten jedoch vorliegen.

Um eines vorweg zu nehmen: Keins der genannten Tools automatisiert problemlos, out-of-the-box und in kurzer Zeit sämtliche Verteilungsprozesse und damit 100 Prozent einer Cloud-Umgebung. Wichtig ist vielmehr, im ersten Schritt etwa 95 Prozent zu erreichen, um sich schließlich – in der durch den ersten Schritt gesparten Zeit – mittels fortgeschrittenem Scripting den letzten fünf Prozent widmen zu können.

Was kann Puppet?

Im folgenden Beispiel wird eine Kombination aus zwei Tools erläutert, die jeweils spezifische Vorzüge mit sich bringen. Durch die geschickte Anwendung und Verbindung der - eigentlich etwas unterschiedlichen - Konzepte können Anwender im Fall von Sonderanforderungen vermeiden, den Verteilmechanismus komplett abändern zu müssen.

Puppet verfolgt, wie der Name schon andeutet, die Idee eines Puppenspielers (im Puppet-Jargon auch „Puppetmaster“), der Server nach seinen Anweisungen agieren lässt. Die Software ist vielseitig und bietet die Möglichkeit, zahlreiche Aktionen mit einem Server durchzuführen.

Von Vorteil ist dabei besonders, dass sich Aktionen nicht nur einmalig ausführen, sondern auch kontinuierlich überprüfen lassen. So werden beispielsweise automatisch von den Konfigurationen MD5-Prüfsummen gebildet, die schließlich halbstündlich überprüft und notfalls auch korrigiert werden.

weiter mit: Das Tool hilft, Inseln zu vermeiden

Artikelfiles und Artikellinks

Link: cfEngine

Link: Chef

Link: Puppet

Link: Fabric

(ID:2053372)