The Certified Kubernetes Administrator (CKA) had been on my radar for a while, but my passion for not enjoying exams kept from committing to it. But after running into some curly Kubernetes issues at work I decided I would give it a try as even if I failed, the learning aspect of it would be most valuable.

Background - I use Kubernetes, well AKS, A LOT in my day job. I am part of a team which designs/deploys/manages around 30 AKS clusters in many different regions, with lots of different workloads on them, plus also chucking in the dreaded Windows node pools for good measure. So while I am using Kubernetes daily, its very easy to stick to the familiar and not get exposed to the inner workings of Kubernetes, and get into a routine with the GUIs of K9s, Lens etc. This was the main benefit to me of doing CKA.

Training Material

Everyone recommends the Mumshad Mannambeth Udemy Course, and I am not going to be any different here. It really is a fantastic course. Even if you already use Kubernetes, go through it from start to finish, and do all the labs several times. The KodeKloud Platform that the labs are on is extremely well done and responsive. I especially liked the labs around ETCD as this isn’t something you are going to touch in Managed Kubernetes Environments.

Documentation

You’ll already know this if you are looking at CKA, but the exam allows you to use the Official Kubernetes Documentation.

  • Get good at finding your way around.
    • Keywords and phrases, eg, kubeadm upgrade, etcd restore.
  • Solve the Labs in Udemy by using the docs.
  • Get as much YAML as you can from the docs, don’t build by hand.

Although I use the docs frequency in my job, doing CKA dialed this up to 11 for me.

KubeADM

If you use managed Kubernetes like AKS/EKS/GKE then you won’t be exposed to this, but it’s a large part of the exam structure, especially upgrading clusters with Kubeadm.

Do the labs in the Udemy course then build your own clusters with Kubeadm and upgrade it. Do it again.

ETCD

ETCD is the key value store at the heart of Kubernetes, and it does form part of the exam. Again, if you used managed Kubernetes you are not going to be doing much with this so its important to learn it. I was initially completely lost with this and almost chalked it up to “I’ll skip this in the exam”, but stuck with it and found it really useful.

  • Build a cluster
  • Backup etcd
  • Create some objects
  • Restore etcd and see if the new objects have gone

Shortcuts

Don’t stress when you see posts about the exam telling you to input lots of shortcuts, it’s not required as long as you are comfortable with the cmdline and kubectl. The exam environment also has the most used alias k for kubectl already configured, but there are a few I found useful to setup at the start as I used them a lot.

alias exam='grep Examples -A20'

# kubectl run --help | exam
# This will quickly get you just the examples for the command

export dryrun='--dry-run=client -o yaml'

# kubectl run web --image=nginx $do > web.yaml
# Don't create a pod, but create the yaml for it instead

VIM

Not related to the CKA or Kubernetes, but getting quick in VIM is really beneficial in the exam. You can use Nano if you like but I am old school and prefer VIM.

 $ # to go to end of the line
 a # to append from the cursor
 D # to delete from the cursor to the end of the line
 uu # to undo the last action 

Killer.sh

You get 2 sessions to killer.sh when you purchase the exam. For me I did all the Udemy course and labs first, then did the Killer.Sh first attempt immediately after. However, the difficulty here is a BIG jump!!

For example if in the Udemy course it says “create a pod with the nginx image” in a lab. The killer.sh equivalent question would be “create a pod with 4 containers, sharing a pv and have each one use a different environment variable, read logs from the previous container and then launch a SpaceX rocket!”.

It was eye opening and a little scary the first time. I went from sailing through the Udemy labs to getting 20% on my first killer.sh try. It did defeat me a bit. So I took my time, read through the docs and tried it again a week later after practicing a lot. That time I finished all the labs with 20mins to spare and scored 100%.

Personally, Killer.Sh was the best part of the CKA, it really makes you think. The exam is nowhere near as hard but the structure of the questions is much closer to Killer.Sh than the Udemy course, so it is good prep.

Exam Time

I’ve taken a lot of exams over the years, all proctored so I was not expecting any issues with the CKA…. but it was my worst experience.

I joined 15 mins before my scheduled time and was placed in the queue, with my exam to start at 08:30. A proctor finally arrived at 09:05 then proceeded to utterly rip apart everything in my home office. I’d already taken down all pictures and cleared my desk but they ripped the following apart…

  • Remove mouse pad
  • Remove head rest of chair…..seriously
  • Remove my printer from behind me
  • Wanted me to remove my USB-C Dock (I refused)
  • Said I couldn’t use my MacBook Pro with the screen open (disabled) even though I passed the multiple screen pre-check
    • I refused and they let me continue
  • Made me disconnect and remove the speakers on my monitor
  • Didn’t like my headphone mount on my desk
  • My clear glass of water wasn’t clear enough (it was slightly frosted)
  • And it went on…

They were finally happy after an hour of messing around so my exam scheduled for 08:30 started at 10:15!!!! I filled a complaint immediately after but have not heard anything back.

The exam itself was fine by VERY laggy. I have wired gigabit fibre and have never had issues with any exam before but this one lagged a lot of times, but I had enough time to finish.

Getting the results says 24hrs but it took 3 days, and I passed. I can only think of 2 questions I know I failed, one of them I struggled to understand the question, and another I think was fundamentally broken. I couldn’t make it work when I knew it was right, so once I finished the exam I tried it in my lab and it worked straight away so unsure if I was missing something or it was a broken question.

Summary

The journey with CKA really is better than the destination. You’ll learn a lot by doing it, especially if you are new to Kubernetes, but even if you are not new like me, it will force you to get exposed to areas you really won’t touch if you are using Managed Kubernetes like AKS and EKS.

Good luck and enjoy the learning journey!

Andy