Skip to content

Multi-cluster

Satusky can coordinate deployments across multiple Kubernetes clusters while keeping one control plane and one PostgreSQL metadata store.

single Satusky API + PostgreSQL
├── Cluster A
└── Cluster B

The clusters are not peer control planes. The Satusky API fans out desired state to each cluster and aggregates runtime observations back upward.

ModeMeaningBest for
Active-activeMultiple clusters serve trafficlatency and resilience for stateless workloads
Active-passivePrimary serves traffic, secondary is warmdisaster recovery
SharedPer cluster
desired deployment metadatapods and Services
organization identityroute objects
deployment historyPVCs
multi-cluster configlocal health / capacity

Persistent volumes are zone-local. A PVC in one cluster is not magically shared with another cluster. Multi-cluster stateful apps need explicit replication or an external/shared data plane such as object storage.

The CLI exposes backup-related deployment flags for multi-cluster workflows. The architecture should treat backup configuration as part of the workload spec, but not confuse “backup configured” with “cross-cluster state automatically consistent.”

SideroLink is machine-management connectivity, not the user workload data plane. Multi-cluster traffic strategy still depends on routing, DNS, edge load balancing, and application design.

GapTarget
Public routing and failover semantics are not yet documented with the same precision as single-cluster deploys.Define how DNS, LB health, and failover states are exposed to users.
Stateful behavior is partly product policy, partly app responsibility.Make the boundary explicit per storage type.
Machine pools and cluster placement are converging concepts.Future selector-based placement should compose with cluster/zone strategy rather than creating parallel scheduling languages.