What is Kubernetes used for?

Kubernetes is a container orchestration platform that automates the deployment, administration, and scalability of containerized applications. It maintains track of which ones are in the cloud, restarts orphaned ones, turns off the ones that aren’t in use, and automatically supplies resources like storage, RAM, and CPU as needed.

Kubernetes is Google’s open source system for managing Linux containers across private, public and hybrid cloud environments.

Kubernetes automates the deployment, scaling, maintenance, scheduling and operation of multiple application containers across clusters of nodes. Kubernetes contains tools for orchestration, service discovery and load balancing that can be used with Docker and Rocket containers. As needs change, a developer can move container workloads in Kubernetes to another cloud provider without changing the code.

Other core components of Kubernetes include:

  • Master: Runs the Kuberenetes API and controls the cluster.
  • Label: A key/value pair used for service discovery. A label tags the containers and links them together into groups.
  • Replication Controller: Ensures that the requested numbers of pods are running to user’s specifications. This is what scales containers horizontally, ensuring there are more or fewer containers to meet the overall application’s computing needs.
  • Service: An automatically configured load balancer and integrator that runs across the cluster.