Understanding Kubernetes Architecture: Nodes, Pods, and Clusters
If you do not know Kubernetes, you do not have the development experience. Kubernetes operates like a client-server architecture in which multiple worker nodes and control panels work together. Kubernetes give developers an orchestration for containerized applications across a distributed system. In return, developers have high availability and scalability for their applications.
The role of control plane
Kubernetes control plane acts like a brain for clusters. With the control panel, you can manage the state of the cluster and perform other tasks. The key components of the control plane include:
Kube-apiserver: Its main role is to serve as the entry point for all administrative tasks in the cluster. Mainly, executing REST commands and updates for corresponding objects in etcd.
etcd: Its main job is to hold all cluster data and provide a distributed key-value store for configuration settings and state information.
Kube scheduler: Its responsibility is to assign pods to nodes based on resource availability and other constraints.
kube-controller-manager: This component runs controller processes to regulate the state of the cluster. Always ensure the desired number of pod replicas are running.