/Neues von der PuppetConf 2017: Discovery, Tasks und Pipelines

Neues von der PuppetConf 2017: Discovery, Tasks und Pipelines

Neues von der PuppetConf 2017: Discovery, Tasks und Pipelines


Jens-Henrik Söldner, Torsten Volk

Discovery soll solche Server im lokalen Rechenzentrum oder der Cloud aufspüren, die man weitgehend automatisieren kann.

(Bild: Puppet)

Mit den drei neuen Werkzeugen Discovery, Tasks und Pipelines hat Puppet auf der PuppetConf 2017 einiges für die Automatisierung vorgestellt. So manche wichtige Funktion fehlt noch, doch die Richtung stimmt.

Auf der PuppetConf 2017 in San Francisco stellte Puppet diese Woche drei neue Produkte vor. Sie standen unter dem Veranstaltungsmotto “Pervasive Automation”. So soll sowohl im Rechenzentrum als auch bei den Entwicklern der Release-Prozess so vollständig wie möglich automatisiert werden, damit neue Software-Funktionen kontinuierlich, mit minimalem Risiko und ohne manuellen Aufwand den Nutzer erreichen.

Per Discovery den Überblick behalten

Puppet Discovery, auf GitHub als Tech Preview erhältlich, soll dabei helfen, die Server im Rechenzentrum und bei Amazon EC2 zu entdecken, die den größten Automatisierungsbedarf aufweisen. Sie verwalten Nutzer typischerweise nicht durch Puppet und wurden oft durch Entwickler ad hoc, mit eigenen Skripten oder manuell, erstellt. Mit der Tech Preview funktioniert das nur für Amazons Cloud, da im lokalen Rechenzentrum eine Liste mit den zu scannenden Servern als CSV erforderlich ist und man zum Beispiel nicht ein gesamtes Subnetz nach unbekannten Servern scannen kann. Für EC2 sind für eine Bestandsaufnahme hingegen lediglich die Nutzerinformationen nötig.

Da all dies ohne Agenten funktioniert und noch keine spezielle Unterstützung für vSphere oder Container APIs bereitgestellt wird, erhält man zur Zeit nur recht grobe Informationen zu den entdeckten Servern. Bei Docker zeigt das Werkzeug immerhin den Hostnamen, die Docker-Version, die Version des Betriebssystems sowie alle installierten Pakete und einen Verlauf aller zum Container hinzugefügten und später veränderten Dateien und Ordner an. Ferner kann der Administrator mehrere Betriebssysteme übergreifend – Windows und Linux – nach einer bestimmten Software- oder Middleware-Version wie einen Tomcat-Server durchsuchen. Klares Ziel: Am Ende soll der Kunden möglichst viele Server durch das kostenpflichtige Puppet Enterprise verwalten lassen.

Tasks: Skripte zentral verwalten

Mit Puppet Tasks können Administratoren die Skripte ihrer Kollegen nutzen. Damit kann man Skripte von Dritten durch eine einfache GUI parameterisieren, ausführen, und die Resultate ansehen. Damit die Eingabe von Parametern durch die GUI funktioniert, müssen die Skripte vorher durch JSON beschrieben werden.

So kann ein Linux-Administrator aber auch PowerShell-Skripte nutzen – und umgekehrt könnte man unter Windows auf Linux-spezifisch Formate zugreifen und sogar Ansible-Skripte verwenden. Die Skripte sollen aber nicht Puppets deklarative Sprache ersetzen, die Puppet Enterprise zur Systemkonfiguration umsetzt. Puppet Tasks dienen vielmehr dazu, ad-hoc Deployments konsistent und schnell durchführen zu können sowie schnelle Neukonfigurationen von Servern, Containern, ihren Hosts, oder Applikationen vorzunehmen. Durch sogenannte Plans kann man, ähnlich Amazons Step Functions, die Tasks zu komplexen Abläufen verknüpfen um damit zum Beispiel Applikationen wie Microsofts SharePoint zu installieren und konfigurieren.

Außerdem soll Puppet Tasks Probleme automatisch beheben können, da das Werkzeug von einer Monitoring-Software via API aktiviert werden kann. Google hat in der Puppet Forge bereits den Anfang gemacht und einige Tasks für Dienste bereitgestellt: Nutzer können neue Compute-Instanzen erstellen, Dateien zum Compute Storage hochladen und einen Container-Engine-Cluster skalieren lassen.

Pipelines statt Distelli

Bei Puppet Pipelines handelt es sich um die umbenannte Distelli-Software zur Release-Automatisierung. Hierbei kann der gesamte Prozess vom Code-Deployment, über den Build, bis hin zum Release parameterisiert und mit der Workflow Engine automatisiert werden. Puppet Pipelines holt sich den neuen Code direkt von GitHub, nimmt den Build vor, erstellt die benötigten Container per Kubernetes sowie VMs per vSphere und provisioniert letztere dann auf der vorgesehenen Hardware.

Schritte in die richtige Richtung

Am Ende der PuppetConf 2017 kann man festhalten: Endlich konzentriert sich Puppet darauf, wie man Kunden den Einstieg in die IT-Automatisierung so einfach wie möglich macht. Am deklarativen Prinzip hat sich nichts verändert. Mit den drei neuen Produkten können Nutzer sofort mit dem Automatisieren loslegen. Natürlich fehlen zumindest beim Discovery Tech Preview noch wesentliche Funktionen und bei Puppet Tasks gibt es noch keinen Katalog aller Skripte und auch noch keine GUI für Pläne. Aber Puppet ist sich der Lücken durchaus bewusst und will sie schnell angehen.


(fo)