Challenge Accepted: Mastering CKA, CKAD, and CKS Certifications in One Month! 🚀

The Insider’s Journey: My Intense Struggles and Clever Hacks for Kubernetes Certifications Mastery! 🛠️

Artem Lajko
8 min readNov 13, 2023

Note: This isn’t a prep tutorial for the CKA, CKAD, or CKS exams. In this post, I’m simply sharing my personal journey, which has been highly requested since my post about renewing my CKS. 📝

Introduction

In this blog, I am going to share my personal insights how I claim all three kubernetes (CKA, CKAD and CKS) certification in one month with a full-time job. But wait! It’s not exactly as quick as it sounds. I actually started studying for these tests two weeks before I passed the first one. So, if I’m being totally honest, it took me about a month and a half to do it all.

I want to be super clear with you, so I’m going to show you the grades I got. I didn’t get perfect scores, but I still learned a lot and maybe what I learned can help you too.

📈 Scores breakdown:

  • CKA (LF-aihb9j6f63) — 05.10.2021: 86%
  • CKAD (LF-m1f4vbl3i6) — 15.10.2021: 78%
  • CKS (LF-fgm53ab5sy) — 29.10.2021: 84%

Up next, I’m going to answer the 5 questions that people ask me the most on LinkedIn.

Q1: How do you prepare for the exams?

A1: Okay, let’s think back to September 25th, 2021, that’s when I started getting ready. That weekend, I spent a lot of time looking at what these tests are all about, what I need to learn, and making special “study dates” with myself. 🗓️

After that, my study plan was like this:

On weekdays, after my job was done at 5-6 PM, I studied for 2 to 4 hours. How long I studied depended on how tired my brain was from the day at work. On weekends, I studied a lot more — between 4 and 8 hours on both Saturday and Sunday.

Now, let’s talk about how much time I really spent studying:

  • For the CKA, I studied about 38 to 44 hours (effective learning time)
  • For the CKAD, it was less, about 16 to 20 hours (effective learning time), because I took a little break to celebrate my birthday after the CKA
  • And for the CKS, I hit the books for around 46 to 50 hours (effective learning time).

Q2: How much experience do you already have with Kubernetes?

A2: Well, by the time October 2021 rolled around, I had been working around with Kubernetes for about 3 to 4 years and 8 to 10 years with Linux. I knew my way around different types like OpenShift, Rancher, the regular kind of Kubernetes, AKS, EKS, and others. I wasn’t a Kubernetes wizard or anything, but I definitely knew how to make it work, fix it when it broke, and handle it in different places where computers talk to each other. ✨

Moreover, I have the advantages, that I started to work with kubernetes not hard way, where you have to create your own PKI infrastructure and manage all your CAs over tools like openssl. Instead, I used things like kubespray with kubeadm for the regular Kubernetes stuff, and then ansible playbooks for something called OpenShift 3.11 to take care of the clusters. That’s where I really got to know all the important parts of Kubernetes and how they fit together like pieces of a puzzle. 🧩

When it came time to switch to Kubernetes that’s managed for you, like AKS, it was a piece of cake. It made me and my team way more productive because it took care of a lot of the complicated stuff, so we could focus on adding new things instead of just keeping Kubernetes up and running.

Q3: Which resources 📖 you used to prepare for the exams?

A3: So, for studying, I kept it pretty simple and didn’t spend a bunch of money on fancy courses, big books, or anything like that. Here’s what I actually used:

  • I started with some courses on Udemy by Mumshad Mannambeth, which were super helpful.
  • Then, I jumped over to a website called kodekloud.com also from Mumshad Mannambeth where I could practice with labs and really get my hands dirty. 🖥️. At the moment, kodekloud.com was under construction, and they have a few courses that are focused on kubernetes.
  • I used killer.sh, which is an exam simulator by Kim Wüstkamp that’s actually harder than the real exams. It was like training with extra weights on! 🏋️‍♂️
  • And, of course, I went straight to the source — the Kubernetes docs themselves! They’re like the grand master of information on Kubernetes (the OG source!). 📚

That’s it! I stuck to these few but good resources and they worked out pretty well for me.

Q4: Which certification was the toughest for you?

