Kubernetes components
A Kubernetes cluster has several master components that are used to control the cluster, as well as node components that run on each cluster node. Let's get to know all these components and how they work together.
Master components
The master components typically run on one node, but in a highly available or very large cluster, they may be spread across multiple nodes.
API server
The Kube API server exposes the Kubernetes REST API. It can easily scale horizontally as it is stateless and stores all the data in the etcd
cluster. The API server is the embodiment of the Kubernetes control plane.
Etcd
Etcd is a highly reliable, distributed data store. Kubernetes uses it to store the entire cluster state. In a small, transient cluster, a single instance of etcd
can run on the same node as all the other master components, but for more substantial clusters, it is typical to have a three-node or even five-node etcd
cluster for redundancy and high availability.