Join a cluster
:::note Placeholder page :::
Ballast coordinates with Windows Failover Clustering rather than replacing it. Cluster formation, quorum and failover are owned by the cluster service; the centre declares intent and reports state, it does not hand-roll consensus.
Prerequisites
- Every host you intend to add has provisioned networking
and matches the others closely enough to pass cluster validation (a
TBC: whether Ballast runsTest-Clusterfor you and surfaces the report, or expects it run separately first). - Shared storage is in place: Storage Spaces Direct (S2D) with Cluster Shared Volumes (CSV) in v1.
- A witness is configured — file share or cloud, matching your quorum model.
Forming a new cluster
Declare a ClusterSpec naming its member hosts. On apply, the centre assigns
each named host's agent the work needed to bring it into the cluster; the
cluster itself is created via New-Cluster.
Joining an existing cluster
Declaring an existing ClusterSpec with an additional member host added
drives that host's agent to join it, the same reconcile pattern as any other
desired-state change.
Verifying
The console's cluster view shows every declared member as settled
(Generation == ObservedGeneration), the orchestration steps that got it
there, and the cluster's quorum configuration side by side:

"Settled" here means the generation counter, every reconcile step, and the desired-vs-observed comparison all agree — not a single green dot standing in for all three.
Standalone hosts are not second-class
Everything in Provision a host works identically whether or not the host ever joins a cluster. Clustering adds failover, live migration on host death, and CSV — it does not gate basic host management.