Published Feb 21, 2021
Works in Master Slave mode.
Each Node must have the following 3 processes installed on it:
1. Container Runtime : Container technology like Docker or something2. Kubelet : Interacts with container and node. Assigns resources like compute and network to container from node.3. Kube Proxy: Forwards requests intelligently and makes sure services run in a performant manner.
Each master node will have the following 4 processes running on it:
1. API Server: The only entrypoint into a cluster. Only accepts authenticated requests. Any requested related to cluster has to pass through API Server.2. Scheduler: Responsible for scheduling application pods. Recieves request from API Server. Intelligently schedules pods on Nodes which have enough resources like RAM, CPU etc to run pod or components. Sends request to kubelet, which performs actions on node. Scheduler is not responsible for running any services, just scheduling them.3. Controller Manager: Detects cluster state changes like dead pods etc.4. etcd: Key-Value store of cluster change. Also known as cluster brain. Tracks all the actions of a cluster. Kind of like logs/git to track history of what occured inside the cluster. Doesnt store actual data.