Kubernetes

Kubernetes is a software system that allows one to easily deploy and manage containerised application on top of it. Its aim is to provide best possible utilisation of your hardware (metal and virtual) resources while still maintaining complete isolation of hosted applications.

Containers

When an application comprises a handful of large components only, it's completely acceptable to give a dedicated virtual machine (VM) to each component and isolate their environments by giving each their own operating system instance.