With the growing demand for cloud-native architecture, Kubernetes is becoming a de facto skillset for software architects, developers, and system administrators. While there are different mechanisms to learn Kubernetes, certification such as the Certified Kubernetes Administrator (CKA) program by The Linux Foundation helps to provide the direction, curriculum, and knowledge needed for real-world experience.
Why get CKA certified?
The CKA certification is designed to make sure that holders have the skills, knowledge, and competency to perform the responsibilities of Kubernetes Administrators. Certification holders should be comfortable with the following:
- Creating Kubernetes environment
- Troubleshooting any issue in the Kubernetes environment
- Configure Certificates and TLS
- Hardening their Kubernetes environment
- Dept Knowledge of different Kubernetes resources
CKA and CKAD are both performance-based certifications, so the exam also designs to see how quickly you can solve the questions in the actual environment
For the past 3 years, I am directly or indirectly involved in the development of applications that are using the Kubernetes environment. Prior to CKA, I also passed the CKAD exam (which is not a prerequisite for the CKA exam).
What happens during the CKA exam?
The Certified Kubernetes Administrator (CKA) exam is not a typical Q&A-based exam – it is scenario and troubleshooting oriented. Key points to consider before and during the exam:
- There are appropriate 17 questions to be covered during the exam.
- As the duration of the exam is 2 hours, you need to do effective time management to cover all questions.
- Each question has a different weightage and so be observant of when approaching each question.
- For each question, there is a dedicated cluster on which those troubleshooting activities need to be performed.
- You will be given a dedicated virtual machine with a terminal and Mozilla Firefox browser for searching and opening the Kubernetes document from the kubernetes.io website. You should not open any other website apart from Kubernetes documentation.
- Exam UI will be open in the PSI browser only so bookmarking the Kubernetes documents on your local browser will not help.
- You can open more than one terminal instance in the virtual machine for multitasking.
- For more details, refer to the Linux foundation’s official page document.
How to prepare for the CKA exam?
While each individual has a different way to approach learning, I am sharing my way to approach the exam (feel free to adjust at your convenience):
- Practice, practice, and practice – Even with prior experience with Kubernetes, I practiced a lot of creating/updating/deleting the Kubernetes resources in an implicit way before starting the preparation for CKA.
- Learn from the experts – I enrolled for the Certified Kubernetes Administrator (CKA) with Practice Tests by Mumshad Mannambeth, this course very minutely covers all the topic that comes in CKA. This course also covers some topics from scratch which helps to learn those critical and complex topics quickly.
- Use Kubernetes CLI – I ensured that while attempting the practice sessions in the above course, use Kubernetes CLI and related documentation as much as possible (this helps to fast forward your process of looking up information during the exam). Here is an example:
kubectl explain <resource-name> --recursive
- The more the merrier – I have practiced a lot of questions from the Benjamin Muschko GitHub repository.
- The final preparation – During the last few days before the exam, I used Killer.sh simulator to experience the actual exam-like environment.
Tips and tricks for troubleshooting
As each individual develops their own way to tackle troubleshooting, hopefully, sharing my tips and tricks below:
- Don’t try to spend more time on one question irrespective of its weightage. You need approximately 66% to pass the exam and that’s why spend your efforts wisely.
- Instead of using the kubectl, use the “k” as an alias. This shorthand will be pre-configured in the exam terminal. Here is the complete list of aliases:
alias kc=”kubectl create -f”
alias kconfig=”kubectl config set-context — current” # For changing the namespace
export do=” — dry-run=client -o yaml”
- Use scp command to copy files from one cluster to another cluster in a secure manner. For example – scp <file name from location> <cluster-name>:<destination-file-location>
- Be comfortable with vim editor as most of your questions will need you to edit the YAML files in the terminal window.
- Check the cluster to be used before each question, there are chances that you solved the question with the exact steps but somehow used another cluster.
- Try your best to attempt all the questions as it will not only provide you to target easy questions but also to get a better success rate.
- Use the short name of K8s resources instead of typing the entire complete resource name such as:
- Learn and experiment with basic Linux commands – click here to read more about basic Linux commands software architects should know:
systemctl (e.g. systemctl daemon-reload && systemctl restart kubelet)
ps aux (e.g. ps aux | grep kubelet | grep network)
grep, egrep (e.g. ps -aef | grep apiserver | grep service-cluster-ip-range)
sudo journalctl -u kube-apiserver
apt-get (e.g. apt-get update && apt-get install -y kubeadm=1.25.0-00)
The final words…
CKA is a performance-based certification that focuses more on solving real-world problems within a given stipulated timeframe (similar to what happens during a production incident). Hence, more than clearing the exam, acquiring the knowledge, skill set and troubleshooting approach help to be prepared for real-world experience.
Best of luck with your exam and happy learning!