Zum Inhalt springen

Add-on-Katalog

Diese Seite listet jedes Add-on, das ein Cluster von PaaSbox Clusters fahren kann, mit dem, was es installiert, seiner Version, seinem Speicher und seinen Optionen. Wie du Add-ons an- und abschaltest und was mit ihren Daten passiert, steht unter Add-ons auswählen.

Die Speicherwerte sind die Schätzungen, die das Portal zusammenzählt, wenn es ein Add-on anbietet; die gemessenen Werte stehen unter der Tabelle.

Add-onVoreinstellungVersionSpeicher, etwaOptionenStand
Hetzner Cloud Controllerimmer anChart 1.33.050 MiBkeineGebaut
Lokaler Speicherimmer anLocalPV-LVM 1.10.1120 MiBkeineGebaut
Traefik-Ingressan, Teil von k3sChart 40.1.4+up40.1.080 MiBZugriffslogs, Client-AdressenGebaut
Hetzner-VolumesausChart 2.21.2120 MiBkeineGebaut
cert-managerausv1.20.2150 MiBE-Mail, Issuer, Challenge, DNS-TokenGebaut HTTP-01; In Arbeit DNS-01
external-dnsausChart 1.23.050 MiBZonen, DNS-Token, PolicyIn Arbeit
FluxausFlux 2.9.5170 MiBkeineGebaut
PaaSbox Platformaus1.0.2150–1230 MiB, je nach OptionenProfil, Observability, Domain, Zertifikate, …Gebaut
Monitoringaus———Geplant
Logsaus———Geplant

Flux und die PaaSbox Platform sind in Release 2026.10.2; die anderen in jedem Release bisher.

Gemessen auf einem cpx22 im Laborlauf vom 2026-10-10, der eigene Speicher der Pods (kubectl top): der Cloud Controller 19 MiB, der lokale Speicher 87 MiB, Traefik 80 MiB, Hetzner-Volumes 82 MiB, cert-manager 64 MiB. Ein frischer Cluster mit nur den immer aktiven Add-ons belegte 1,2 GiB der 3,8 GiB des Servers. Gemessen im Laborlauf der Plattform: Flux 42 MiB im Leerlauf und 138 bis 189 MiB, während die Plattform ihre Teile installiert; die PaaSbox Platform 96 MiB mit minimal, 155 bis 164 MiB mit saas-http01, etwa 30 MiB mehr mit saas, 826 bis 868 MiB mit Observability.

Add-onBrauchtVerträgt sich nicht mitKleinster Server, auf dem es angenommen wird
PaaSbox PlatformFluxcert-manager4 GB; 8 GB für die Profile saas-http01 und saas mit Observability
jedes andere Add-on———
  • Das Portal schaltet ein Add-on, das gebraucht wird, zusammen mit dem an, das es braucht, lehnt es ab, zwei unverträgliche zugleich als an zu speichern, und lehnt ein Add-on oder einen Optionswert auf einem Server mit zu wenig Speicher ab.
  • pbx-agent wendet ein gebrauchtes Add-on zuerst an und das, das es braucht, erst, wenn das erste läuft; ein gebrauchtes Add-on entfernt er erst, wenn alles weg ist, was es braucht. pbx-agent hat die Zustände, die er meldet.

Verbindet den Cluster mit deinem Hetzner-Projekt: die Adressen des Nodes, das private Netz, und Servertyp und Standort als Node-Labels. Immer an, keine Optionen.

  • Er liest das Hetzner-Token und die ID des Netzes aus dem Secret kube-system/hcloud, das pbx-agent schreibt. Ersetzt du dieses Token im Portal, startet pbx-agent ihn neu.
  • Load Balancer sind aus. Traefik antwortet auf den eigenen Ports 80 und 443 des Servers, und nichts im Cluster legt einen Load Balancer bei Hetzner an, den Hetzner dir berechnen würde.

Volumes auf der eigenen Platte des Servers: OpenEBS LocalPV-LVM in der Volume-Gruppe vg0 des Node-Images. Immer an, keine Optionen; er ist Teil des Node-Images und wird mit ihm aktualisiert.

Storage-KlasseStandardWas sie ist
local-lvm-thinja, der einzige StandardEin dünnes logisches Volume; seine Größe ist eine harte Grenze
local-lvm-thickneinDer Platz wird vorab reserviert

