Scheduler: Places containers according to resource requirements and metrics.
Serves as the front end of the Kubernetes control plane.
These nodes can either be physical computers or virtual machines, depending on the cluster. Kubernetes clusters are comprised of one master node and a number of worker nodes. Instead, they are able to share operating systems and run anywhere. Kubernetes containers are not restricted to a specific operating system, unlike virtual machines. Kubernetes clusters allow containers to run across multiple machines and environments: virtual, physical, cloud-based, and on-premises. In this way, Kubernetes clusters allow for applications to be more easily developed, moved and managed. They are more lightweight and flexible than virtual machines. Containerizing applications packages an app with its dependences and some necessary services. A Kubernetes cluster is a set of nodes that run containerized applications.