Three processes need to run on every worker node
- Container Runtime - Docker/ Containerd
- Kubelet - Receives instructions from Control Plane on what Pod to run. Responsible for starting Pods
- Kube Proxy - Forwards requests between the Nodes
Four processes need to run on every master node
- API Server - Used to communicate with the K8 cluster using a client (Provides Auth also)
- Scheduler - Decides where the containers are to be placed on the nodes (Kubelet starts the Pods)
- Controller Manager - Detects state changes on cluster and makes request to return cluster to consistent state
- etcd - Distributed key value store for storing cluster metadata (Cluster Brain). The status information of objects is also located here
The master node is also called Control Plane