CKA Road Trip: You Don't Memorise kubectl — You Discover It
The advice is always: here is a list of kubectl commands, memorise them. It doesn't work like that. You can't look up something if you don't know it exists.
The Problem
After the replicas exercise, the fix was k scale. Simple. But what if I didn't know scale existed? I would have gone straight to k edit or k get -o yaml and edited the file directly. Which works, but it's slower.
The issue isn't syntax. It's not knowing which commands exist in the first place.
The Chicken and Egg
You can't --help a command you don't know exists. And memorising a list of 30 commands without context doesn't stick — you need to use them in the right situation 3 or 4 times before they become muscle memory.
So the question is: how do you find out what exists without memorising everything upfront?
One Command Solves It
Run it once. It lists every top-level command grouped by category. You see scale, set, rollout, patch, label, annotate — now you know they exist. That is the only thing worth skimming upfront. Not syntax, not flags. Just what is there.
Then --help Does the Rest
Once you know a command exists, the syntax is one flag away:
Exact syntax, flags, and examples on the spot. You look it up when you need it. After 3 or 4 times in real exercises, it sticks without trying.
When to Use k edit Instead
Not everything has a dedicated command. If you need to change something that k scale, k set, or k rollout don't cover — k edit is the right tool. Live YAML, change what you need, save. No file, no apply, no delete.
The dedicated commands are faster for what they cover. k edit covers everything else.
The Workflow
need to change something
↓
is there a dedicated command?
↓ not sure
kubectl --help → scan → find it or confirm it doesn't exist
↓
k <command> --help → syntax → done
↓ or no command exists
k edit → change the field directly
One skim of kubectl --help gives you the map. Everything else on demand.