Puppet Module - Nachhaltigkeit und Qualität

von Alexander Pacnik (inovex GmbH)

Mit Puppet existiert ein sehr mächtiges Werkzeug für das Konfigurationsmanagement, dessen vielfältige Möglichkeiten aber auch Gefahren bergen. Gerade der Qualität, Wartbarkeit und Wiederverwendbarkeit von Code kommt dabei eine zentrale Bedeutung zu. Der Vortrag beschäftigt sich mit den Möglichkeiten die Puppet bietet, um dies zu gewährleisten.

Im ersten Teil wird beschrieben wie Puppet Module wiederverwertbar strukturiert bzw. wie Module getestet werden können, um deren Qualität sicher zu stellen. Im Speziellen geht es um bewährte Methoden zur Trennung von Daten und Code (Hiera), die Modulstruktur und um die Werkzeuge für die Qualitätssicherung wie puppet-lint, Syntax-Checks, Smoke-Tests und Performance-Tests.

Der zweite Teil dreht sich um das „Baukastenprinzip“ also wie Module zu (dynamischen) Environments zusammen gesetzt werden können, so dass diese in großen heterogenen Umgebung bzw. über Team- und Projektgrenzen hinweg skalieren. Hierzu wird die logische Unterscheidung zwischen Modulen, Profilen und Rollen erläutert, sowie welche Tools dabei nützlich sind wenn es darum geht die Environments zu verwalten (Git, librarian-puppet bzw. r10k).

Die Themen werden anhand von Code Beispielen und Erfahrungen aus verschiedenen Projekten verdeutlicht.

Über den Autor Alexander Pacnik:

Alexander Pacnik arbeitet seit vier Jahren in der Abteilung IT-Engineering & Operations bei der inovex GmbH. Seit über 10 Jahren beschäftigt er sich professionell mit Linux und Open Source und hat durch zahlreiche Projekte umfassende Praxiserfahrungen. Seine Aufgaben umfassen die Konzeption, den Aufbau und Betrieb von Systemen. Seine Schwerpunkte liegen in den Bereichen Automatisierung, hochverfügbare und hochskalierbare Webarchitekturen, sowie Java basierte Applikationsserver. Puppet im speziellen hat er bereits seit der Version 0.24 in verschiedenen Projekten aller Größenordnungen eingesetzt.