What is Kubernetes?
Answer
Kubernetes (K8s) is an open-source container orchestration platform originally developed by Google (based on their internal Borg system) and donated to the CNCF (Cloud Native Computing Foundation) in 2014. It automates deploying, scaling, and managing containerized applications across a cluster of machines. Core capabilities: (1) Self-healing: automatically restarts failed containers, replaces containers on failed nodes, kills containers that don't respond to user-defined health checks; (2) Horizontal scaling: scale applications up/down with commands, UI, or automatically based on CPU/memory usage; (3) Automated rollouts and rollbacks: deploy changes gradually, monitor, and automatically rollback if problems occur; (4) Service discovery and load balancing: expose containers using DNS or IP, load balance across replicas; (5) Storage orchestration: automatically mount storage systems (local, cloud, NFS); (6) Secret and configuration management: store and manage sensitive information; (7) Bin packing: efficiently schedule containers onto nodes based on resource requirements. Key terms: cluster (master + worker nodes), node (machine running containers), pod (one or more containers), workload (deployment, statefulset, daemonset), service (network endpoint for pods). Kubernetes is the de facto standard for container orchestration, supported natively by all major cloud providers (EKS, GKE, AKS).