KLCP study materials
KLCP study resources

KLCP key terms

KLCP · Get comfortable with the vocabulary.

Pod

The smallest deployable unit in Kubernetes, representing one or more containers that share a network namespace, IP address, and storage volumes and are scheduled together on a single node.

Related: Node, Container Runtime, ReplicaSet
Node

A physical or virtual machine in a cluster that runs Pods, managed by the control plane and hosting a kubelet plus a container runtime.

Related: kubelet, Pod, Control Plane
Control Plane

The set of cluster components that make global decisions, such as scheduling and responding to events, including the API server, scheduler, controller manager, and datastore.

Related: kube-apiserver, etcd, kube-scheduler
kube-apiserver

The front-end component of the control plane that exposes the Kubernetes HTTP API, validating and processing all requests and persisting state to the backing datastore.

Related: etcd, Control Plane, kubectl
etcd

A distributed key-value store used as Kubernetes' backing store for all cluster data, holding the desired and observed state of every object.

Related: kube-apiserver, Control Plane
kube-scheduler

The control plane component that assigns newly created Pods to Nodes by evaluating resource requests, constraints, affinities, and taints against available capacity.

Related: Taint and Toleration, Node Affinity, Pod
kubelet

The node agent that ensures containers described in PodSpecs are running and healthy, communicating with the API server and the local container runtime.

Related: Node, Container Runtime, Liveness Probe
Container Runtime

The software on each node that pulls images and actually starts, stops, and manages container processes, invoked by the kubelet through a standard interface.

Related: kubelet, Container Image, Pod
kubectl

The command-line client used to run commands against a Kubernetes cluster's API server, creating, inspecting, and modifying resources declaratively or imperatively.

Related: kube-apiserver, Namespace, Declarative Configuration
Namespace

A virtual partition within a cluster that scopes names and resource quotas, letting multiple teams or environments share one cluster with logical isolation.

Related: ResourceQuota, kubectl, Role-Based Access Control
Container Image

An immutable, layered filesystem bundle plus metadata that packages an application and its dependencies so a container runtime can instantiate it reproducibly.

Related: Container Runtime, Registry, Pod
Registry

A remote repository service that stores and distributes container images by name and tag, from which nodes pull images when starting containers.

Related: Container Image, Image Pull Policy
ConfigMap

An API object holding non-confidential configuration data as key-value pairs that Pods can consume as environment variables or mounted files, decoupling config from images.

Related: Secret, Volume, Pod
Secret

An API object for storing sensitive data such as passwords or tokens, which Pods mount or inject while access is restricted via RBAC and optional encryption at rest.

Related: ConfigMap, Role-Based Access Control, Volume
Deployment

A higher-level controller that manages ReplicaSets to provide declarative rolling updates and rollbacks for stateless Pods, ensuring a desired replica count is running.

Related: ReplicaSet, Rolling Update, Pod
ReplicaSet

A controller that maintains a stable set of identical running Pods, creating or deleting replicas to match a declared count and typically managed by a Deployment.

Related: Deployment, Pod, Label Selector
StatefulSet

A workload controller for stateful applications that provides stable Pod identities, ordered deployment and scaling, and persistent storage bound to each replica.

Related: PersistentVolumeClaim, Deployment, Pod
DaemonSet

A controller that ensures a copy of a Pod runs on every eligible node, commonly used for log shippers, monitoring agents, or node-level networking components.

Related: Node, Pod, Taint and Toleration
Job

A controller that runs Pods until a specified number complete successfully, suited to batch or one-off tasks rather than long-running services.

Related: CronJob, Pod
CronJob

A controller that creates Jobs on a recurring schedule expressed in cron syntax, useful for periodic batch processing or maintenance tasks.

Related: Job
Service

An abstraction that exposes a stable virtual IP and DNS name for a set of Pods selected by labels, load-balancing traffic across healthy endpoints.

Related: Label Selector, Ingress, Endpoint
Ingress

An API object defining HTTP and HTTPS routing rules from outside the cluster to internal Services, typically implemented by an Ingress controller.

Related: Service, Ingress Controller, Gateway API
Ingress Controller

A running component that watches Ingress resources and configures an actual proxy or load balancer to route external traffic according to those rules.

Related: Ingress, Service
Gateway API

A set of role-oriented, extensible Kubernetes API resources for modeling inbound and service-to-service traffic routing, positioned as a successor to Ingress.

