How to Deliver a 128-GPU Cluster (K8s + Slurm Hybrid · 7 Steps)

TL;DR: A 128-GPU cluster is not "just buy A800". It's rack + cooling + orchestration + observability + storage + preemption + rollout — seven independent disciplines. Skip any one and you'll waste months in production stabilization.

Real numbers from a delivered AI research institute project (12 teams, 128 GPUs = A800 + 4090): - GPU utilization 32% → 71% - Training queue time -60% - 12 teams shifted from complaints to voluntary adoption

See Case 13 for the full case.

Step 1 · Rack + Power + Cooling

128 A800 ≈ 40-80 kW/rack. Standard data-center racks (10-15 kW) will overheat. Plan in-row cooling or liquid loop at rack level.

Step 2 · NVIDIA GPU Operator + Slurm alongside K8s

Two workloads, one GPU pool at driver layer:

Both talk to NVIDIA driver via GPU Operator — no double-installation of CUDA / drivers per node.

Alternative: pure K8s with training operator (Kubeflow) — works but training UX is degraded compared to Slurm for large teams.

Step 3 · Observability First (Wire Before Traffic)

Wire ALL of the above before production traffic. If observability arrives after prod, you're debugging blind in prod outages.

Step 4 · Storage Tiering

Storage IO is a frequent bottleneck, more than GPU.

Step 5 · Preemption Strategy

K8s online inference wins over Slurm training on peak.

Without preemption strategy: 30% wasted GPU at peak while training crowds out inference. Users escalate.

Step 6 · 168h Stability + 3× Peak Shock Load-Test

Not a one-off acceptance test on day of go-live.

Step 7 · Gradual Rollout

Do not switch all 12 teams overnight. First-week teething = if 12 teams hit at once, escalations flood the SRE inbox and rollback is politically hard.

Common Failure Modes


Next: 30-min cluster design alignment · Download portfolio PDF