Skip to main content

Getting Started with Kubernetes

Welcome to Kubernetes

Kubernetes (K8s) is an open-source container orchestration platform originally built by Google and now maintained by the CNCF. Where Docker Compose runs containers on a single machine, Kubernetes runs them across a cluster of machines — automatically deciding which node has capacity, restarting crashed containers, and rolling out updates without downtime.

Kubernetes is the industry standard for running containers at scale. Understanding it unlocks cloud-native architecture.

When Do You Need Kubernetes?

Kubernetes adds significant complexity. You don't need it if:

  • You're running a small app on a single server — Docker + PM2 or Docker Compose is enough
  • You're on a serverless path — Lambda + Fargate may be a better fit

You do need it when:

  • You have multiple services that need to scale independently
  • You want self-healing (automatic restart, rescheduling on node failure)
  • You need sophisticated deployment strategies (canary, blue-green)
  • You're working with a team that's already standardized on K8s

What You'll Learn

  • Architecture — control plane, worker nodes, etcd, and how they interact
  • Pods — the smallest deployable unit (one or more containers)
  • Deployments — declaring desired state and letting K8s maintain it
  • Services — exposing pods to network traffic within and outside the cluster
  • ConfigMaps and Secrets — managing configuration and sensitive data
  • Namespaces — isolating environments within a single cluster
  • kubectl — the CLI for interacting with any Kubernetes cluster
  • AWS EKS — running a managed Kubernetes cluster on AWS

Prerequisites

  • Strong understanding of Docker and containers
  • Comfort with the terminal and YAML files
  • A local K8s setup: Docker Desktop's built-in K8s or minikube