Die Geschwindigkeit der lokalen Platte ohne Aufpreis. Ein Volume lebt auf dem Server, der seinen Pod zuerst ausgeführt hat. Es übersteht ein Update des Images an Ort und Stelle und eine Wiederherstellung an Ort und Stelle, aber keinen Umzug auf einen anderen Server. Seine Daten zu sichern, ist deine Sache.

Das eigene Traefik von k3s, der Ingress-Controller des Clusters, mit der IngressClass traefik. Auf einem einzelnen Node antwortet er auf den Ports 80 und 443 des Servers, die die Firewall für alle öffnet.

OptionVoreinstellungWas sie tut
Access logsausProtokolliert jede Anfrage in die Ausgabe von Traefik (kubectl -n kube-system logs deploy/traefik).
Keep client IP addressesausLiefert Anfragen mit der eigenen Adresse des Clients statt der des Nodes aus, für Zugriffslogs und IP-Allow-Lists.

Der Schalter dieses Add-ons fügt diese Einstellungen hinzu oder entfernt sie. Er schaltet Traefik nicht ab: Das ist eine Einstellung von k3s, die das Portal nicht anbietet.

Netzwerk-Volumes aus deinem Hetzner-Projekt, über den CSI-Treiber von Hetzner: Storage-Klasse hcloud-volumes, mindestens 10 GB pro Volume, von Hetzner berechnet. Ein Volume überlebt den Server und lässt sich an einen anderen hängen. Keine Optionen.

  • hcloud-volumes ist nicht die Standardklasse. Nenne sie in einem Claim (storageClassName: hcloud-volumes), um sie zu nutzen; Claims ohne Klasse gehen weiter auf den lokalen Speicher.
  • Volumes tragen das Label pbx-cluster mit der ID des Clusters.
  • Schaltest du das Add-on ab, bleiben alle Volumes und Claims, wo sie sind. Löschst du den Cluster, werden seine Volumes gelöscht, nachdem noch angehängte abgehängt wurden.

Zertifikate von Let’s Encrypt für deine Ingresses. Installiert werden zwei ClusterIssuer, letsencrypt-staging und letsencrypt-production. Ein Ingress mit der Annotation kubernetes.io/tls-acme: "true" bekommt den voreingestellten; einen anderen nennst du mit cert-manager.io/cluster-issuer.

OptionVoreinstellungWas sie tut
ACME e-mail (Pflicht)Let’s Encrypt legt das Konto unter dieser Adresse an und schickt Ablaufwarnungen dorthin.
Default issuerproductionZertifikate von staging vertrauen Browser nicht, dafür gibt es kein Ratenlimit: zum Ausprobieren eines Setups.
Challengehttp01http01 beweist den Namen über Traefik auf Port 80 und braucht sonst nichts. dns01 beweist ihn mit einem TXT-Eintrag in deiner DNS-Zone bei Hetzner: nötig für Wildcard-Zertifikate und für Namen, die dieser Cluster nicht ausliefert.
Hetzner DNS API tokenNur für dns01: ein Read-&-Write-Token des Hetzner-Projekts, das die Zone hält; das kann ein anderes Projekt sein als das des Clusters. Verschlüsselt gespeichert und nie wieder angezeigt.

DNS-01 nutzt den eigenen Webhook von Hetzner für cert-manager. Schaltest du cert-manager ab, bleiben die Zertifikate, ihre Secrets und die Ressourcendefinitionen von cert-manager. Ist die PaaSbox Platform an, muss dieses Add-on aus sein: Die Plattform bringt ein eigenes cert-manager mit.

Legt DNS-Einträge in deinen DNS-Zonen bei Hetzner für deine Ingresses und LoadBalancer-Services an, mit dem eigenen Provider von Hetzner für external-dns. Die Einträge gehören der ID des Clusters; einen Eintrag, den es nicht angelegt hat, fasst es nie an.

OptionVoreinstellungWas sie tut
Zones (Pflicht)Die Zonen, in die es schreiben darf, durch Komma getrennt, etwa example.com,example.org. Andere Zonen, die das Token sieht, bleiben in Ruhe.
Hetzner DNS API token (Pflicht)Ein Read-&-Write-Token des Hetzner-Projekts, das die Zonen hält; das kann ein anderes Projekt sein als das des Clusters. Verschlüsselt gespeichert und nie wieder angezeigt.
Policyupsert-onlyupsert-only legt Einträge an und ändert sie, löscht aber nie einen. sync löscht außerdem die Einträge, die dieser Cluster angelegt hat, sobald ihr Ingress oder Service weg ist.

Gebaut im Labor: Angeschaltet lief es 71 Sekunden nach dem Speichern. In Release 2026.10.2, das noch nicht veröffentlicht ist.

