Free — no signup required

Slurm vs. Kubernetes: The Cage Match

2 min read

Choosing the Right Tool

Both Slurm and Kubernetes are cluster resource managers, but they were designed for fundamentally different problems. Using the wrong one creates unnecessary friction.

Feature Slurm Kubernetes
Primary goal Batch scheduling (run to completion) Service orchestration (keep running)
Topology awareness Excellent — rack, switch, NUMA-aware placement Basic — improving with topology manager, but harder to tune
Scheduling overhead Very low — minimal daemons, no container runtime High — kubelet, kube-proxy, CNI plugin, sidecars
GPU support Native GRES — first-class citizen Device plugin — works, but more layers of indirection
User interface CLI and shell scripts YAML manifests and API
Failure response Job fails (usually) — user must resubmit Pod restarts automatically elsewhere
Multi-node jobs Native — srun handles synchronization Requires operators (MPI Operator, Kubeflow)
Preemption Built-in, configurable by QoS Supported but complex to configure correctly
Best for Massive distributed training (LLMs, HPC simulations) Inference APIs, data apps, microservices

The Modern Architecture: Both

The most sophisticated AI infrastructure teams use both tools for what each does best:

Training Pipeline (Slurm)          Serving Pipeline (Kubernetes)
─────────────────────────          ─────────────────────────────
Raw data → Preprocessing           Model weights (from S3/NFS)
         → Distributed Training         ↓
         → Checkpoint to S3        Inference Service (vLLM/TGI)
                ↓                       ↓
         Model weights            Load Balancer
                                        ↓
                                  End Users / Applications

Slurm handles the "back of house" — the expensive, time-bounded, hardware-intensive training work. Kubernetes handles the "front of house" — the always-on, auto-scaling, user-facing inference services.

Interview Tip

If asked "Would you use Kubernetes for LLM training?", the nuanced answer is: "It depends on scale and team maturity. For small models or teams already invested in Kubernetes, tools like Kubeflow's MPI Operator or the Volcano scheduler make Kubernetes viable. For frontier-scale training (hundreds of GPUs, weeks of runtime), Slurm's lower overhead, superior topology awareness, and mature HPC ecosystem make it the better choice. Many organizations run both — Slurm for training, Kubernetes for inference."

This is one of 18 chapters

Every chapter is free — Kubernetes, Terraform, SRE, distributed systems, and more — with fast daily review built in.

Sign up free