Lesson 1 ยท Deep dive - The local cluster (kind)¶
Get the code to run this lab
The commands on this page come from the repository, not the website. Clone it and enter this lesson's folder: git clone https://github.com/ld-singh/ai-factory-ops-lab && cd ai-factory-ops-lab/portfolio-lab/01-k8s-gpu-platform/kind. Browse this lesson on GitHub
Part of Lesson 1 - Kubernetes GPU Scheduling.
๐ฏ Objective: know what make phase1-up actually creates under the hood and why
the cluster shape was chosen.
Local Kubernetes cluster for simulation mode. make phase1-up calls this for you,
but you can create it directly:
๐ก Why this shape: the config is one control-plane node and
one real worker. The real worker hosts system pods (KWOK controller, CoreDNS). All
the "GPU nodes" are KWOK fake nodes added afterward - they exist only as API objects,
which is exactly the point: the scheduler treats nvidia.com/gpu as an opaque
integer either way.
From the repo root: make phase1-up is idempotent - it skips creation if the cluster
already exists (see ../scripts/setup-kind.sh).
๐ก kind vs k3d? Either works; kind is used here because KWOK examples and most scheduler-development workflows assume it. Swap freely if you prefer k3d.
โ
Checkpoint: kubectl get nodes shows a control-plane node and one worker
(the kwok-gpu-* nodes appear only after Step 1's later scripts run).
โก๏ธ Back to: Lesson 1, Step 1.