Eine Lösung für die vorgenannten Probleme ist das quelloffene Python-Modul Jinja2 [1]. Dieses steht unter einer BSD-Lizenz zur Verfügung. Es ist eines der meistverwendeten Template-Engines für Python. Das Modul ist ab Python 2.5 bis zu den derzeitigen Versionen 3.X kompatibel. Sowohl eine Hilfestellung im "Day 0" als auch "Day 1" ist möglich.
Unter einem Day-0-Deployment ist die initiale Inbetriebnahme der Komponenten zu verstehen. Day 1 hingegen definiert eine Konfigurationsänderung. Bei den in diesem Workshop dargestellten Beispielen handelt es sich nicht um vollständige Konfigurationen und diese sind somit nicht für einen produktiven Einsatz gedacht. Sie sollen lediglich die Funktionsweise von Jinja veranschaulichen.
Die Installation von Jinja2 kann über verschiedene Arten erfolgen. Die einfachste Möglichkeit ist die Installation über den im Betriebssystem enthaltenen Paketmanager. Jedoch stehen neue Versionen meist nur leicht verzögert zur Verfügung. Die zweite Möglichkeit besteht darin, das Modul über den in Python integrierten Paketmanager pip einzuspielen. Dieser lässt sich auch global installieren und steht somit betriebssystemweit zur Verfügung. Jedoch führt dies zu der Einschränkung, dass Sie nur eine Version pro eingesetztem Betriebssystem verwenden können.
Die Installation erfolgt mit pip über die Kommandozeile und dem Befehl »pip install jinja2
«
. Gegebenenfalls sind in unixoiden Betriebssystemen noch erweiterte Rechte für die Installation mittels sudo anzufordern. Zusätzlich ist für unsere Beispiele noch das Modul für YAML notwendig. Eine Nachinstallation dieses Moduls erfolgt zum Beispiel über »pip install pyyaml
«
. Je nach eingesetztem Betriebssystem und Art der Python-Installation kann auch eine vorherige Installation des Paketmanagers pip notwendig
Der komplette Artikel ist nur für Abonnenten des ADMIN Archiv-Abos verfügbar.