BM: Baca dalam Bahasa Melayu
World K1: The Food Court
Want 3, See 2
You will learn: how Kubernetes heals itself.
Checked with Kubernetes 1.37 on 31 Oct 2026
The problem
kind-dev namespace defaultYour app’s server died at 3 a.m. Everyone was asleep. Who fixes it?
Watch
The manager's board says Want 3: the order for shop asks for 3 trays.
Want 3. See 3. All good.
dev-workerOpen- shop·d6b6z
- shop·zbn9j
dev-worker2Open- shop·gnjxm
You tell Kubernetes what you want: 3 copies, always. This is the desired state: What is written on the order board. Kubernetes keeps chasing it..
Watch
kind-dev namespace defaultA controller: A manager who checks again and again: want 3, see 2, make 1 more. checks again and again. Want 3. See 3. All good.
Predict
A whole stall closes, and one tray is lost. What happens next?
Pick one answer.
Watch
kind-dev namespace defaultWant 3. See 2. Make 1 more. That is the whole trick.
Try it
Tap “delete” on any pod. Watch what Kubernetes does.
The board shows Want 3, See 3. Delete a pod: See 2, then Make 1 more. The Gaps fixed counter goes up.
Want 3. See 3. All good.
dev-workerOpen- shop·d6b6z
- shop·zbn9j
dev-worker2Open- shop·gnjxm
Hint
Press “Delete a pod” twice. Watch the Do box and the Gaps fixed counter.Try it
Now change the order. Type kubectl scale deployment shop --replicas=5.
kind-dev namespace defaultWant 3. See 3. All good.
dev-control-planeOpenManagerNo trays here.
dev-workerOpen- shop·d6b6z
- shop·zbn9j
dev-worker2Open- shop·gnjxm
Hint
scale changes the number on the order board. The controller does the rest.Check
Tap the new pod.
0 of 1 found
The new pod has a new name. Kubernetes replaces pods; it does not repair them.
Hint
Look at the AGE column. Which tray is the youngest?You did it!
You can now explain how Kubernetes heals itself.
Go deeper (optional)
This loop is called reconciliation: The loop that keeps fixing what is real until it matches the order board.. If only a container crashes, the kubelet restarts it in the same pod. Watch the RESTARTS column. When a node dies, Kubernetes waits about 5 minutes. Then it replaces the pods.
kind-dev namespace defaultReal mission
kubectl create deployment shop --image=nginx:1.29-alpine --replicas=3kubectl get podskubectl delete pod <a shop pod name>kubectl get pods
0 of 4 steps done · Your ticks are saved.
Bahasa Melayu
Server aplikasi anda mati pukul 3 pagi. Semua orang tidur. Siapa nak baiki?
Anda beritahu Kubernetes apa yang anda mahu: 3 salinan, sentiasa. Ini dipanggil desired state.
Controller (pengawal) periksa berulang kali. Mahu 3. Nampak 3. Semua okey.
Satu gerai tutup, dan satu dulang hilang. Apa jadi lepas ni?
Mahu 3. Nampak 2. Buat 1 lagi. Itu sahaja rahsianya.
Tekan “delete” pada mana-mana pod (dulang). Lihat apa Kubernetes buat.
Sekarang tukar pesanan. Taip kubectl scale deployment shop --replicas=5.
Pod baharu ada nama baharu. Kubernetes ganti pod, bukan baiki pod lama.
Kini anda boleh terangkan cara Kubernetes pulihkan dirinya.
You finished this before. Practice is always welcome!
Official docs: Kubernetes: controllers · Deployments · kubectl scale
You've learned for 25 minutes. A short break helps your brain.
Sprint done! Great focus. Stretch for a minute?