<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/how-the-kubernetes-control-plane-works-wspjwqeqv" -->

---
title: How the Kubernetes control plane works | daily.dev
description: An explainer walks through how the Kubernetes control plane operates, covering the API server, etcd, controller manager, and scheduler. It traces a Deployment...
canonical: https://daily.dev/posts/how-the-kubernetes-control-plane-works-wspjwqeqv
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: How the Kubernetes control plane works | daily.dev
og:description: An explainer walks through how the Kubernetes control plane operates, covering the API server, etcd, controller manager, and scheduler. It traces a Deployment...
og:url: https://daily.dev/posts/how-the-kubernetes-control-plane-works-wspjwqeqv
og:image: https://api.daily.dev/og/posts/wSPJwQEqV.png
og:image:alt: How the Kubernetes control plane works
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# How the Kubernetes control plane works

**[LearnKube](https://daily.dev/sources/learnkube)** · 6 min read · 0 upvotes · 0 comments

## Summary

An explainer walks through how the Kubernetes control plane operates, covering the API server, etcd, controller manager, and scheduler. It traces a Deployment request end to end: the API server authenticates, authorizes, and validates the request before storing it in etcd; the controller manager's reconciliation loops create ReplicaSets and Pods to match desired state; and the scheduler filters and ranks nodes before assigning Pods to machines. It also notes etcd's Raft-based consistency model and how it can become a scaling bottleneck in large clusters, and links to deeper articles on each component.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://learnkube.com/kubernetes-control-plane>

## Questions this post answers

### What are the four main components of the Kubernetes control plane?

The four main components are the API server, etcd, the controller manager, and the scheduler. The API server acts as the front door handling authentication, authorization, admission, and storage; etcd stores cluster state durably using Raft consensus; the controller manager runs reconciliation loops for Deployments and ReplicaSets; and the scheduler decides which node each Pod runs on.

_daily.dev surfaces deeper breakdowns of each control plane component for engineers architecting Kubernetes clusters._

### Why can etcd become a bottleneck in large Kubernetes clusters?

Etcd can become a scaling bottleneck because consensus is costly, the database relies on a single bbolt file, every change creates a new revision, and the API server adds further load through its caches and watches. Since etcd is a strongly consistent Raft-based store where the leader replicates writes to followers before committing, these properties strain performance as cluster size grows.

_Teams scaling Kubernetes clusters follow etcd performance discussions like this on daily.dev._

### What happens step by step when you run kubectl apply on a Deployment?

The request first hits the API server, which authenticates, authorizes, mutates, validates, and stores the Deployment in etcd. The Deployment controller then creates a ReplicaSet, the ReplicaSet controller creates Pods, the scheduler assigns each Pod to a node, the kubelet starts the containers, and the EndpointSlice controller updates service routing once Pods become ready.

_Developers debugging Deployment rollouts reference control plane flows like this one on daily.dev._

## Similar posts on daily.dev

- [Kubernetes Architecture Made Simple: A School Analogy](https://daily.dev/posts/kubernetes-architecture-made-simple-a-school-analogy-gurwayqpg) · Container Journal · 0 upvotes · 0 comments

---

Tags: [#kubernetes](https://daily.dev/tags/kubernetes), [#distributed-systems](https://daily.dev/tags/distributed-systems), [#orchestration](https://daily.dev/tags/orchestration)

[View this post on daily.dev](https://daily.dev/posts/how-the-kubernetes-control-plane-works-wspjwqeqv)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"How the Kubernetes control plane works","url":"https://daily.dev/posts/how-the-kubernetes-control-plane-works-wspjwqeqv","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/how-the-kubernetes-control-plane-works-wspjwqeqv"},"datePublished":"2026-08-31T11:20:04.069Z","dateModified":"2026-08-31T11:20:43.097Z","description":"An explainer walks through how the Kubernetes control plane operates, covering the API server, etcd, controller manager, and scheduler. It traces a Deployment...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/b40ad2875ce023c03745bdaf9d60329a?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/b40ad2875ce023c03745bdaf9d60329a?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"LearnKube","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"LearnKube","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/90786df1b5d44abb91a090a0b6c81517","url":"https://daily.dev/sources/learnkube"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/how-the-kubernetes-control-plane-works-wspjwqeqv","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"kubernetes,distributed-systems,orchestration","timeRequired":"PT6M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"LearnKube","item":"https://daily.dev/sources/learnkube"},{"@type":"ListItem","position":3,"name":"How the Kubernetes control plane works"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/how-the-kubernetes-control-plane-works-wspjwqeqv#faq","mainEntity":[{"@type":"Question","name":"What are the four main components of the Kubernetes control plane?","acceptedAnswer":{"@type":"Answer","text":"The four main components are the API server, etcd, the controller manager, and the scheduler. The API server acts as the front door handling authentication, authorization, admission, and storage; etcd stores cluster state durably using Raft consensus; the controller manager runs reconciliation loops for Deployments and ReplicaSets; and the scheduler decides which node each Pod runs on. daily.dev surfaces deeper breakdowns of each control plane component for engineers architecting Kubernetes clusters."}},{"@type":"Question","name":"Why can etcd become a bottleneck in large Kubernetes clusters?","acceptedAnswer":{"@type":"Answer","text":"Etcd can become a scaling bottleneck because consensus is costly, the database relies on a single bbolt file, every change creates a new revision, and the API server adds further load through its caches and watches. Since etcd is a strongly consistent Raft-based store where the leader replicates writes to followers before committing, these properties strain performance as cluster size grows. Teams scaling Kubernetes clusters follow etcd performance discussions like this on daily.dev."}},{"@type":"Question","name":"What happens step by step when you run kubectl apply on a Deployment?","acceptedAnswer":{"@type":"Answer","text":"The request first hits the API server, which authenticates, authorizes, mutates, validates, and stores the Deployment in etcd. The Deployment controller then creates a ReplicaSet, the ReplicaSet controller creates Pods, the scheduler assigns each Pod to a node, the kubelet starts the containers, and the EndpointSlice controller updates service routing once Pods become ready. Developers debugging Deployment rollouts reference control plane flows like this one on daily.dev."}}]}
```