Related: Ingress, Service
Label Selector

A query expression matching objects by their key-value labels, used by controllers and Services to determine which resources they manage or route traffic to.

Related: Service, ReplicaSet, Pod
Liveness Probe

A periodic health check that tells the kubelet whether a container is still functioning; repeated failures cause the container to be restarted.

Related: Readiness Probe, kubelet
Readiness Probe

A health check indicating whether a container is ready to receive traffic; failing Pods are removed from Service endpoints without being restarted.

Related: Liveness Probe, Service, Endpoint
Resource Requests and Limits

Per-container declarations of the CPU and memory a container is guaranteed (requests) and the maximum it may consume (limits), guiding scheduling and enforcement.

Related: kube-scheduler, ResourceQuota, LimitRange
Horizontal Pod Autoscaler

A controller that automatically adjusts the number of Pod replicas for a workload based on observed metrics such as CPU utilization or custom signals.

Related: Deployment, Resource Requests and Limits
PersistentVolume

A cluster-level storage resource representing a piece of provisioned storage with a lifecycle independent of any Pod that uses it.

Related: PersistentVolumeClaim, StorageClass, Volume
PersistentVolumeClaim

A namespaced request for storage with a size and access mode that binds to a matching PersistentVolume, letting Pods use durable storage without knowing its details.

Related: PersistentVolume, StorageClass, StatefulSet
StorageClass

An API object describing a class of storage and its provisioner, enabling dynamic creation of PersistentVolumes when claims are made.

Related: PersistentVolume, PersistentVolumeClaim
Volume

A directory made available to containers in a Pod, backed by storage that can outlive individual container restarts and be shared among containers in the Pod.

Related: PersistentVolumeClaim, ConfigMap, Pod
Taint and Toleration

A mechanism where a node marks itself to repel Pods (taint) unless those Pods declare matching tolerations, controlling which workloads may schedule there.

Related: kube-scheduler, Node Affinity, DaemonSet
Node Affinity

Scheduling rules attached to a Pod that constrain which nodes it may run on based on node labels, either as required or preferred conditions.

Related: Taint and Toleration, kube-scheduler
Role-Based Access Control

An authorization system where Roles and ClusterRoles define permitted actions on resources, and bindings grant those permissions to users, groups, or service accounts.

Related: Service Account, Namespace, Secret
Service Account

An identity for processes running in Pods, used to authenticate to the API server and to receive permissions through role bindings.

Related: Role-Based Access Control, Pod
Rolling Update

A deployment strategy that gradually replaces old Pods with new ones while maintaining availability, allowing progress to be paused or rolled back.

Related: Deployment, ReplicaSet
Declarative Configuration

An approach where you submit the desired state of resources as manifests and controllers continuously reconcile actual state toward it, rather than issuing step-by-step commands.

Related: Control Plane, kubectl, GitOps
GitOps

An operating model where the desired cluster and application state lives in a Git repository, and an automated agent continuously reconciles the cluster to match it.

Related: Declarative Configuration, Continuous Delivery
Continuous Delivery

A practice where every validated change is automatically built and made deployable to production, with releases gated by automated tests and approval rather than manual assembly.

Related: GitOps, Rolling Update
Helm

A package manager for Kubernetes that templates and versions groups of manifests as charts, simplifying installation and upgrades of complex applications.

Related: Declarative Configuration, Custom Resource Definition
Custom Resource Definition

An API extension that registers a new resource type in the cluster, letting operators and controllers manage custom objects alongside built-in Kubernetes resources.

Related: Operator, Control Plane
Operator

A controller pattern that encodes operational knowledge for an application in software, watching custom resources and automating tasks like deployment, scaling, backups, and recovery.

Related: Custom Resource Definition, Control Plane
Sidecar

A helper container running alongside the main application container in the same Pod, sharing its network and storage to add capabilities such as proxying, logging, or metrics.

Related: Pod, Service Mesh
Service Mesh

An infrastructure layer that manages service-to-service communication using proxies, providing traffic routing, retries, mutual TLS, and observability without changing application code.

Related: Sidecar, Service
Twelve-Factor App

A set of principles for building portable cloud-native applications, emphasizing configuration in the environment, stateless processes, disposability, and clear dependency declarations.

Related: ConfigMap, Declarative Configuration