| Term | Definition |
| Automated bin packing |
Increases resource utilization and cost savings using a mix of critical and best-effort workloads. |
| Batch execution |
Manages batch and continuous integration workloads and automatically replaces failed containers, if configured. |
| Cloud Controller Manager |
A Kubernetes control plane component that embeds cloud-specific control logic. The cloud controller manager lets you link your cluster into your cloud provider's API, and separates out the components that interact with that cloud platform from components that only interact with your cluster. |
| Cluster |
A set of worker machines, called nodes, that run containerized applications. Every cluster has at least one worker node. |
| Container Orchestration |
Container orchestration is a process that automates the container lifecycle of containerized applications. |
| Container Runtime |
The container runtime is the software that is responsible for running containers. |
| Control Loop |
A non-terminating loop that regulates the state of a system. A thermostat is an example of a control loop. |
| Control plane |
The container orchestration layer that exposes the API and interfaces to define, deploy, and manage the lifecycle of containers. |
| Controller |
In Kubernetes, controllers are control loops that watch the state of your cluster, then make or request changes where needed. Each controller tries to move the current cluster state closer to the desired state. |
| Data (Worker) Plane |
The layer that provides capacity such as CPU, memory, network, and storage so that the containers can run and connect to a network. |
| DaemonSet |
Ensures a copy of a Pod is running across a set of nodes in a cluster. |
| Declarative Management |
A desired state that can be expressed (for example, the number of replicas of a specific application),and Kubernetes will actively work to ensure that the observed state matches the desired state. |
| Deployment |
An object that provides updates for both Pods and ReplicaSets. Deployments run multiple replicas of an application by creating ReplicaSets and offering additional management capabilities on top of those ReplicaSets. In addition, deployments are suitable for stateless applications. |
| Designed for extensibility |
Adds features to your cluster without adding or modifying source code. |
| Docker Swarm |
automates the deployment of containerized applications but was designed specifically to work with Docker Engine and other Docker tools making it a popular choice for teams already working in Docker environments. |
| Ecosystem |
A composition of services, support and tools that are widely available. The Kubernetes ecosystem is a large, rapidly growing ecosystem where its services, support, and tools are widely available. |
| etcd |
A highly available key value store that contains all the cluster data. For any deployment, the deployment configuration is stored in etcd. It is the source of truth for the state in a Kubernetes cluster, and the system works to bring the cluster state into line with what is stored in etcd. |
| Eviction |
Process of terminating one or more Pods on Nodes. |
| Imperative commands |
Create, update, and delete live objects directly. |
| Imperative Management |
Defining steps and actions to get to a desired state. |
| Ingress |
An API object that manages external access to the services in a cluster, typically HTTP. |
| IPv4/IPv6 dual stack |
Assigns both IPv4 and IPv6 addresses to Pods and Services. |
| Job |
A finite or batch task that runs to completion. |
| Kubectl |
Also known as kubectl Command line tool for communicating with a Kubernetes cluster's control plane, using the Kubernetes API. |
| Kubelet |
The kubelet is the primary "node agent" that runs on each node. The kubelet takes a set of PodSpecs (a YAML or JSON object that describes a pod) provided primarily through the apiserver and ensures that the containers described in those PodSpecs are running and healthy. The kubelet doesn't manage containers which were not created by Kubernetes. |
| Kubernetes |
is the de facto open-source platform standard for container orchestration. It was developed by Google and is maintained by the Cloud Native Computing Foundation (CNCF). Kubernetes automates container management tasks, like deployment, storage provisioning, load balancing and scaling, service discovery, and fixing failed containers. Its open-source toolset and wide array of functionalities are very attractive to leading cloud providers, who both support it, and in some cases, also offer fully managed Kubernetes services. |
| Kubernetes API |
The application that serves Kubernetes functionality through a RESTful interface and stores the state of the cluster. |
| Kubernetes API Server |
The Kubernetes API server validates and configures data for the api objects which include pods, services, replication controllers, and others. The API Server services REST operations and provides the frontend to the cluster's shared state through which all other components interact. |
| Kubernetes Controller Manager |
Runs all the controller processes that monitor the cluster state and ensures that the actual state of a cluster matches the desired state. Examples of controllers that ship with Kubernetes are the replication controller, endpoints controller, namespace controller, and service accounts controller. |
| Kubernetes Cloud Controller Manager |
A Kubernetes control plane component that embeds cloud-specific control logic. The cloud controller manager lets you link your cluster into your cloud provider's API, and separates out the components that interact with that cloud platform from components that only interact with your cluster. |
| Kubernetes Proxy |
A network proxy that runs on each node in a cluster. This proxy maintains network rules that allow communication to Pods running on nodes—in other words, communication to workloads running on the cluster. The user must create a service with the apiserver API to configure the proxy. |
| kube-scheduler |
Control plane component that watches for newly created Pods with no assigned node, and selects a node for them to run on. |
| Label Selector |
Allows users to filter a list of resources based on labels. |
| Labels |
Tags objects with identifying attributes that are meaningful and relevant to users. |
| Load balancing |
Balances traffic across Pods for better performance and high availability. |
| Marathon |
is an Apache Mesos framework. Apache Mesos is an open-source cluster manager developed by UC Berkeley. It lets users scale container infrastructure through the automaton of most management and monitoring tasks. |
| Namespace |
An abstraction used by Kubernetes to support isolation of groups of resources within a single cluster. |
| Node |
The worker machine in a Kubernetes cluster. User applications are run on nodes. Nodes can be virtual or physical machines. Each node is managed by the control plane and is able to run Pods. |
| Nomad |
(Hashicorp) is a free and open-source cluster management and scheduling tool that supports Docker and other applications on all major operating systems across all infrastructure, whether on-premises or in the cloud. This flexibility lets teams work with any type and level of workload. |
| Object |
An entity in the Kubernetes system. The Kubernetes API uses these entities to represent the state of your cluster. |
| Persistence |
Ensures that an object exists in the system, until the object is modified or removed. |
| Preemption |
Logic in Kubernetes helps a pending Pod to find a suitable Node by evicting low priority Pods existing on that Node. |
| Self-healing |
Restarts, replaces, reschedules, and kills failing or unresponsive containers. |
| Service |
An abstract way to expose an application running on a set of Pods as a network service. |
| Service Discovery |
Discovers Pods using their IP addresses or a single DNS name. |
| StatefulSet |
Manages the deployment and scaling of a set of Pods, and provides guarantees about the ordering and uniqueness of these Pods. |
| Storage |
A data store that supports persistent and temporary storage for Pods. |
| Storage Orchestration |
Automatically mounts your chosen storage system whether from local storage, network storage, or public cloud. |
| Pod |
The smallest and simplest Kubernetes object. Represents a process running in a cluster; it also represents a single instance of an application running in a cluster. Usually, a Pod wraps a single container but, in some cases encapsulates multiple tightly coupled containers that share resources. |
| Proxy |
In computing, a proxy is a server that acts as an intermediary for a remote service. |
| ReplicaSet |
A ReplicaSet (aims to) maintain a set of replica Pods running at any given time. |
| Workload |
A workload is an application running on Kubernetes. |