Der Source-Controller und der Kustomize-Controller von Flux, je in Version 1.9.5 (Flux 2.9.5), im Namespace flux-system: Der Cluster holt Kubernetes-Manifeste aus Git-Repositories und wendet sie an. Die PaaSbox Platform braucht es, und du kannst es auch auf ein eigenes Deploy-Repository richten. Keine Optionen.

  • Es gilt als laufend, sobald beide Controller verfügbar sind.
  • Schaltest du es ab, halten die Controller an, und jedes GitRepository und jede Kustomization bleibt, ebenso die Ressourcendefinitionen von Flux: Nichts wird gelöscht, nichts wird aufgeräumt.

Gebaut im Labor, am 2026-10-10 und 11, mit einer Kopie ihres Controller-Images und ihrer Quelle: die Profile minimal, saas-http01 und saas mit einem Wildcard-Zertifikat über DNS-01, Observability, eine Anwendung mit Postgres, über HTTPS mit Staging-Zertifikaten von Let’s Encrypt ausgeliefert, ihre Datenbank nach S3 gesichert, und An- und Abschalten. In Arbeit Release 2026.10.2 kann erst veröffentlicht werden, wenn Controller-Image und Quelle öffentlich sind; Zertifikate aus dem Produktionsdienst von Let’s Encrypt und die Wiederherstellung einer Datenbank aus ihrem Backup sind noch nicht gelaufen.

Macht den Cluster zu einer Plattform für deine SaaS-Anwendungen: Du oder dein Agent schreibt Objekte vom Typ SaaSApplication (kubectl get saasapp) und bekommt Postgres mit Backups nach S3, Redis, TLS-Zertifikate, Release-Hooks und Zeitpläne. Deine Anwendungen bleiben deine. Sie braucht Flux und ersetzt das Add-on cert-manager.

Was sie installiert:

  • den Controller von saas-platform im Namespace saas-platform-system, mit seinen zwei Ressourcendefinitionen, SaaSApplication und Platform, die bleiben, wenn das Add-on abgeschaltet wird;
  • die Git-Quelle, aus der ihre Teile installiert werden, in der Version, die das Release festlegt, und die ConfigMap cluster-settings;
  • bei Wildcard-Zertifikaten das DNS-Token als Secret im Namespace cert-manager;
  • eine Platform, benannt nach dem Cluster, die selbst cert-manager installiert, CloudNativePG für Postgres (Profile saas-http01 und saas) und, mit Observability, den Observability-Stack.
OptionVoreinstellungWas sie tut
Profilesaas-http01saas-http01: Postgres (CloudNativePG mit Backups und Wiederherstellungen) und ein Zertifikat von Let’s Encrypt pro Anwendung über HTTP-01. saas: dasselbe mit einem Wildcard-Zertifikat für die Standard-Domain über DNS-01, das ein Token einer DNS-API braucht. minimal: nur Zertifikate, für Anwendungen mit SQLite.
ObservabilityausMetriken, Logs, Traces, Alarme und Grafana für den Cluster und seine Anwendungen. Braucht etwa 0,9 GiB: mit Postgres einen Server mit 8 GB oder mehr.
Default domainAnwendungen ohne eigenen Hostnamen werden als <name>.<domain> ausgeliefert. Richte *.<domain> mit einem DNS-A-Eintrag auf den Server. Pflicht bei Wildcard-Zertifikaten.
CertificatesprofileWie Anwendungen unter der Standard-Domain Zertifikate bekommen. profile: wie das Profil sagt (saas: Wildcard, die anderen: eines pro Anwendung). wildcard: ein Zertifikat für *.<domain> über DNS-01. perApplication: je eines über HTTP-01 (Let’s Encrypt erlaubt 50 neue pro Domain und Woche). none: keine Zertifikate.
ACME e-mail (Pflicht)Let’s Encrypt legt das Konto unter dieser Adresse an und schickt Ablaufwarnungen dorthin. Pflicht seit Version 1.0.2: Ohne sie entsteht kein Zertifikats-Issuer.
Let’s Encryptproductionstaging stellt Zertifikate aus, denen Browser nicht vertrauen, ohne die Ratenlimits von production: zum Ausprobieren eines Setups.
DNS API tokenNur für Wildcard-Zertifikate: ein Token der DNS-API, die die Zone der Standard-Domain hält, das API-Token eines Hetzner-Projekts oder ein DNS-Team-Token von PaaSbox. Pflicht bei Wildcard-Zertifikaten. Verschlüsselt gespeichert und nie wieder angezeigt.
DNS APIdie von HetznerNur für Wildcard-Zertifikate: die Hetzner-kompatible DNS-API. Leer ist die von Hetzner; der DNS-Dienst von PaaSbox ist https://dns.paasbox.com/v1.

