Zero to AI Engineer

Module 48 of 54

Module 48: Kubernetes for AI

5 min read821 words
What you'll learn
Explain what containers and Kubernetes areUnderstand why AI serving uses themRecognize key Kubernetes concepts (simply)Know when you need it

"When one server isn't enough, Kubernetes runs and scales your AI services across a fleet of machines — automatically."

Level: Advanced · Time: ~11 min · Prerequisites: Module 42

Learning Objectives

By the end of this module, you will be able to:

  • Explain what containers and Kubernetes are
  • Understand why AI serving uses them
  • Recognize key Kubernetes concepts (simply)
  • Know when you need it

1. Containers First

A container (via Docker) packages your app with everything it needs — code, libraries, model — so it runs the same everywhere. It solves "works on my machine": if it runs in the container locally, it runs identically in production. This matters acutely for AI, where a model can be exquisitely sensitive to versions — a different CUDA driver, a point-release bump of PyTorch, or a mismatched tokenizer library can subtly change outputs or fail outright. A container pins the exact stack, so the model that passed your tests is byte-for-byte the one that runs in production.

Explain like I'm new: A container is a lunchbox with a complete meal inside. Wherever you take it, you get the same meal — no "the kitchen was missing an ingredient." For AI, the lunchbox holds your model and its exact dependencies.

2. Kubernetes: The Orchestra Conductor

Running one container is easy. Running hundreds — scaling with traffic, restarting crashes, updating without downtime — needs an orchestrator. Kubernetes (K8s) does this: it schedules containers across a cluster of machines and keeps them healthy. Picture a shipping yard: the containers are the boxes, and Kubernetes is the crane operator and dispatcher combined — deciding which machine has room, moving boxes off a failing truck, and adding lanes when the queue grows. You never place a box by hand; you state the goal and the system arranges the yard to match it.

Key idea: Kubernetes automates the ops of running services at scale: scaling (more copies when busy), self-healing (restart failures), and rolling updates (deploy with no downtime). You declare the desired state; K8s makes reality match it.

3. Why AI Uses It

AI serving (Module 42) has demanding needs Kubernetes handles well:

  • Autoscaling to handle traffic spikes
  • GPU scheduling across the cluster
  • Rolling model updates without downtime
  • Resilience if a machine dies

Tools like Kubeflow and KServe add ML-specific serving on top of Kubernetes.

Concept: The heart of Kubernetes is declarative control. You don't script "start a container, watch it, restart it if it dies." You declare "I want 5 healthy replicas" and Kubernetes continuously works to make reality match — replacing crashed ones, rescheduling around a dead machine — without you writing that recovery logic yourself.

Real-world use case: An image-recognition API sees 10× traffic during the day and near-zero at night. On Kubernetes, it automatically scales from 2 replicas to 20 at peak and back down overnight — handling load and saving money, with no one paged at 3 a.m.

4. Do You Need It?

Kubernetes is powerful but complex. For a small app, a single managed server or a cloud endpoint (Module 47) is simpler. Reach for K8s when you have scale, multiple services, or reliability requirements that justify the complexity. And you rarely run K8s from scratch: managed offerings — EKS, GKE, AKS — handle the fiddly control-plane operation for you, so you get the orchestration benefits without babysitting the cluster's internals. Even then, the concepts (pods, deployments, services) are yours to learn.

Common mistake: Adopting Kubernetes for a tiny project because it's "industry standard." Its complexity is a real cost. Start with the simplest thing that serves your traffic; graduate to K8s when scale genuinely demands it.

Try this: Before reaching for Kubernetes, ask three questions — do I run more than a couple of services, do I face real traffic swings, and must I survive a machine dying with no downtime? If the answer to all three is "no," a single managed endpoint will serve you better and cost far less of your attention.

✅ Checkpoint

  1. What problem do containers solve?
  2. Name two things Kubernetes automates.
  3. When is Kubernetes overkill?

Answers: 1) "Works on my machine" — they package the app with all dependencies to run identically everywhere. 2) e.g., autoscaling, self-healing, rolling updates, GPU scheduling. 3) For small projects where a single server or managed endpoint suffices.

Key Takeaway: Containers (Docker) package an app with all its dependencies to run identically everywhere; Kubernetes orchestrates many containers across a cluster — autoscaling, self-healing, and rolling updates. AI serving uses it for scale, GPU scheduling, and resilience (with Kubeflow/KServe on top). It's powerful but complex — adopt it only when scale justifies it.

Further Learning

Part of "Zero to AI Engineer." Simplified from the AI Engineer curriculum.