Skip to content
Infrastructure

Kubernetes

Definition & meaning

Definition

Kubernetes (K8s) is an open-source container orchestration platform originally developed by Google for automating the deployment, scaling, and management of containerized applications. It groups containers into logical units called pods, manages networking and storage, and provides self-healing capabilities like automatic restarts and load balancing. Kubernetes is the industry standard for running containers at scale in production.

How It Works

Kubernetes (often abbreviated K8s) is an open-source container orchestration platform originally designed by Google and now maintained by the Cloud Native Computing Foundation (CNCF). It automates the deployment, scaling, and management of containerized applications across clusters of machines. The architecture consists of a control plane (API server, scheduler, controller manager, etcd key-value store) and worker nodes that run your containers. You declare the desired state of your application in YAML manifests — how many replicas, what container image, resource limits, health checks, networking rules — and Kubernetes continuously reconciles the actual state to match. Pods are the smallest deployable unit, containing one or more containers that share networking and storage. Deployments manage rolling updates and rollbacks. Services provide stable networking endpoints with load balancing. Ingress controllers route external traffic to services. Horizontal Pod Autoscalers automatically adjust replica counts based on CPU, memory, or custom metrics.

Why It Matters

Kubernetes is the industry standard for running containerized workloads at scale. It provides self-healing: if a container crashes, Kubernetes restarts it automatically. If a node fails, workloads are rescheduled to healthy nodes within seconds. Rolling deployments update applications with zero downtime by gradually replacing old pods with new ones. Autoscaling handles traffic spikes without manual intervention. The declarative model means your infrastructure is version-controlled, reviewable, and reproducible — true Infrastructure as Code. However, Kubernetes is complex and comes with significant operational overhead. For smaller teams, managed services or simpler alternatives may be more appropriate. We recommend Kubernetes when you have multiple services, need fine-grained scaling, or require multi-cloud portability.

Real-World Examples

Every major cloud provider offers managed Kubernetes: Amazon EKS, Google GKE, and Azure AKS handle control plane management so teams focus on workloads. Spotify, Airbnb, Pinterest, and Adidas run production workloads on Kubernetes. Helm is the package manager for Kubernetes, providing templated "charts" for common applications. ArgoCD and Flux implement GitOps workflows where Git repositories drive cluster state. Prometheus and Grafana provide monitoring and alerting. Istio and Linkerd add service mesh capabilities for observability, security, and traffic management. K3s is a lightweight Kubernetes distribution for edge computing and development. For local development, minikube, kind, and Docker Desktop provide single-node clusters. Operators extend Kubernetes to manage complex stateful applications like PostgreSQL (using CloudNativePG) and Redis.

Related Terms