The limits of a single cluster
Think of a single Kubernetes cluster like a single restaurant location. It works great until the building floods, you want to serve customers across town, or the health inspector shuts you down for a day. Smart restaurant chains open multiple locations — and then face a new problem: how do you keep the menu, staff training, and quality consistent across all of them? Multi-cluster Kubernetes is exactly that problem, applied to software infrastructure.
Why Multi-Cluster?
- High Availability / Disaster Recovery: If
us-east-1goes down, your application should keep running ineu-west-1. A single cluster cannot survive the loss of its own control plane. Two distinct clusters in separate regions can. - Latency (Geography): A user in Tokyo should not have their requests routed to a data center in Virginia. Running clusters close to your users reduces round-trip time from hundreds of milliseconds to tens.
- Isolation (Hard Tenancy): A "Production" cluster that is physically separate from "Staging" ensures a runaway load test or misconfigured job can never touch production data or exhaust production resources. Namespace-level isolation within a single cluster is a soft boundary — a misconfigured RBAC rule or a noisy neighbor can still cause damage.
- Scale: Kubernetes has documented limits — typically around 5,000 nodes and 150,000 pods per cluster. Hyperscalers and large enterprises routinely exceed this. The only option is to split across multiple clusters.
The challenge: How do you manage 50 clusters as easily as 1? This is the central question that multi-cluster architecture answers.