Files
rootnode-academy/content/root/root-05-kubernetes-foundations/m01-pods-and-kubectl-basics/00-lesson-kubectl-fluency.md
T
ced4568andClaude Sonnet 5 7f6e1857c0 feat(curriculum): Phase 6C module upgrades, security assessment bank, ROOT 11 orientation
Upgrades six PARTIAL modules to the gold-module standard (lesson/demonstration/
knowledge-check/guided-exercise/lab(s)/reflection), preserving every existing lab
activity_id and scenario_id: root-06-m03 (jobs/cronjobs/daemonsets), root-07-m04
(ingress/networkpolicy), root-07-m02 (configuration/secrets, converted in place
from a bare 5-lab bank), root-09-m02 (serviceaccounts/rbac), root-09-m03
(network/supply-chain security), root-10-m03 (troubleshooting framework).

root-05-m01 (20-task kubectl-fluency bank) gets a minimal bookending lesson +
reflection rather than a full redesign, since each task already carries its own
explanation. root-12-m01, root-capstone-m01, and root-09-m04 are promoted to
READY via documented exceptions (no new activities) where adding one would
misrepresent their intentional design.

Wires a new rootnode-security-assessment (exam, 60min, hint_policy disabled)
using the existing Phase 3B assessment engine: 3 required hands-on CORE
scenarios + 4 random-draw pools covering SecurityContext, RBAC, network
policy, and the 7 previously-unwired CKS MCQs. Wires the previously-unwired
readiness-probe-task scenario as an OPTIONAL practice lab in root-10-m01,
using the existing is_required model.

Adds root-11-m01-devops-platform-thinking — an honest, lesson-only ROOT 11
orientation module naming DevOps/platform engineering practices already
exercised in ROOT 05-10/12, explicit that GitOps/CI-CD/IaC/observability need
lab infrastructure this platform doesn't yet provide. No fake labs.

Adds infra/scripts/validate-course-content.js: cross-checks the DB against
scenario/content files for duplicate ids, orphans, invalid references, cycles,
sequence collisions, instructor-notes leakage, and (new) self-paced content
deferring explanation to a live instructor. 0 errors against the resulting
22 courses/modules, 163 activities, 98 scenario files.

No application code changed — every gap was satisfiable with existing tables
(course_modules, module_activities, assessment_definitions) and the existing
content-delivery pipeline.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
2026-08-26 11:20:17 -05:00

3.0 KiB

Building kubectl Fluency: Why Twenty Small Reps Beat One Big Lecture

What this module is, and why it looks different from the last one

ROOT 05's mental model module (m00) taught you the CONCEPT of desired state and gave you your first kubectl commands. This module does something deliberately different: it's a breadth drill across the everyday kubectl vocabulary you'll type dozens of times a day as a working Kubernetes engineer — labels, JSONPath, dry-run manifests, patch, field selectors, sort-by, diff, init containers, static Pods, and more.

There's no single narrative thread connecting these twenty tasks, and that's intentional. Real kubectl fluency isn't one big insight — it's having enough of these small, specific commands already in muscle memory that you're not stopping to look up syntax while you're mid-incident. Each task below explains the specific concept it covers in its own description; your job is to work through them, not to memorize a lecture first.

How to approach this module

  • Don't try to do them in one sitting if you don't need to. These are independent — skip around, come back to ones you found awkward, and don't feel obligated to treat this as one continuous session.
  • Read each task's own explanation before reaching for the hint. Every one of these twenty tasks includes real context in its description — that context IS the teaching content for that specific command. The hint is there for when you're stuck, not as the first thing to read.
  • Notice which commands you reach for confidently versus which ones you have to think about. That gap is exactly what the reflection at the end of this module asks you to name.
  • This breadth matters more than it looks like it does. kubectl explain, --dry-run, JSONPath output, and kubectl patch in particular are commands experienced engineers use constantly and newer engineers often don't know exist at all — this module exists specifically to close that gap early.

Instructor Notes

Lesson goal: Frame this module correctly before students hit it — it's a breadth-practice bank, not a single-concept lesson, and the individual task descriptions carry the teaching content. Without this framing, students sometimes expect a lecture and are confused when they land directly on twenty short tasks.

Approximate timing: 5 minutes to introduce; the module itself runs long (20 tasks) and is meant to be worked through at each student's own pace, live or between sessions.

Facilitation for a live cohort: Consider live-demoing 2-3 of the less obvious ones (kubectl explain, JSONPath output, kubectl patch) rather than all twenty — the goal is to unblock students on the commands they're least likely to have seen before, not to walk through every task.

Expected takeaway: Kubernetes fluency is built from a large vocabulary of small, reliable commands, not just conceptual understanding — this module is where that vocabulary gets built.