root-05-m00-kubernetes-mental-model — a new, full gold-standard-pattern front-door module for ROOT 05: what Kubernetes solves, the desired-state model, the control-plane/worker split, and Pods/Namespaces/labels through kubectl. Lesson, demonstration (watching a Pod get replaced after manual deletion), knowledge check, guided exercise (planning a Namespace layout), a real Lab (namespaces-basics), and a reflection — sequenced ahead of the existing bare kubectl-fluency lab bank. Co-Authored-By: Claude Sonnet 5 <[email protected]>
2.2 KiB
Launch Lab: Working with Namespaces
Time to apply the mental model for real — you'll create an actual isolated Namespace and deploy into it, in your own disposable Lab environment.
What you're doing
You'll create a Namespace (team-alpha) and deploy an application into it with a specific
replica count — directly applying the "isolated area within one cluster" idea from the guided
exercise, and the desired-state model from the lesson (once you declare replicas: 2, that
becomes the standing desired state for that Deployment, enforced continuously).
Before you start
Think back to the demonstration: once your Deployment exists with its desired replica count, Kubernetes will keep it there on its own. You don't need to "check back" and manually fix anything — if you want to prove this to yourself, try deleting one of your Pods after you've finished the task and watch what happens.
Your task in this Lab
Create the Namespace, then deploy the application inside it with the exact replica count
specified. Use kubectl get namespace and kubectl get deployment -n <namespace> to confirm
your work — the same verification pattern you'll use constantly throughout ROOT_.
This Lab has its own in-context hints if you get stuck. Try working from the lesson and guided exercise first — the commands you need are exactly the ones described there.
When you're done, return to this module to close out with a reflection on why this isolation matters beyond just "keeping things organized."
Instructor Notes
Classroom flow: This is most students' first real kubectl apply/create in ROOT_ beyond
whatever pilot exposure they've had — a good moment to circulate and check that basic
kubectl command syntax isn't the blocker (as opposed to the Namespace concept itself, which
the guided exercise should have already addressed).
Approximate timing: 10-15 minutes.
Common mistake to watch for: creating the Deployment in the DEFAULT namespace instead of
team-alpha (forgetting -n team-alpha or the namespace field in the manifest) — this is a
very common first mistake and a good real-world illustration of why Namespace isolation only
works if you're actually specifying it every time.