A4: To be totally upfront, I’m not quite sure which one was the hardest. But if I had to choose, I’d say the CKS gave me the toughest time. You need to know how Kubernetes does its thing — you gotta know your stuff, really. The CKAD was a bit easier; funny enough, though, I scored the lowest on that one. My drive to study for it wasn’t all that high because it felt a bit like going over the same things I’d already learned, just at a lower level. I had to ask myself, “Is this really worth it?” My pride answered back, “You’ve got the voucher, you’re already in the groove, so just do it for the win.

But why was the CKS the hardest? Let me lay it out for you. Sometimes, the differences between what you’re doing in the CKA and the CKS might seem subtle, like updating kubeadm to a specific version. But then the CKS throws in tasks that really highlight the complexities:

  • CKA: Talking to etcd vs. CKS: Securing etcd (🔒 encryption at rest).
  • CKA: Interacting with the API-Server via kubelet vs. CKS: Cutting off kubelet’s Node communication and blocking anonymous access 🚫 to the API-Server, use Webhook Auth instead.
  • CKA: Applying labels vs. CKS: Using labels to enforce security (🔐 Pod Security Standards).
  • CKA: Creating and using a serviceaccount vs. CKS: Creating a serviceaccount and preventing automatic token mounting (🤫 automountServiceAccountToken: false).

The CKS expects you to know the basics — pods, deployments, service accounts, and so on — and then shows you how to use them in a way that’s as tough as a how to use them in a hardened way. You will also need a deeper understand of how Linux works with syscalls, iptables, services, etc. compared to the CKA. In my point of view it makes sense, first to take the CKA and then the CKS. I say it, because I get some request that ask me why they have to take first the CKA and then the CKS. It’s mandatory by CNCF, but my point is, it’s also make sense.

Q5: Which Insights you can share? 🤓

A5: I’ve been asked to share insights, but to be honest, I’ve always been a bit puzzled by that request. 🤷‍♂️ I mean, everything you really need to know about the exams is out there, clear as day, on the CNCF website. They give you all the details, like what you can use during the test, instructions, a handbook for candidates, and a breakdown of the topics by weight like:

CKS — Overview

I will try to live up to your expectations and share some insights.

I have not optimized everything and only set 2 more aliases.

  • export do=” — dry-run=client -o yaml”
  • export now=” — force — grace-period 0"

k create deploy nginx — image=nginx $do or k delete pod x $now

For the exams, I tried to save time by using direct kubectl commands and the dry-run option to get a basic framework that I could tweak as needed. Depending on the task, I’d often grab an example straight from the official docs — like with network policies, which usually only need small changes.

My advice? Knock out the tasks you’re good at first to save time for the trickier ones. And trust me, you’ll have enough time if you do that. Don’t obsess over one single task, but also try not to hop around too much — it can make your head spin and feel like you’re juggling everything at once.

Getting comfy with vim is a must. If you’re not, just stick to the basics — trying to get fancy with vim can eat up your precious minutes. Knowing your way around Linux is a big plus. Commands like journalctl, systemctl, netstat, strace, and others can offer multiple ways to tackle a problem.

On my renewal on 30.10.2023, I goofed up by focusing too much on small tasks with about 4% weight and then running out of time for a big 11% task. Maybe it was because I was in a new environment or my prep was off (I only had 3–4 days to get ready for the renewal).

Two years ago, my strategy was to hit the big tasks first, then the small ones. That way, at the end, I’d have a good 15–20 minutes to double-check everything. But the most crucial tip (Very important!)? Read each task carefully and make sure you know where to apply your solution. Sometimes it’s on the Ubuntu machine, other times on a node. That’s tripped me up more than once — that’s my Achilles’ heel.

Conclusion

To wrap things up, acing Kubernetes certs requires speed, precision, and a deep dive into the Kubernetes docs. Mastering imperative commands to quickly craft a framework is crucial — so practice, practice, practice to up your speed. Familiarize yourself with key paths like /etc/kubernetes/manifests/ and parameters for core services; this knowledge can be a real timesaver. With all these tips in hand, I wish you all the best of luck on your certification journey. May you find success and satisfaction in your efforts! 🍀

Contact Information

If you have some Questions, would like to have a friendly chat or just network to not miss any topics, then don’t use the comment function at medium, just feel free to add me to your LinkedIn network!

References

--

--