Skip to content

DCM

DCM on the hub provides catalog, Rego policies, placement, and service-provider registration (SPM). Workloads run on spokes via service providers pushed as OCM ManifestWorks or console provider Jobs.

Namespace dcm on hub:

Component Image source
control-plane monolith fleet/control-plane:{{ harbor_fleet_image_tag }}
Traefik gateway NodePort for /api, /ui, /fleet
Postgres, NATS Upstream images

Deploy: ansible-playbook fleet-dcm.yml -l hub --tags dcm_hub.

OpenAPI on hub gateway /api/v1alpha1.

Provider ManifestWork / Job Image
k8s containers phase5-k8s-container-sp fleet/k8s-container-service-provider
OLM subscriptions phase5-olm-subscription-sp fleet/fleet-olm-subscription-sp
Helm releases helm SP MW / install fleet/fleet-helm-release-sp
KubeVirt kubevirt SP fleet/kubevirt-service-provider

DELETE /api/v1alpha1/catalog-item-instances/{id}?deletion_mode=strict|deferred|abandon

Mode When to use
strict (default) Normal uninstall while spoke SP reachable
deferred SP temporarily down; cleanup retries
abandon Cluster/provider permanently gone

Strict provider failures return 422. Rehydration (:rehydrate) recreates under current policy — not orphan cleanup.