
- API server: the front door for all requests and the primary interface for components and users. Every command and component talks to the API server.
- etcd: the distributed key-value store where Kubernetes persists cluster state (both desired and observed).
- Controllers: control loops that continuously compare desired state vs. actual state and take actions to reconcile them.
- Scheduler: assigns pods to appropriate nodes based on resource needs, affinity/anti-affinity, taints/tolerations, and other constraints.
- Kubelet: the node agent that ensures containers for assigned pods are running on a specific node.
etcd stores both:
- the desired state you submit (for example, the
Deploymentwithreplicas: 3), and - the current observed state of the cluster.
Controllers are declarative reconcilers: they continuously observe API state and make changes until the cluster matches the desired specification.

nodeName set). The scheduler watches for unscheduled pods and processes each in two main phases:
- Filter (pre-score): Exclude nodes that cannot run the pod. Filters include:
- Insufficient CPU/memory or other resource constraints
- Taints on nodes that the pod does not tolerate
- Node selectors, node affinity, or other constraints
- Score (prioritize): Rank the remaining nodes using scoring rules — for example, packing vs. balanced placement, affinity/anti-affinity, or custom scoring plugins — and pick the best fit.

- Pulls container images using the container runtime (for example,
containerd). - Starts and supervises containers for the pod.
- Configures pod networking and mounts volumes.
- Periodically reports pod and node status back to the API server.
- You declare the desired state (create a Deployment, Service, etc.).
- The API server stores the spec in
etcd. - Controllers and the scheduler watch the API, compare desired vs actual state, and take actions (create pods, assign nodes).
- Kubelets on nodes execute the runtime actions to realize the desired state and report status.
- Controllers continue reconciling until the actual state matches the desired state.