Primary-remote: built for economy
The shape: istiod in one cluster, the primary; every other cluster is a deliberately thin remote: workloads, sidecars, and a webhook pointing across the boundary. The satellite brings capacity, not a brain. It was built for the opposite pressure: running istiod is real operational work, and fleets kept growing with clusters that were small, subordinate, or short-lived, where a control plane each multiplied that work for nothing those workloads needed. There was a governance motive too: one place where mesh config and versions are decided, with no satellite able to drift.
The price is coupling, priced fairly: if the primary, or the link to it, is down, the remote's sidecars keep serving their last-pushed configuration; what pauses is change (injection, routing updates, cert rotation) until it returns. For satellite workloads that is a degraded control plane, not an outage. Which points at the test that picks the model: if the first cluster vanished, is the second supposed to carry on alone? Yes means peer, and peers get multi-primary. No means extension, and extensions look like this:
- Burst capacity: overflow scheduling into a second cluster, often a cheaper cloud. Same applications, same owners, placed elsewhere for capacity and cost. The satellite exists to absorb load, not to survive alone.
- Data gravity and legacy adjacency: workloads that belong physically next to a database estate or a system that is not moving. The mesh extends to where the data lives instead of the data moving to the mesh.
- Edge and branch clusters: dozens of small clusters in stores, factories, or POPs, with neither headroom nor headcount for a control plane each.
- Ephemeral clusters: CI, batch, seasonal capacity. Clusters that join the mesh in minutes precisely because they bring nothing but workloads.