Die Puppet Container sind wieder unter aktiver maintenance
Tags: containers, puppet, configurationmanagement, kubernetes
Published: 2023-10-31 09:40:04

Anfang 2023 hat [Puppet Inc.](https://www.puppet.com) entschieden, die Arbeit an den Puppetserver und PuppetDB Containern einzustellen und haben die GIT Repositories zur Adoption freigegeben.

Bei der [betadots GmbH](https://betadots.de) sehen wir einen wichtigen Use-Case im Einsatz von Puppet Server innerhalb eines Containers.
Außerdem haben wir mehrere Kunden, welche Puppet Server bereits innerhalb eines Containers laufen lassen, oder planen, dies bald zu tun.

Deshalb haben wir uns entschieden, die Pflege der Puppet Server Container fortzusetzen.

Inhalt:

[Hosting und Lizenz](#hosting-und-lizenz)</br>
[Letzte Updates](#letzte-updates)</br>
[Zukünftige Verbesserungen](#zukünftige-verbesserungen)</br>
[Kommerzieller Support](#kommerzieller-support)</br>

---

## Hosting und Lizenz

Um zu verhindern, dass eine einzelne Firma die Lizenz ändern kann, haben wir die [Voxpupuli community](https://voxpupuli.org) gebeten, die Repositories innerhalb ihres GitHub Accounts zu verwalten.

Dies gibt Anwendern und Kunden die Sicherheit, dass die Open Source Lizenz auch langfristig sichergestellt bleibt. Außerdem sehen wir eine stärkere Integration der Puppet Community.

Mitte Oktober 2023 hat [Tim (bastelfreak) Meusel](https://github.com/bastelfreak) bei [Ben (binford2k) Ford](https://github.com/binford2k), Produkt Manager bei Puppet Inc., gebeten, die Repositories zu Voxpupuli umzuziehen. Der Transfer war innerhalb kurzer Zeit abgeschlossen und die Repositories liegen nun bei Voxpupuli.

Es gibt nun 2 neue Repositories für Container-basierte Puppet Server Infrastruktur:

- [container-puppetserver](https://github.com/voxpupuli/container-puppetserver)
- [container-puppetdb](https://github.com/voxpupuli/container-puppetdb)

2 Stunden nach der Migration konnten wir die Container auf Basis eines neuen Base Images und neueren Puppet Versionen erfolgreich starten und betreiben.
Beide Container werden nun unter der Apache 2.0 Lizenz zur Verfügung gestellt.
Die [betadots GmbH](https://betadots.de) unterstützt die Community bei Upgrades und Wartung der Container.

## Letzte Updates

Aktuell werden die offiziellen Ubuntu 22.04 x86_64 Base Images in Kombination mit den offiziellen Puppet Ubuntu Paketen verwendet.

In Zukunft wollen wir auch ARM basierte Container zur Verfügung stellen. Dafür müssen wir jedoch noch auf die offiziellen Pakete von Puppet warten.
Puppetserver und PuppetDB haben zwar schon ARM support, genauer gesagt sind diese Pakete Plattform unabhängig. Aber es gibt eine Abhängigkeit auf das Puppet Agent Paket, welches erst noch für ARM zur Verfügung gestellt werden muss. Es existieren bereits Nightly Builds, aber wir haben entschieden, auf das fertige Release zu warten.
Die Container Build Pipeline ist bereits vorbereitet und sowie die Pakete zur Verfügung stehen, werden auch ARM basierte Container Images für Puppet Server und PuppetDB gebaut werden.

Am 18. October 2023 hat [Robert (rwaffen) Waffen](https://github.com/rwaffen) im [Puppet Community Slack innerhalb des Voxpupuli Channels](https://puppetcommunity.slack.com/archives/C0W1Y5VL0/p1697641383534739) bekannt gegeben, dass er auf Basis von Docker Compose eine komplette, funktionale Puppet Infrastruktur auf Basis der Container deployen konnte.

Die Docker Compose Konfiguration ist **NICHT** Bestandteil der Container Repositories! Diese werden innerhalb eines eigenen Projektes: [CRAFTY - Containerized Resources And Funky Tools (in) YAML](https://github.com/voxpupuli/crafty.git) gepflegt. Dieses Repository wird die zentrale Anlaufstelle für alle Container Komponenten für eine Puppet Infrastruktur. Man kann sich dies als Nachfolger der Pupperware Repositories vorstellen.

Die Container werden zwar auf Basis von Docker erstellt, können aber auch in Kombination mit Podman genutzt werden. Zum jetzigen Zeitpunkt werden die Container auf Basis von Docker gebaut und getestet. Wenn man Probleme oder Fehler findet, freuen wir uns über das Anlegen eines Issues und natürlich auch über weitere Zusammenarbeit.

## Zukünftige Verbesserungen

Aktuell erstellen wir eine CI Pipeline, die die neuen Container Versionen automatisch auf Docker Hub und auf der GitHub Container Registry veröffentlicht.

Außerdem benötigen wir Unterstützung zur Erstellung eines Helm Charts im [CRAFTY Repository](https://github.com/voxpupli/crafty.git). Jeder, der Mitwirken möchte ist herzlich eingeladen! Wir wollen die Container nicht nur in einfachen Docker Umgebungen, sondern auch in Container Clustern wie Kubernetes (k8s) betreiben können.

Wir wollen weiterhin auch die Dokumentation verbessern und freuen uns über Reviews und Verbesserungsvorschläge.

## Kommerzieller Support

Die [betadots GmbH](https://betadots.de) bietet für Kunden kommerziellen Support für Container basierte Puppet Infrastruktur an.

Für weitere Informationen können Sie und gerne [eine Email schicken](mailto:info@betadots.de?subject=Puppet%20Support%20request).

Viel Erfolg mit Puppet auf Basis von Containern.

[Martin (tuxmea) Alfke](https://github.com/tuxmea)</br>
[Robert (rwaffen) Waffen](https://github.com/rwaffen)</br>
[Tim (bastelfreak) Meusel](https://github.com/bastelfreak)