Kubernetes, often abbreviated as “K8s”, orchestrates containerized applications to run on a cluster of hosts. The K8s system automates the deployment and management of cloud native applications using on-premises infrastructure or public cloud platforms. It distributes application workloads across a Kubernetes cluster and automates dynamic container networking needs. Kubernetes also allocates storage and persistent volumes to running containers, provides automatic scaling, and works continuously to maintain the desired state of applications, providing resiliency.
See how enterprises are using Kubernetes to build, deploy and run modern applications at scale.
Kubernetes has many features that help orchestrate containers across multiple hosts, automate the management of K8s clusters, and maximize resource usage through better utilization of infrastructure. Important features include:
Containers encapsulate an application in a form that’s portable and easy to deploy. The Kubernetes architecture is designed to run containerized applications. A Kubernetes cluster consists of at least one control plane and at least one worker node (typically a physical or virtual server). The control plane has two main responsibilities. It exposes the Kubernetes API through the API server and manages the nodes that make up the cluster. The control plane makes decisions about cluster management and detects and responds to cluster events.
The smallest unit of execution for an application running in Kubernetes is the Kubernetes Pod, which consists of one or more containers. Kubernetes Pods run on worker nodes.
It’s important to know the names and functions of the major K8s components that are part of the control plane or that execute on Kubernetes nodes.
The control plane has four primary components used to control communications, manage nodes and keep track of the state of a Kubernetes cluster.
A K8s node has three major components:
Additional terms to be aware of include:
The Kubernetes platform has become popular because it provides a number of important advantages:
Container orchestration automates most of the tasks required to run containerized workloads and services, including the operations that are essential to the Kubernetes container lifecycle: provisioning, deployment, scaling, networking and load balancing.
Docker is a software platform used to create containerized applications. K8s automates the process of running containerized, cloud native applications created with Docker or other tools. Companies often use Docker and Kubernetes together.
Enterprise-ready Kubernetes Management
Get VMware Tanzu up and running for free in minutes on your local workstation or cloud
Build, deploy and manage apps on a Kubernetes Platform