Speicher je nach Optionen, und der kleinste Server, auf dem sie angenommen wird:

OptionenSpeicher, etwaKleinster Server
minimal150 MiB4 GB
saas-http01 (die Voreinstellung)300 MiB4 GB
saas330 MiB4 GB
jedes Profil mit Observability1050–1230 MiB4 GB für minimal, 8 GB für saas-http01 und saas

Die Werte der Plattform sind Obergrenzen, mit denen das Portal plant; das Labor hat in jedem Profil weniger gemessen. Auf einem cpx22 (4 GB) mit Flux und saas-http01 und ohne Anwendung hatte der Node im Labor 1,4 GiB Speicher frei: Platz für eine kleine Anwendung. Mit Observability ist keiner da, darum braucht Observability mit Postgres 8 GB.

  • Beim Anlegen bietet das Formular die Profile minimal und saas-http01 an, Observability und eine ACME e-mail, vorausgefüllt mit deiner Adresse. Es schaltet Flux mit der Plattform an und lehnt einen Servertyp mit zu wenig Speicher ab, mit dem kleinsten, der passt. saas braucht eine Standard-Domain und ein DNS-Token, nach denen nur der Reiter Add-ons des Clusters fragt. In Arbeit Einen Cluster mit der Plattform über die REST-API oder die MCP-Tools anzulegen, wird abgelehnt: Sie geben noch keine ACME e-mail mit.
  • Sie gilt als laufend, sobald ihre Platform Ready meldet; solange Flux ihre Teile installiert, bleibt sie ausstehend, minutenlang. Im Labor versuchte Flux einen Teil, der einmal fehlgeschlagen war, erst nach einer Stunde erneut; bis zur nächsten Version der Plattform kann das Add-on so lange ausstehend bleiben.
  • Abschalten, solange es eine SaaSApplication gibt, ändert nichts: Das Add-on meldet failed mit den Namen der Anwendungen. Lösche sie zuerst. Dann installiert die Plattform nichts mehr und entfernt, was sie installiert hat, außer etwas braucht es noch: Eine Datenbank, oder eine Anwendung, die einen ihrer Teile braucht, hält alles an seinem Platz, und das Add-on meldet, warum. Die Annotation platform.paasbox.com/allow-removal: <entry> der Platform entfernt einen Eintrag trotzdem, Datenbanken eingeschlossen.
  • Postgres-Backups stellst du pro Anwendung ein, in der SaaSApplication, mit dem eigenen Bucket und den eigenen Schlüsseln der Anwendung. Die Plattform braucht keinen eigenen Bucket.
  • Sie braucht Traefik: Anwendungen werden darüber ausgeliefert.
  • Abschalten nimmt die CRDs mit, die sie übernommen hat. Anstelle des Add-ons cert-manager angeschaltet, übernimmt die Plattform die Ressourcendefinitionen von cert-manager. Schaltest du die Plattform ab, löscht Flux sie, und mit ihnen jedes Certificate im Cluster. Die Ressourcendefinitionen von CloudNativePG gehen genauso, sobald keine Datenbank mehr da ist.

Geplant Als eigene Add-ons, nach dem Start.

  • Monitoring: kube-state-metrics, node-exporter und ein Agent, der die Metriken sammelt. Entweder an einen Remote-Write-Endpunkt von dir geschickt, oder eine Anzahl Tage im Cluster behalten.
  • Logs: ein Sammler auf dem Node. Entweder an einen Endpunkt von dir geschickt, oder im Cluster behalten.

Beides bleibt in deinem Cluster oder geht an deinen Endpunkt. Nichts davon fließt zum Portal. Bis dahin ist die Option Observability der PaaSbox Platform In Arbeit der Weg zu Metriken und Logs im Cluster.

  • Deine Apps. PaaSbox Clusters deployt keine; mit der PaaSbox Platform schreibst du oder dein Agent die SaaSApplication.
  • Freie Helm-Werte. Jedes Add-on hat die Optionen oben und keine anderen.
  • Cloud Viewer. In Arbeit Die Kopplung von Cloud Viewer mit dem Portal installiert nichts im Cluster: Cloud Viewer liest den Zustand vom Portal, nicht vom Cluster.