Kubernetes Tutorial
Learn Kubernetes from scratch: architecture, Pods, Deployments, Services, ConfigMaps, Secrets, storage, namespaces, resource management, Helm, and monitoring — with hands-on kubectl examples and quizzes.
40 lessons in this tutorial
Introduction to Kubernetes
Learn what Kubernetes is, why it exists, and how it solves container orchestration at scale with real-world examples.
Kubernetes Architecture
Understand the control plane, worker nodes, and the end-to-end request flow that turns a kubectl command into a running pod.
Installing Kubernetes
Compare local and managed Kubernetes options so you can choose the right environment for learning, testing, or production.
Installing Kubernetes with Minikube
Set up Minikube on macOS, Linux, or Windows and learn the core commands for starting, inspecting, and stopping your local cluster.
Installing Kubernetes with kind
Use kind to spin up single-node and multi-node Kubernetes clusters inside Docker for fast testing and learning.
Installing kubectl
Install kubectl on macOS, Linux, or Windows, verify it works, and understand how kubeconfig connects the CLI to a cluster.
kubectl Basics
Learn how kubectl fits into Kubernetes workflows and when to use imperative commands versus declarative manifests.
kubectl get and describe
Inspect pods, nodes, deployments, and services with kubectl get and use describe output to understand object behavior and events.
kubectl apply and delete
Create, update, compare, and remove Kubernetes resources using both declarative manifests and imperative helper commands.
kubectl exec, logs, and port-forward
Debug running containers, stream logs, inspect previous crashes, and forward local ports into the cluster.
kubectl contexts and namespaces
Understand kubeconfig structure, switch safely between clusters, and scope kubectl commands with namespaces.
Kubernetes Pods
Understand what a Pod is, why Kubernetes schedules pods instead of raw containers, and how containers share networking and storage inside a pod.
Kubernetes Pod Manifest
Learn the anatomy of Pod YAML and understand the purpose of apiVersion, kind, metadata, labels, annotations, and the spec section.
Kubernetes Pod Lifecycle
Understand pod phases, container states, restart policies, and what Kubernetes does when pods or nodes fail.
Multi-container Pods
Learn when multiple containers should share a pod, including sidecar, ambassador, adapter, and init container patterns.
Kubernetes Probes
Use liveness, readiness, and startup probes to help Kubernetes know when your containers are healthy and ready for traffic.
Kubernetes Deployments
Learn why Deployments are the standard way to run stateless applications and how they manage ReplicaSets and pods.
Creating Kubernetes Deployments
Write a Deployment manifest, apply it, inspect rollout status, scale replicas, and understand selector mechanics.
Kubernetes Rolling Updates
Learn how Deployments replace old pods gradually, what maxSurge and maxUnavailable do, and how old ReplicaSets support safe transitions.
Kubernetes Rollbacks
Inspect Deployment revision history, undo rollouts, annotate change causes, and pause or resume updates safely.
Kubernetes Services
Understand why Services exist, how selectors connect them to pods, and how stable networking hides pod churn.
Kubernetes Service: ClusterIP
Learn the default internal Service type, when to use it, and how DNS and endpoints make in-cluster communication reliable.
Kubernetes Service: NodePort
Expose a Service on a fixed port across every node and understand how traffic flows from outside the cluster to pods.
Kubernetes Service: LoadBalancer
Learn how LoadBalancer Services provision cloud load balancers, what EXTERNAL-IP means, and when they are a better fit than NodePort.
Kubernetes Ingress
Route HTTP and HTTPS traffic into your cluster with Ingress rules, controllers, TLS termination, and host or path based routing.
ConfigMaps and Secrets
Learn why configuration should live outside images and how ConfigMaps and Secrets help separate code from runtime settings.
Kubernetes ConfigMaps
Create ConfigMaps from literals, files, or YAML and use them as environment variables or mounted configuration files.
Kubernetes Secrets
Store passwords, tokens, image pull credentials, and TLS material with Kubernetes Secrets while understanding their security limits.
Kubernetes Storage
Compare ephemeral and persistent storage options and understand how Kubernetes separates application pods from durable data.
Persistent Volumes and PersistentVolumeClaims
Understand the PV and PVC model, access modes, reclaim policies, and how a pod mounts durable storage through a claim.
Kubernetes StorageClasses
Use StorageClasses for dynamic provisioning and learn how provisioners, reclaim policies, and volume binding modes affect storage behavior.
Kubernetes Namespaces
Organize cluster resources with namespaces, understand built-in namespaces, and apply quotas and limits for multi-team environments.
Kubernetes Resource Management
Learn why CPU and memory requests and limits matter before diving into quotas, QoS classes, and autoscaling.
Kubernetes Requests and Limits
Set CPU and memory requests and limits, understand throttling and OOM kills, and learn how QoS classes affect pod behavior.
Horizontal Pod Autoscaler
Scale Deployments automatically based on CPU or memory metrics and understand how HPA works with metrics-server.
Helm for Kubernetes
Understand Helm charts, releases, and repositories so you can package and install Kubernetes applications more efficiently.
Installing and Using Helm
Install Helm on macOS, Linux, or Windows and learn the basic commands for repositories, releases, and uninstalling charts.
Understanding Helm Charts
Explore chart structure, template syntax, built-in objects, and commands that help you render and lint Helm templates.
Helm Values, Upgrades, and Rollbacks
Override chart values, understand values precedence, and manage release upgrades and rollbacks safely with Helm.
Kubernetes Monitoring
Build a mental model for observing cluster health with metrics-server, Prometheus, Grafana, logging stacks, and alerting components.