The Control Plane is the โBrainโ of Kubernetes.
It makes all the decisions in the cluster:
- What should run?
- Where should it run?
- What to do if something breaks?
- How many replicas should exist?
- Which node should get which pod?
The Control Plane is responsible for managing the entire cluster, while Worker Nodes simply follow its instructions.
๐ฏ Why Was the Control Plane Created?
Without a central โbrain,โ you would have chaos:
- No one decides which node runs which pod
- No one restarts pods when they crash
- No one performs scaling
- No one stores the desired state
- No communication between nodes
Kubernetes needed a central orchestrator.
โ That is the Control Plane.
๐๏ธ Control Plane = 5 Main Components
๐ 1. API Server (kube-apiserver)
๐ 2. etcd
๐ 3. Scheduler (kube-scheduler)
๐ 4. Controller Manager (kube-controller-manager)
๐ 5. Cloud Controller Manager
๐ 1. API Server (kube-apiserver)
The front door of Kubernetes
Everything talks to the API Server:
-
kubectlcommands - Controllers
- Kubelet
- Operators
- Dashboards
It receives requests โ validates โ stores in etcd.
Think of it as:
โThe receptionist + traffic manager of Kubernetes.โ
๐ 2. etcd
The database of Kubernetes
It stores:
- Pods
- Deployments
- Services
- Configurations
- State of every component
If etcd is lost, the cluster loses its memory.
๐ 3. Scheduler (kube-scheduler)
Decides where pods should run
Example:
You ask for 3 pods
Scheduler checks:
- Which node has free CPU/memory?
- Which node matches affinity/tolerations?
Then schedules the pod to the best node.
๐ 4. Controller Manager (kube-controller-manager)
Ensures the โdesired stateโ is always met
Example:
You say:
โI want 5 replicas.โ
But 1 pod dies.
Controller Manager immediately creates a new one.
It runs controllers like:
- Deployment controller
- ReplicaSet controller
- Node controller
- Job controller
- Endpoints controller
Think of this as:
โThe supervisor who keeps checking and fixing things.โ
๐ 5. Cloud Controller Manager
Handles cloud-specific tasks like:
- AWS load balancers
- Node lifecycle (e.g., EC2 problems)
- Networking routes
- Storage integration
This separates Kubernetes logic from cloud provider logic.
๐จ Putting It All Together
When you run kubectl apply -f app.yaml:
- API Server receives the YAML
- API Server stores the desired state in etcd
- Scheduler picks the node
- Controller Manager ensures correct replica count
- Worker node kubelet starts containers
This flow is repeated for every pod, service, config, secret, or deployment.
๐ง Control Plane in One Sentence
The Control Plane is the central intelligence of Kubernetes that stores the desired state, makes scheduling decisions, monitors the system, and ensures everything stays running as expected.
โ๏ธ Control Plane vs Worker Node (Very Simple)
| Feature | Control Plane | Worker Node |
|---|---|---|
| Purpose | Thinks | Executes |
| Runs | API Server, Scheduler, etcd, controllers | Kubelet, runtime, kube-proxy |
| Stores state? | Yes | No |
| Runs apps? | No | Yes |
| Makes decisions? | Yes | No |
๐ Interview-Ready Answer (Short Version)
What is the Control Plane?
The Control Plane is the set of components that manage the entire Kubernetes cluster. It makes decisions like scheduling pods, maintaining desired state, tracking cluster health, and exposing the Kubernetes API.
What components does it include?
API Server, etcd, Scheduler, Controller Manager, and Cloud Controller Manager.
Top comments (0)