K8s Addons

K8s Addons

Cluster-Addons sind Katalog-Einträge, die der API erlauben, gewünschte Blocks an einem Kubernetes-Cluster zu abonnieren und über den normalen Block-Rollout zu installieren. Eingeführt mit API 0.32.0.

Schichten

Schicht Modell Rolle
Catalogue CatalogueApp Mapping zur Registry-URL des Template-Blocks
Catalog K8sAddon Defaults, Jinja-Config-Template, Scope, is_default, allow_multiple, Reihenfolge, Enforcement
Catalog Config K8sAddonConfigRevision Eine editierbare Jinja-Vorlage pro Addon-version (sonst Fallback auf das Addon-Default)
Desired State K8sClusterAddonSubscription Abonnement am Cluster; Soft-Delete; zugehöriger Instance-Block (block_name)

Kein eigener Trigger-BRC pro Addon: Cluster-Reconcile legt/aktualisiert den Block und ein BlockRolloutItem (managed_by=subscription).

Bedienung

Im Cluster-Detail gibt es den Tab Addons:

  • Available / Subscribe — Addon abonnieren (Version leer = Latest)
  • Subscribed / Remove — Abonnement entfernen (Soft-Delete → Uninstall → Cleanup)
  • Version-Pin als Textfeld; Status aus block.installed / installation_status

enforcement=required (Default-Addons): Opt-out wird beim Default-Reconcile wieder entfernt; Löschen nur Superuser.

allow_multiple=false (Default): höchstens eine aktive Subscription pro Cluster (z. B. Cilium). allow_multiple=true: mehrere Instanzen, jede mit eigenem block_name.

Promote

Ein bestehender Instance-Block lässt sich manuell zur Subscription machen (Aktion am Block, auto_subscribed=false). Workspace-Reconcile legt keine stillen Subscriptions mehr an (Spec 715 Auto-Adopt ist tot). Default-Addons (is_default) erzeugen weiter leere Subscriptions; bestehende Blöcke werden dabei nicht übernommen. Subscribe im Addons-Tab bleibt der Create-Pfad für neue Installationen.

Config

  1. Addon-default_block_config_template und Subscription-block_config_template jeweils als Jinja rendern (Kontext u. a. k8scluster, addon, subscription)
  2. YAML parsen, deep-merge (Listen werden ersetzt)
  3. Ergebnis → Block.config

Adoption (veraltet)

Stilles Übernehmen passender Workspace-Blöcke im Reconcile (Spec 715) ist entfernt. Bestehende Blöcke nur noch über Promote. API-/Operator-Blöcke werden beim CLI-Import weiter nicht überschrieben.

Conditions (INFO)

Condition Bedeutung
K8S_ADDON_VERSION_BEHIND Pin liegt hinter der Platform-Latest
K8S_ADDON_RECOMMENDED_MISSING empfohlenes Addon fehlt

Sie fließen nicht in WARNING/CRITICAL Object-State ein.

Veraltet

Das frühere JSON-Feld K8sCluster.addons / der Sync-Hot-Path sind tot. Neue Deployments laufen über Subscriptions.

Verwandte Themen