From Zero to CKA Exam: How to prepare for your CKA Certification Exam starting from zero
For more than two years, containers and container orchestration started to pop up more and more often in my radar. In my work environment, I kept hearing the terms but I was ‘spoiled’ with excellent colleagues and platform teams that made my contribution in that topic redundant. Hence I postponed putting an effort in learning about these topics. However, motivated by the pandemic and the lockdown, I decided that it was time for me to actually get my hands dirty and learn Docker and Kubernetes. In this blog post I will give a brief description of my journey from a Docker and Kubernetes novice to my CKA Certification, my study strategy and resources.
In order to understand container orchestration, it would be a good idea to understand containers as well, right? And that was my start.
My very first real introduction to Docker was the course from Nigel Poulton: Getting Started with Docker in Pluralsight. There Nigel, who is very passionate about containers and also a very engaging speaker, explains the main concepts about containers and Docker in particular. After that to get some hands-on practice I did also the course Docker for Web Developers from Dan Wahlin (Pluralsight) and Learn Docker by Doing in A Cloud Guru. Finally, to gain confidence I ‘dockerized’ some of the side projects I was working on.
I followed a similar learning path for Kubernetes as well, with one difference. To give myself a goal, I registered and scheduled my CKA exam.
My starting points with Kubernetes were: Getting Started with Kubernetes and Docker and Kubernetes: The Big Picture again by Nigel Poulton, in Pluralsight. These courses were helpful to get an idea of what Kubernetes is, what the main components are, and how they interact with each other.
The CKA exam, as you for sure have already read online, is a hands-on exam. There are tasks, and you have to implement them in the right context. Remember that from September 2020 the structure of the exam has changed, therefore some information out there is no longer up-to-date. CNCF, the organization behind Kubernetes and CKA, publishes regular updates in the curriculum of the exam in their github page. I will not bore you with details you can find yourself on their github or website, but just show you my preparation path. Please keep in mind that I had very little touch points with Kubernetes before, therefore I had to invest quite some time. Your mileage might be different depending on your experience and expertise level.
I used two main sources to prepare for my exam.
1. Certified Kubernetes Administrator (CKA) — A Cloud Guru, taught by Will Boyd. The course is well organized. All the concepts are explained clearly and during the course a lot of examples are provided. The platform also allows you to do many hands-on labs yourself. During this course, the instructor focuses on the declarative way of defining the Kubernetes resources, which can be a little slow if you are an advanced user. In the end of the course you will find some practice tests, which I found helpful to understand what might be asked in the exam.
2. Certified Kubernetes Administrator (CKA) with Practice Tests — Udemy, taught by Mumshad Mannambeth. This is the holy grail of the CKA exam. If you are short on time and need to get it done, this is the one. If you buy the course, you can practice using a platform they are collaborating with. Beside explaining pretty much everything you need to know for the exam, they dedicate time in clarifying some ambiguous topics like: TLS and DNS. They use mostly imperative commands in the course, which are faster, but have the drawback they cannot be replicated easily afterwards. The course also includes 3 mock exams, which give you quite a good idea of what to expect in the exam.
Overall I spent around 2 months preparing for everything.
My CKA Exam Tips:
- Practice, practice, practice. Oh, did I mention practice? This is a hands-on exam. There are no multiple choice questions, so in the end, your exam is going to be evaluated if it does what the question asked or not.
- Come up with your set of aliases, but don’t overdo it.
- Practice your aliases, practice the full commands as well. If you have some issue with the internet connection, your terminal might restart and your aliases are no longer there.
- Keep calm during the exam. I faced some technical issues, but every time I was able to start where I left off.
- This is only for my case, as other people have had different experiences, the time limit (2 hours) was quite enough.
- Read the questions very carefully, and be careful to create the resources with accurate names or properties. If you make a typo, that might cost you the question points.
- Practice both imperative and declarative commands. Some resources or properties cannot be defined via imperative command, so you will need to write the yaml (or json) definition file.
- Bookmarks are fine, so make use of them. But make sure to have the bookmarks in the same browser you are going to take the exam on, or have them in all the browsers.
- Here are my aliases that I used in the exam:
alias kc=”k create”
alias kd=”k describe”
alias kg=”k get”
alias kr=”k run”
alias kaf=”k apply -f”
alias kcdry=”k create — dry-run=client -o yaml”
alias krdry=”k run — dry-run=client -o yaml”
- My strategy was to prepare at my best, but then just take the first try. If I pass great, if not I know what to focus on for the free retake. I passed on the first try, so 🎉🎊🍾.
- As far as I remember in the Udemy course, there might also be a discount code on the exam fee. If you decide to get the course, make sure to check for the discount code before you register for the exam.
- You can use multiple screens during the exam. If you have your laptop and your external screen, you can actually use both during the exam.