“Kubernetes is a portable, extensible, open source platform for managing containerized workloads and services, that facilitates both declarative conﬁguration and automation.”
That statement might have been a good description when the project started. Today, the situation is very diﬀerent, although not necessarily in an obvious way. Kubernetes is not used to manage only containerized workloads and services. We can use Kubernetes to manage virtual machines, through projects like KubeVirt. We can use ORKA to manage macOS machines and applications. Kubernetes has been creating and managing external load balancers through Services for a while now. The list of the types of resources that Kubernetes manages is increasing, so we cannot say anymore that it is a platform for managing containerized workloads and services. So, if that’s not it, what is it? Or, to be more precise, what is the main feature Kubernetes gives us?
Kubernetes is not used to manage only containerized workloads and services. Kubernetes is all about the API and its ability to receive events and to have controllers that listen to those events.