Kubernetes Components

Learning Kubernetes can be difficult. With all of the components in place it can be hard to remember what each one does.

What I find helpful is to relate it to real-world examples that make sense to me, like in my previous post about DotA, I can understand it in a way that makes sense to me in everyday life. For you, that might be saying "etcd is like a filing cabinet with all of the data stored inside" or a supervisor handing out tasks. Take this for example;

๐Ÿงฉ kube-apiserver

Purpose: Central hub for all Kubernetes commands and cluster interactions

Kubernetes Example: Handles kubectl apply, get, delete

Real-World Tech: REST API gateway (e.g. Stripe, GitHub)

Analogy: ๐Ÿงพ The front desk handling all requests

๐Ÿ“ etcd

Purpose: Stores all cluster configuration and state in key-value format

Kubernetes Example: Saves definitions for Deployments, Services, Secrets

Real-World Tech: Similar to Consul or ZooKeeper

Analogy: ๐Ÿ—„๏ธ A filing cabinet containing the entire blueprint of your cluster

๐ŸŽฏ kube-scheduler

Purpose: Assigns new pods to the best node based on resources

Kubernetes Example: Picks which node runs a pod needing 2 CPUs

Real-World Tech: Like Jenkins assigning agents to a build job

Analogy: ๐Ÿ•น๏ธ A manager finding the right worker for the task

๐Ÿง  kube-controller-manager

Purpose: Ensures the actual state matches the desired state

Kubernetes Example: Keeps 3 replicas running for a Deployment

Real-World Tech: Like an auto-scaling policy in AWS

Analogy: ๐Ÿงโ€โ™‚๏ธ A supervisor checking everything is in place

โ˜๏ธ cloud-controller-manager

Purpose: Talks to cloud APIs to provision resources

Kubernetes Example: Creates load balancers in GCP or AWS

Real-World Tech: Similar to Terraform or AWS CloudFormation

Analogy: ๐ŸŒ‰ A translator between Kubernetes and your cloud provider

๐Ÿงฑ kubelet

Purpose: Runs on each node to manage local pod lifecycle

Kubernetes Example: Starts containers, reports health to control plane

Real-World Tech: Like the Docker Daemon for Kubernetes

Analogy: โš™๏ธ The worker on the factory floor running jobs

๐Ÿšฆ kube-proxy

Purpose: Routes service traffic to the appropriate pod

Kubernetes Example: Handles traffic for ClusterIP and NodePort Services

Real-World Tech: Like NGINX or HAProxy load balancing

Analogy: ๐Ÿšง A traffic cop redirecting cars to the right destination

๐Ÿ”ง container runtime

Purpose: Downloads images and runs containers

Kubernetes Example: Executes your nginx, busybox, or app container

Real-World Tech: Docker, containerd, CRI-O

Analogy: ๐Ÿ”ฉ The engine that powers each pod

๐Ÿ“ก CoreDNS

Purpose: Internal DNS service for the cluster

Kubernetes Example: Resolves my-service.default.svc.cluster.local

Real-World Tech: Like internal DNS in a VPC

Analogy: โ˜Ž๏ธ A phonebook for services in the cluster

๐Ÿ”Œ CRI (Container Runtime Interface)

Purpose: Standard interface between K8s and container runtimes

Kubernetes Example: Lets K8s switch from Docker to containerd cleanly

Real-World Tech: Plugin architecture like CNI for networking

Analogy: ๐Ÿ”Œ A universal adapter for container engines

๐Ÿ“Š Metrics Server

Purpose: Collects CPU and memory usage of pods/nodes

Kubernetes Example: Enables autoscaling with HPA

Real-World Tech: Similar to Prometheus-lite

Analogy: ๐Ÿ“ˆ A fitness tracker for your cluster

๐Ÿ–ฅ๏ธ Kubernetes Dashboard

Purpose: Web UI for viewing and managing resources

Kubernetes Example: View deployments, logs, and metrics visually

Real-World Tech: Similar to the AWS Console

Analogy: ๐ŸŽ›๏ธ A control panel with buttons and graphs

๐Ÿ“ฆ Helm

Purpose: Package manager for Kubernetes applications

Kubernetes Example: Install apps like Grafana or Prometheus easily

Real-World Tech: Like apt, yum, or Homebrew for Linux/macOS

Analogy: ๐Ÿ›๏ธ An app store for your cluster

๐ŸŒ Ingress Controller

Purpose: Routes external HTTP(S) traffic into the cluster

Kubernetes Example: Routes myapp.com/api to the right service

Real-World Tech: NGINX, Traefik, HAProxy

Analogy: ๐Ÿ›Ž๏ธ A receptionist forwarding visitors to the right department

Next
Next

How Kubernetes works. DotA style