Kubernetes automates the running of containerised applications: it decides which machine each container runs on, restarts ones that fail, scales them up and down with demand, and reroutes traffic as they move. It turns a fleet of servers into a single pool of capacity that applications are scheduled onto.
It is genuinely powerful and genuinely complex, and that complexity is the main thing to be honest about. For a large system with many services and real scale, Kubernetes earns its keep. For a small application, it is often more operational overhead than the problem warrants — and knowing which case you are in is worth more than the tool itself.
Related terms