Zum Inhalt springen

Add-ons auswählen

Ein Cluster kommt mit einer kurzen Liste von Add-ons, die du an- und ausschaltest, jedes mit den wenigen Optionen, die es anbietet. Diese Seite zeigt, wie, und was mit den Daten eines Add-ons passiert, wenn du es abschaltest. Freie Helm-Werte gibt es nicht: Jedes Add-on und jede Option ist als Teil eines Releases getestet, und die Liste ist für jeden Cluster auf diesem Release dieselbe.

Add-onVoreinstellungWas es istStand
Hetzner Cloud Controller (hcloud-ccm)immer anVerbindet den Cluster mit deinem Hetzner-Projekt. Ohne Schalter.Gebaut
Lokaler Speicher (local-storage)immer anVolumes auf der eigenen Platte des Servers, Storage Class local-lvm-thin, die Standardklasse. Teil des Node-Images.Gebaut
Traefik-Ingress (traefik)anDer Ingress-Controller von k3s, auf den Ports 80 und 443 des Servers.Gebaut
Hetzner-Volumes (hcloud-csi)ausNetzwerk-Volumes aus deinem Projekt, Storage Class hcloud-volumes.Gebaut
cert-manager (cert-manager)ausZertifikate von Let’s Encrypt für deine Ingresses.Gebaut HTTP-01; DNS-01 In Arbeit
external-dns (external-dns)ausDNS-Einträge in deinen Hetzner-DNS-Zonen für deine Ingresses.In Arbeit
Flux (flux), ab Release 2026.10.2ausDer Source- und der Kustomize-Controller von Flux.Gebaut im Labor; noch nicht veröffentlicht In Arbeit
PaaSbox Platform (paasbox-platform), ab Release 2026.10.2ausApps als SaaSApplication, mit Postgres, Redis und Zertifikaten.Gebaut im Labor; noch nicht veröffentlicht In Arbeit
Monitoring, Logs——Geplant

Der Add-on-Katalog hat jede Option, jede Version und jede Speicherzahl.

Du musst Team-Admin sein, und der Cluster muss laufen.

  1. Öffne den Reiter Add-ons des Clusters. Jedes Add-on aus dem Release des Clusters steht dort mit seiner Version, ungefähr wie viel Speicher es braucht, seinen Optionen und dem, was der Cluster dafür meldet (the cluster reports: pending, applied, failed oder removed, mit einer Nachricht, wenn es eine gibt).

  2. Ändere den Schalter oder die Optionen eines Add-ons und wähle Save. Das Portal meldet, dass das Add-on gespeichert ist und der Node es bei seiner nächsten Synchronisation anwendet.

  3. Verfolge den Zustand. pbx-agent installiert das Add-on als k3s-HelmChart oder stimmt eine Komponente, die k3s mitbringt, mit einer HelmChartConfig ab, und meldet applied, sobald seine Gesundheitsprüfung besteht; bis dahin meldet es pending mit dem, worauf es wartet. Keine Änderung an einem Add-on startet k3s neu.

Traefik gehört zu k3s: Sein Schalter fügt nur die Abstimmung des Portals hinzu oder entfernt sie, Zugriffslogs und Client-Adressen, und Traefik läuft so oder so weiter. Traefik abzuschalten ist die k3s-Einstellung disable: [traefik], die das Portal nicht anbietet.

Die PaaSbox Platform braucht Flux, und sie kann nicht neben cert-manager laufen, weil sie ihren eigenen mitbringt. Das Formular zeigt solche Regeln und bietet den anderen Schalter unter In the same save: an, etwa Switch Flux on too oder Switch cert-manager off in the same save; ein Speichern, das eine Regel bricht, wird mit dem Grund abgelehnt. pbx-agent folgt denselben Regeln und wendet ein benötigtes Add-on zuerst an.

Die Seite addiert den Speicher der eingeschalteten Add-ons. Ein Add-on oder eine Option, die einen größeren Server braucht, als der Cluster hat, wird mit der nötigen Größe abgelehnt: Die PaaSbox Platform mit Postgres (saas-http01 oder saas) und Observability braucht 8 GB oder mehr. Die gemessenen Zahlen stehen unter Das passende Setup.

Manche Optionen sind Tokens, etwa das DNS-Token von cert-manager und external-dns. Das Portal speichert sie verschlüsselt, schickt sie pbx-agent verschlüsselt für den Schlüssel des Nodes und zeigt sie nie wieder an; lass das Feld leer, um den gespeicherten Wert zu behalten. Im Cluster landen sie in einem Secret namens pbx-addon-<name> in kube-system, das der Chart liest, nie im HelmChart selbst: k3s verschlüsselt Secrets im Ruhezustand, andere Objekte nicht, und ein Snapshot enthält diese im Klartext.

