Kubernetes Control Plane Cluster Store

The cluster store in Kubernetes, typically implemented with etcd, is a key-value store used to save all the cluster data, including the configuration data and the state of the system.

Etcd is a highly available and distributed key-value store that Kubernetes uses to persistently store all its data. This is crucial for Kubernetes to maintain its desired state, recover from crashes, and coordinate work across nodes. It stores the full state of the cluster, including the nodes, pods, configs, secrets, accounts, roles, bindings, and others.

The Kubernetes API server interacts with etcd, reading data to serve requests from users, controllers, and other components, and writing data to reflect changes in the state of the cluster.

In brief, the cluster store is the source of truth for a Kubernetes cluster, holding all the information that the control plane needs to correctly manage the cluster.

Best practice

  • Run between 3-5 ectd replicas for high-availability
  • A default Kubernetes install sets up a replica of etcd in each control plane node and automatically configures HA
Last modified July 21, 2024: update (e2ae86c)