What Is Kubernetes? A Beginner's Explanation Without the Jargon
Kubernetes is a system for running containers across many machines: it starts them, restarts them when they crash, spreads them across servers, and rolls out new versions. What it actually does, the key terms (pods, nodes, deployments), and why most small apps don't need it.
Kubernetes (often written K8s) is software that runs and manages containers across a group of machines. You tell it what you want — "run 5 copies of my web app, and 2 of my worker" — and it makes that true, and keeps it true when things break.
It was created at Google, released as open source in 2014, and is now maintained by the Cloud Native Computing Foundation. It's the standard way large companies run containerised software.
The problem it solves
Say your app runs in a Docker container. On one server, that's easy: docker run and you're done. But what happens when:
- The server dies at 3 a.m.?
- Traffic spikes and you need ten copies instead of two?
- You want to deploy a new version without downtime?
- You have 40 services across 20 servers?
Kubernetes automates all of that. It's often called a container orchestrator.
What it does
- Scheduling: decides which machine each container runs on, based on available CPU and memory.
- Self-healing: restarts containers that crash, and moves them off machines that fail.
- Scaling: runs more or fewer copies, manually or based on load.
- Rolling updates: replaces old versions gradually. Failed readiness checks can stall the rollout; a standard Deployment doesn't automatically roll back. You or your deployment tooling must initiate the rollback. (Kubernetes Deployment docs, Zero-Downtime Deploys)
- Service discovery and load balancing: gives a group of containers one stable address and spreads traffic among them.
- Configuration and secrets: injects settings and credentials into containers.
The key terms
| Term | What it means |
|---|---|
| Cluster | The whole Kubernetes setup: a set of machines managed together |
| Node | One machine (physical or virtual) in the cluster |
| Pod | The smallest unit — one or more containers that run together |
| Deployment | "Keep N copies of this pod running, and update them this way" |
| Service | A stable network address for a group of pods |
| Ingress | Routes outside web traffic to the right service |
| kubectl | The command-line tool for talking to the cluster |
You describe what you want in YAML files, and Kubernetes continuously works to make reality match. (What Is YAML?)
Do you need it?
For most small apps, no. Kubernetes solves problems of scale and team size that a single app with a few hundred users doesn't have, and it brings its own complexity: networking, storage, upgrades, security policies, and the cost of the cluster itself. Managed versions (Amazon EKS, Google GKE, Azure AKS) take some of that away, but not all of it.
A single good server, or a simple platform, runs a surprising amount of traffic. Reach for Kubernetes when you genuinely have many services, many machines and a team to run it. (Do You Need Kubernetes?)
Kubernetes vs Docker
They're not competitors. Docker builds and runs containers. Kubernetes manages lots of containers across lots of machines. Kubernetes runs containers built with Docker (through a runtime like containerd). (containerd vs Docker)
The summary
- Kubernetes runs containers across many machines and keeps them healthy.
- It handles scheduling, restarts, scaling, rolling updates and networking.
- It's powerful and complex — most small apps don't need it yet.
EasySpawn gives a small app what it actually needs without a cluster: a persistent server with your app, database, HTTPS, backups and deploys, plus Claude Code to build it. See how it works or join the waitlist.
Related: Containers vs Virtual Machines · Horizontal vs Vertical Scaling · What Is a Load Balancer? · Monolith vs Microservices
Keep reading
What Is Docker? A Beginner's Explanation
Docker packages an app with everything it needs to run, so it works the same on any computer. What containers and images are, how they differ from virtual machines, why hosts and AI tools use them everywhere, and whether you need to learn Docker at all.
Containers vs Virtual Machines: The Difference, Simply Explained
Both let one physical computer act like many. A virtual machine pretends to be a whole computer; a container is an isolated group of processes sharing one operating system. How each works, the trade-offs in speed, size, and isolation, and when to use which.