Kubernetes Cluster Architecture
Kubernetes (often abbreviated K8s) is an open-source container orchestration engine originally designed by Google (Borg) to automate deploying, scaling, healing, and managing containerized applications…
Lesson 8 of 26 · Module: Kubernetes
22 min read · Source notes — The Kubernetes Course 2025
Kubernetes (often abbreviated K8s) is an open-source container orchestration engine originally designed by Google (Borg) to automate deploying, scaling, healing, and managing containerized applications across clusters of servers.

Instructor explaining the distinction between Control Plane brain components and Worker Node runners.
1. The Control Plane (Master Nodes)
The Control Plane acts as the cluster brain, maintaining desired state and scheduling workloads:
- kube-apiserver: The gateway to the cluster. All internal components and users (via
kubectl) communicate solely through this REST API. It validates and configures data for pods, services, and deployments. - etcd: Highly available, distributed key-value database that stores the entire cluster state, configuration, and secrets. It is the single source of truth for the entire cluster.
- kube-scheduler: Watches for newly created Pods with no assigned node and selects the optimal worker node based on resource requests, taints/tolerations, node affinity, and anti-affinity rules.
- kube-controller-manager: Runs controller loops that reconcile current state with desired state (Node Lifecycle Controller, ReplicaSet Controller, EndpointSlice Controller, ServiceAccount Controller).

Detailed walkthrough of how kube-scheduler evaluates filtering and scoring algorithms across candidate worker nodes.
2. Worker Node Components
Worker nodes execute the containerized applications:
- kubelet: An agent that runs on every node in the cluster. It receives PodSpecs from the API server and ensures that the containers described in those PodSpecs are running and healthy.
- kube-proxy: Network proxy that maintains network routing rules on each node (via iptables or IPVS), enabling Service abstraction and load balancing across pod IPs.
- Container Runtime Interface (CRI): The software responsible for pulling images and running containers (e.g., containerd, CRI-O).
![]()
How Kubelet interfaces with OCI compliant runtimes via gRPC CRI specifications.
3. The Standard Kubernetes Interfaces
| Interface | Full Name | Role in Kubernetes | Leading Implementations |
|---|---|---|---|
| CRI | Container Runtime Interface | Starts, stops, and isolates container runtimes | containerd, CRI-O |
| CNI | Container Network Interface | Assigns IP addresses to pods and enables cross-node pod-to-pod routing | Calico, Flannel, Cilium (eBPF), AWS VPC CNI |
| CSI | Container Storage Interface | Attaches external cloud disks and network block storage to pods | AWS EBS CSI, GCP Persistent Disk CSI, Ceph, Longhorn |

Internal cluster DNS lookups resolving service names like my-service.my-namespace.svc.cluster.local .
Keep going: ← Lesson 7 · Lesson 9 → · Module overview · Track it in the Self Guide
Finished this one?
Part of Self Guide · Stage 4: Kubernetes. Progress is saved in this browser.


