This page provides an overview of Cluster Federation in Kubernetes, and how to use it with Google Container Engine. Cluster Federation has to be installed manually on Google Container Engine and is not available automatically.
Kubernetes Cluster Federation enables users to federate multiple clusters across different regions, cloud providers, or on-premise installations into a single logical compute federation. This simplifies the deployment of highly available, geographically distributed services and hybrid cloud scenarios.
Beginning with Kubernetes 1.3, you can create federated versions of Kubernetes resources, such as Services, with a single API call. The Kubernetes Cluster Federation system automatically deploys the resource across multiple clusters in the federation. The Cluster Federation system monitors the health of federated Services and automatically manages DNS records to ensure that clients are always directed to the closest healthy shards of the federated service.
When to use Cluster Federation
Cluster Federation is useful when you want to deploy resources across more than one cluster, region or cloud provider. You may want to do this to enable high availability, offer greater geographic coverage for your app, use more than one cloud provider, combine cloud provider and on-premise solutions, or for ultra-high scalability.
Cluster Federation is also helpful when you want resources to be contactable in a consistent manner from both inside and outside their clusters, without incurring unnecessary latency or bandwidth cost penalties, or being susceptible to individual cluster outages.
How Cluster Federation works
Cluster Federation is documented in detail in the Kubernetes documentation. Here are a couple of good overviews of Cluster Federation that should help you understand the core concepts and how to complete essential tasks: