Kubernetes

Resource Plane
Cluster Management
Source
Open
What is Kubernetes?
Kubernetes, or K8s, is an open source system for automating the deployment, scaling, and management of containerized applications. It helps teams run containerized workloads in logical units for easier management and discovery.

Profile

Kubernetes is an open-source container orchestration platform that automates deployment, scaling, and management of containerized workloads across distributed infrastructure. Originally developed at Google and released publicly in 2014, it has evolved into the de facto standard for container orchestration, now maintained by the Cloud Native Computing Foundation with contributions from a worldwide community. The platform employs a declarative model where users define desired application state, and Kubernetes automatically reconciles reality with specifications, eliminating manual container management complexity. Licensed under Apache License 2.0, Kubernetes provides portable, extensible infrastructure that abstracts compute, networking, and storage details while maintaining continuous enforcement of desired state across on-premises datacenters, public clouds, and edge environments.

Focus

Kubernetes addresses the operational challenge of managing containerized applications at scale across clusters of machines. While containers solve dependency isolation and portability through standardized packaging, Kubernetes provides standardized orchestration automation including automatic recovery from failures, horizontal scaling based on demand, and consistent deployment across heterogeneous infrastructure. The platform eliminates manual scaling operations, provides self-healing mechanisms that restart failed containers without human intervention, and abstracts infrastructure details to reduce vendor lock-in. Platform engineers, DevOps teams, and site reliability engineers use Kubernetes to build sophisticated internal developer platforms, implement continuous deployment pipelines, and manage diverse workloads including stateless applications, databases, machine learning pipelines, and high-performance computing tasks across hybrid and multicloud environments.

Background

Kubernetes originated from over fifteen years of Google's experience running production workloads at massive scale, incorporating lessons learned from internal systems managing hundreds of thousands of machines. Google released Kubernetes as open source in June 2014 and subsequently collaborated with the Linux Foundation to establish the Cloud Native Computing Foundation in 2015, offering Kubernetes as the seed technology. The CNCF accepted Kubernetes at Incubating maturity level in March 2016 and graduated it to the highest project status in March 2018. The platform is maintained through vendor-neutral governance with a seven-member Steering Committee and contributions from diverse organizations. Development remains active with regular releases following a disciplined cycle, and the project maintains transparent decision-making through public Steering Committee meetings and open issue tracking.

Main features

Declarative configuration and automated reconciliation

Kubernetes operates through a declarative, control-loop-based architecture where administrators specify desired cluster state in YAML configuration files, and the platform continuously monitors actual state to automatically correct deviations. Rather than executing imperative step-by-step instructions, users declare resource requirements, replica counts, networking policies, and scaling rules that remain identical across development, testing, and production environments. The kube-controller-manager runs controllers implementing Kubernetes API behavior, maintaining desired state by examining pods not yet bound to nodes and assigning them based on resource requirements and scheduling constraints. This paradigm shift from imperative to declarative infrastructure management enables smaller teams to manage dramatically larger deployments with greater reliability and consistency.

Service discovery and intelligent load balancing

Kubernetes provides built-in service discovery allowing containers to locate other services using consistent DNS names rather than managing IP addresses manually. The platform automatically exposes containers using DNS names or IP addresses, and when traffic increases, distributes requests across healthy instances without manual load balancer configuration. The kube-proxy component maintains network rules on nodes implementing services and enabling communication between pods and external clients. Network policies provide declarative control over packet filtering, allowing administrators to define rules controlling traffic between pods or external networks. This abstraction eliminates the complexity of configuring external load balancers and service registries while maintaining deployment stability during traffic fluctuations.

Self-healing and automated rollout management

Kubernetes implements comprehensive self-healing capabilities that automatically restart containers that fail, replace containers unresponsive to health checks, and kill containers violating user-defined health probes. When nodes fail, the platform automatically reschedules workloads to healthy nodes ensuring continuous availability without human intervention. Automated rollouts enable controlled deployment of new application versions through rolling updates that gradually replace old replicas with new ones, maintaining minimum healthy replica counts throughout the process. If issues are detected, Kubernetes automatically reverts to previous versions. StatefulSets provide stable network identities, persistent storage, and ordered deployment for stateful workloads including databases and message queues, ensuring data consistency during updates and failures.

Abstract pattern of purple and black halftone dots forming a wave-like shape on a black background.