Kubernetes
A platform for running containers across many machines, where you declare the desired state and controllers drive the cluster toward it.
- Category: Orchestration & Scheduling
- CNCF maturity: Graduated
- Language: Go
- License: Apache-2.0
- Repository: kubernetes/kubernetes
- Documented at commit:
8c64324b(master, 2026-06-22)
What it is
Kubernetes runs containerized workloads on a pool of machines. You submit objects such as Pods, Deployments, and Services to an API server. The API server stores them in etcd, and a set of controllers continuously compares the desired state against the observed state and acts to close the gap. This reconcile loop is the core idea.
The control plane decides what should run where, and a per-node agent (the kubelet) makes it happen. A scheduler picks a node for each Pod, controllers manage higher level objects such as replica counts and rollouts, and the kubelet starts containers through a container runtime. Everything is declarative: you describe the end state, not the steps.
It sits below application frameworks and above raw compute. Cloud providers, networking, storage, and runtimes plug in through defined interfaces (CRI, CNI, CSI), so Kubernetes itself stays focused on the orchestration model rather than any single environment.
When to use it
- You run more than a handful of containers and need scheduling, self-healing, and rollouts without scripting them by hand.
- You want a declarative API plus controllers so the system converges to a target state on its own.
- You need a portable substrate that works the same across clouds and on-premises through pluggable interfaces.
- You want to extend the platform with custom resources and controllers rather than fork it.
It is overkill for a single container on one host, or for a small static workload where a process manager or a managed serverless runtime would be simpler to operate.
In this deep-dive
- History: origin, milestones, and why it exists.
- Architecture: components and how requests flow.
- Adoption & Ecosystem: who runs it and what surrounds it.
- Internals: the code paths that matter, read from source.
- Getting Started: install and a first working setup.
Sources
- kubernetes/kubernetes (master, pinned
8c64324b), accessed 2026-06-22. - CNCF Projects: Kubernetes, accessed 2026-06-22.
- IBM: The History of Kubernetes, accessed 2026-06-22.
- Google Cloud: The Kubernetes origin story, accessed 2026-06-22.
- Wikipedia: Kubernetes, accessed 2026-06-22.
- Kubernetes case study: Spotify, accessed 2026-06-22.
- Kubernetes case study: adidas, accessed 2026-06-22.