ELI5: Kubernetes

Explain it like I'm five: Kubernetes. Here are the big highlights that define the use case of Kubernetes.

Kubernetes is a complex topic. By its very design, the technology itself is very complex. And it's hard to fully understand and express its full value; partly because the value it provides differs from company to company. I'll try to keep it short and sweet with the major highlights that are common to all companies.

Resource Pooling

Kubernetes is a way to pool your resources together and manage them all from a single place. In other words, if you have 100 servers in a Kubernetes cluster, then you are not having to manage all the software on those servers; instead, you are only managing Kubernetes. There's a lot we could dig into here, especially when we start talking about managed Kubernetes clusters like Azure Kubernetes Service, but this is a huge win even if you are managing on-premises servers as well.

Hardware Abstraction (Hide Away)

Kubernetes is a way to abstract away your hardware details. Developers can simply ship a file with their code that tells Kubernetes, "I need x amount of CPU and y amount of memory to run this application."

Resiliency

Kubernetes is a way to build highly resilient services. It provides the ability to automatically scale services, detect if they are unhealthy, and replace them if necessary.

Resource Packing

Since Kubernetes treats your servers as a pool of resources, it has no problem packing workloads onto those servers and using them efficiently. This means more money in your pocket!

Lower Cost

If you are moving from physical servers to Kubernetes on-prem, then you will likely find that you don't need as many servers as you once thought. If you're in the Cloud, then a Managed Kubernetes solution is going to save you money by scaling in any time it doesn't need excess resources.

I hope this helps you on your journey. Happy Kuberneting!