Kubernates Architecture
Master Node (Control Plane)
Managing the cluster, Planning, Scheduling and Monitoring Nodes
Control Plane components
- ETCD or ETCD Cluster
- kube-scheduler
- kube-apiserver
- controller manager
Worker Node
- Kubelet
- kubeproxy
- container run time
| Component | Simple Definition | Runs On | Required/Optional |
|---|---|---|---|
| kube-apiserver | The “front desk” of the cluster — all commands go through it. | Control Plane | Required |
| etcd | Database that stores cluster state (like configs, secrets, Pod info). | Control Plane | Required |
| kube-scheduler | Decides which worker node runs each Pod. | Control Plane | Required |
| kube-controller-manager | Keeps things running as expected (e.g., replaces failed Pods). | Control Plane | Required |
| cloud-controller-manager | Connects cluster to cloud services (load balancers, storage). | Control Plane | Optional |
| kubelet | Makes sure Pods and containers are running on its node. | Worker Node | Required |
| container runtime | The engine that runs containers (Docker, containerd, CRI-O). | Worker Node | Required |
| kube-proxy | Handles Pod-to-Pod and Pod-to-Service networking. | Worker Node | Optional (but usually present) |
| DNS | Lets Pods find each other by name instead of IP. | Cluster | Optional (recommended) |
| Dashboard | Web UI to view and manage cluster. | Cluster | Optional |
| Resource Monitoring | Tracks CPU, memory, and usage (e.g., Prometheus). | Cluster | Optional |
| Cluster Logging | Collects and stores logs from Pods. | Cluster | Optional |