How I Passed the CKA & CKAD Certifications in a Month
A couple of months ago, I decided to get off my behind, and pursue the Certified Kubernetes Administrator (CKA) and Certified Kubernetes Application Developer (CKAD) certifications. Since I already know with Linux, Docker, and Kubernetes really well, I figured it was the next logical next step to solidifying my knowledge. In this post, I will detail the resources I used to get practice for both exams.
The CKA and CKAD exams are administered by the CNCF (Cloud Native Computing Foundation) and are unlike any certification exam I have ever taken. This is a hands on exam that really does test your knowledge of Linux and Kubernetes. It is not a multiple choice exam where you are able to guess your way to the correct answer. You either know how to solve the scenario or you don't.
To prepare for these exams, I used the following resources:
Certified Kubernetes Administrator (CKA)
- Mumshad Mannambeth's CKA course on Udemy https://www.udemy.com/course/certified-kubernetes-administrator-with-practice-tests
- ChadMCrowell's github CKA exercises https://github.com/chadmcrowell/CKA-Exercises
- Killer Shell exam simulator - https://killer.sh/
- Official Kubernetes Documentation - https://kubernetes.io/docs/home/
Certified Kubernetes Application Developer (CKAD)
- Mumshad Mannambeth's CKAD course on Udemy https://www.udemy.com/course/certified-kubernetes-application-developer
- dgkanatsios github CKAD exercises https://github.com/dgkanatsios/CKAD-exercises/blob/main/i.crd.md
- Killer Shell exam simulator - https://killer.sh/
- Official Kubernetes Documentation - https://kubernetes.io/docs/home/
There are a lot of resources out there to help study and get ready for the exam, however I chose to narrow my focus to Mumshad's KodeKloud courses on Udemy. The two courses were amazing to prepare me for the certification exams. The hands-on labs at the end of every module, and the practice exams at the end to simulate the live exam were incredibly helpful. For additional practice, I spun up an EC2 instance in my AWS account, installed minikube, and used that to practice some more.
The exercises in the github repositories linked above were great to help get better at solving the scenarios. The exercises on killer.sh are notably more difficult than you will encounter on the exam, however they do mimick real life scenarios you will face on the job. Therefore, do not be discouraged if you don't score very high on the Killer.sh practice exams, it is designed to be tough. With enough practice, you will be able to breeze through the questions.
Lastly, this exam is also a race against time. The following items would help you save time during the exam:
- Know with how to create shortcuts of the most common commands, such as setting
alias k=kubectl
oralias kgp=kubectl get pods
. - Knowing how to copy and paste in the simulator effectively, both single commands and yaml files.
- Extensive knowledge of common imperative commands to create pods, expose services, or autoscale deployments saves a ton of time. This way, you are able to cut down on having to create, edit, and deploy those yaml files.
- Shameless use of the --help flag when trying to get the correct syntax for a imperative command. It's too time consuming to try and find these on the Kubernetes official documentation page.
- Familiarity with the Kubernetes official documentation page also helped me save time while looking for references.
- Being able to quickly validate your work and troubleshoot problematic resources.
Happy udying and good luck as you take the exam!