Skip to content

Cluster join

FleetClusterJoin represents a workload cluster from bootstrap through OCM registration.

Phase Meaning
Pending The resource was created
ScriptIssued Sensitive bootstrap material is available
Enrolled Nodes reported enrollment
Validated Local cluster bootstrap completed
Provisioning The hub is registering and configuring the cluster
Ready The managed cluster is available for FleetApp Helm installs

Download the bootstrap bundle only through the authenticated console and protect it as enrollment material. Inspect resource status, controller jobs, and the cluster before retrying any partial phase.

After Ready, the spoke is an independent K3s cluster. Install OCI charts with FleetApp; you must set spec.clusterName. Optional KubeVirt remains a spoke platform add-on where KVM is available — see Fleet KubeVirt platform. Sites with a YAIDAP provisioner connector can create VMs and cluster-apply from inventory — see Site provisioning.

HA clusters (ha_3_node): hub finalize Jobs allow up to 90 minutes. Use umkim cluster wait --timeout 90m.

Deleting a cluster defaults to detach: hub-managed resources are removed while K3s and workloads on the spoke are preserved. Full Kubernetes cleanup is opt-in (cleanupKubernetes=true on delete, or fleet_flow_cleanup_kubernetes=true in playbooks/flows/cluster-delete.yml).