Du oder dein Agent schreibt eine SaaSApplication, und die Plattform gibt ihr Postgres mit Backups, Redis, TLS-Zertifikate und Release-Hooks. Gebaut im Labor: Am 2026-10-11 haben Flux und die Plattform upcheck auf echten Hetzner-Servern betrieben, mit dem Staging-Dienst von Let’s Encrypt. Das Release, das sie mitbringt, 2026.10.2, ist In Arbeit: noch nicht veröffentlicht. Lernschritt 2 deployt eine App darauf.

  • Einschalten braucht Flux: Setz Switch Flux on too, und Switch cert-manager off in the same save, wenn dieses Add-on an ist. Das Add-on bleibt pending, während Flux cert-manager, CloudNativePG und die Issuer installiert, und ist applied, sobald die Plattform bereit meldet. Im Labor war Flux allein 71 Sekunden nach dem Speichern applied, und Flux mit dem Profil minimal in einem Speichern nach 2 Minuten 53 Sekunden.
  • Wenn es pending bleibt: Ein Teil der Plattform, der einmal fehlgeschlagen ist, wird erst nach einer Stunde wieder versucht. Lernschritt 2 zeigt, wie du Flux bittest, es jetzt zu versuchen.
  • Profile: saas-http01 (voreingestellt: Postgres und ein Zertifikat pro App über HTTP-01), saas (ein Wildcard-Zertifikat über DNS-01, das eine Default domain und ein DNS-Token braucht; im Labor war es 4 Minuten nach dem Speichern bereit) und minimal (nur Zertifikate). Observability fügt Metriken, Logs, Traces und Grafana hinzu; im Labor war es 104 Sekunden nach dem Speichern applied, und mit Postgres braucht es einen Server mit 8 GB oder mehr. Das Formular zum Anlegen bietet minimal und saas-http01 an; saas wählst du hier.
  • ACME e-mail ist Pflicht: Unter dieser Adresse registriert Let’s Encrypt sein Konto. Let’s Encrypt wählt production (voreingestellt) oder staging, das Zertifikate ausstellt, denen Browser nicht vertrauen, ohne die Ratenlimits der Produktion. Das Labor nutzte Staging; Produktion ist noch nicht gelaufen.
  • Ausschalten, solange eine SaaSApplication existiert, ändert nichts: Das Add-on meldet failed: not switched off: SaaSApplications still run on the platform und nennt sie; lösch sie zuerst. Danach hält eine Datenbank, die noch existiert, alles an seinem Platz, und das Add-on meldet failed mit der Nachricht der Plattform. Die Annotation platform.paasbox.com/allow-removal an der Plattform, die nennt, was gehen darf, lässt das Entfernen zu; Postgres so zu entfernen, löscht jede Datenbank mit. Im Labor waren Flux und die Plattform, in einem Speichern ausgeschaltet, nach 70 Sekunden entfernt.
  • Zertifikate nach der Plattform: Schaltest du die Plattform aus, löscht Flux auch die CRDs von cert-manager, die es vom Add-on cert-manager übernommen hat, und mit ihnen jedes Certificate. Schaltest du das Add-on cert-manager wieder ein, startet es ohne sie, und deine Ingresses müssen ihre Zertifikate neu bekommen. Die CRDs von CloudNativePG gehen genauso, sobald die Datenbanken weg sind, so gewollt.

Im Labor hatte ein cpx22 mit Flux und saas-http01 ohne App 1,4 GiB Speicher frei: Platz für eine App von der Größe von upcheck (559 bis 606 MiB gemessen).

Ein Add-on abzuschalten entfernt seinen Chart und behält deine Volumes und Claims. cert-manager behält seine CRDs, die ausgestellten Zertifikate und ihre Secrets; seine ClusterIssuers gehen mit seinem Chart. Nachdem die PaaSbox Platform gelaufen ist, gilt das nicht mehr: Die Plattform übernimmt die CRDs von cert-manager, und ihr Abschalten löscht sie (siehe oben). Flux behält seine CRDs, deine GitRepositories und Kustomizations bleiben also. Hetzner-Volumes bleiben in deinem Projekt, und Hetzner berechnet sie dir weiter, bis du sie oder den Cluster löschst; das Löschen des Clusters löscht sie.

Jedes Objekt, das ein Add-on verwaltet, trägt das Label pbx.io/managed=true. pbx-agent wendet die Konfiguration des Clusters alle zehn Minuten erneut an, auch ohne Änderung im Portal, darum wird eine Änderung von Hand an so einem Objekt überschrieben. Willst du ein Add-on selbst steuern, schalte es im Portal ab und installiere dein eigenes, unter einem eigenen Namen. pbx-agent lässt in Ruhe, was er nicht installiert hat.

Lässt sich ein Add-on nicht anwenden, zeigt der Reiter Add-ons failed mit dem Grund. pbx-agent behält die Objekte, die dieses Add-on schon hat: Eine fehlgeschlagene Änderung deinstalliert nie einen laufenden Chart.