Certified Kubernetes Administrator - Exam De-stress Guide
I recently passed my Certified Kubernetes Administrator (CKA) exam and along the journey made note of a number of useful resources. Hopefully some of this information can better prepare you for your own exam.
Instead of focusing on just the technical aspects I want to instead focus on helping you understand what the exam environment is like. I'll also describe what is expected from you in terms of setting up your desk / office space for taking the exam online.
Learning Options [Paid]
The information I cover in this course won't be enough for you to just walk in and pass the exam; so I would recommend checking out some online courses. The following are resources I used:
Linux Academy ($37.42 Monthly)
- Sample Exams were decent, covered most of the content you could see; didn't cover enough cluster (kubelet service) troubleshooting.
- Labs for each chapter covered everything quite well with scenarios with just enough depth to get you thinking.
- Playground where you can create short lived VMs to play around in.
Google Kubernetes Engine - GKE
This recommendation is for those who want to work with Kubernetes without wanting to bootstrap their own clusters. While I don't advocate skipping the learning of bootstrapping a cluster fresh, you don't want to be having to mess around with VMs every time you want to do Kubernetes labs.
GKE is an extremely simple, and relatively cheap (if you switch it off when not in use) way to run Kubernetes.
Learning Options [Free]
On top of the paid resources, I personally made use of a number of free online sources for practices and skilling up before taking the exam.
During the CKA exam you will have access to a number of different Kubernetes servers, so it makes sense that you should train on multiple servers when studying. I found Michal Gutowski's CKA Lab repo to an absolutely fantastic way to spin up a like-for-like lab environment locally to work on.
Uses Vagrant to orchestrate VirtualBox VMs
Includes setups for multiple masters node HA environments (though for most example labs you'll only really need one master and one worker)
NOTE: If you need a hand setting up the basics for this lab environment, I've created this gist
It wouldn't be a CKA prep guide without mentioning Kelsey Hightower's Kubernetes The Hard Way, and while I would recommend running through it; I'll be the first to admit that it covers a lot more then you probably need to know.
The lab focuses more on configuring all the underlying networking, security, routes and VMs ready for running Kubernetes. This information; while super useful for the real world, won't be totally necessary for the exam.
If you have the time to go through the tutorial, definitely do so! but if some parts of it aren't sticking in your mind; don't stress!
- Use Google Cloud Platform and Compute instances to bootstrap an entire master / worker node cluster.
Arush Salil's CKA Practice environment is a pretty popular learning resource for those studying their CKA. While I can't in good faith recommend the lab environment (terminal is buggy and the whole setup is in a Bring Your Own Cluster state), it contains a good assortment of practice questions and scenarios.
- Questions are fairly out of date in terms of the resources they rely on (focuses on DaemonSets instead of Deployments). However it gives you a breadth of experience anyway.
- Setup for Kubernetes 1.10 which is quite old. I personally used 1.15.1 and completed all the questions on that version without too many issues.
Virtual Exam Environment
For a lot of people the most stressful part of taking an online exam is what to expect from the environment you are going to be working in. Personally this is something I struggled ALOT with and in fact I had a mild panic attack at the start of my exam because it was quite overwhelming. The exam isn't mean to be testing your abilities to learn a new UI, so I want to do everyone a favour and describe what to expect.
I've done my best to drawn out the diagram below to give you a feel for what you can expect to see when you login to your CKA (or CKAD) environment.
You will be using your own Google Chrome browser however you will only be allowed access to two tabs including the Exam tab (so effectively just the 1 extra tab). You are permitted to make use ONLY the following links and their associated sub domains:
- https://kubernetes.io/docs/ - You'll spend most of your time here
There is an exam admin dropdown where you can select various items to control the exam. This includes the button to end your exam early. There are also buttons here for managing sharing your Screen and Webcam (which you will be told to turn on when starting the exam).
Navigation buttons to let you scroll backwards and forwards between questions. This bar also includes a bar to indicate time left to take the exam.
Since there are a number of environments setup for different questions you will always have the command needed to set the appropriate cluster context in your local
At the top of each question is a nice little indicator to tell you how much a question is worth. Keep an eye on this and use it to determine how much effort should be put into a given question.
The question box freely scrolls up and down and contains handy click-to-copy text fields. For exam if they want you to name a deployment
cka-deploy-01; simply clicking on the name will copy it straight to your clip-board.
Terminal window, where you will be spending almost all your time. There is no way to open more then one terminal window at a time, so most people recommend learning tmux. I would argue that this statement isn't entirely necessary however; as from experience there weren't many questions where having multiple windows made much difference.
Virtual Exam Environment [Bonus Tips]
IMPORTANT: Do the pre-checks to ensure that your browser will work for the exam. I had a problem with my Chrome browser not allowing me to share 3rd party cookies. I believe the root cause of this was because I was logged into Chrome with my organizational email; which has strict policies on my browsers cookies.
If you are using a work laptop, I seriously recommend creating a new Chrome profile (not your work one) for taking the exam! This will also allow you to remove unnecessary bookmarks from the navbar and give it a fresh feeling so you don't get too distracted during the exam.
Below are some other more general tips I have about using the virtual environment that could be helpful
- What happens if I accidentally exit from the terminal? - The terminal will automatically reconnect after 5-10 seconds.
- If you cycle through questions too quickly, or click buttons in the interface too much you might be presented with a chrome warning if you want to Force Close the tab. Don't click Yes, the browser will catch up after a short period of time.
- Copy-paste works very well in the environment. You will be using it a lot.
- You can reboot your servers if you'd like.
- There is a chat box in the bottom right where the exam overseer will communicate with you through.
Physical Exam Environment
Your physical exam environment is going to be very important, and there are a number of small things you should be aware of before sitting down and clicking start.
Read The Candidate Handbook
When you purchase the exam, you will get access to the Candidate Handbook which outlines a lot of what I'm about to describe to you below. It contains all the specific details though, so make sure you read it at least a day or so before you sit the exam.
You will need two forms of Identification, that might be hard for you to source on the day of your exam if you don't have a passport lying around.
Your Room & Environment
Once your ID has been validated, you will be prompted to show your proctor around your workspace by lifting your computer or webcam. They will need to verify the following:
- You are alone - This seems obvious, but you can't have people sitting around you (even if you share an office).
- That there are no notes or indicators around you that could feed you information. Sticky notes, whiteboards, papers, and pretty much anything that could be interpreted as a way of getting more information then allowed.
- Desk area is clear of everything unnecessary
- I got pinged for having cables and an un-used monitor. In the end they just let me keep it there, but be aware that you might want to clear EVERYTHING off.
- During the exam you can't be looking around your room / away from the screen for extended periods of time. This could be interpreted as cheating!
- Tell anyone you live with not to disturb you, if someone walks in and you have to gesture to them to leave, it could also be interpreted as cheating. Don't risk it.
I had the option of starting up to 15 minutes earlier then my scheduled kick off. I highly recommend doing this as it also gives you time to fix any tech issues you might have with the proctor on the line.
NOTE: I had issues with my setup that took me until my actual start time to fix, so it was clearly a good idea that I took that 15 minute lead up.
When you complete your exam you will usually need to wait roughly 24-36 hours for results to come back. You will likely have a reasonably good idea how you went based on the number of questions you confidently attempted.
Don't over think it though! While I don't know the inner workings of the CKA exam scoring system, there are rumors that scaling occurs on easy and hard questions. The thought process is that if a hard question isn't completed by the majority of exam takers, then the actual percentage weighting of that question is reduced. This is the theory at least.
If you do fail, don't worry about it!, If you purchased the exam from the Linux Foundation or CNCF you should receive a free resit. Second time around you will have a better idea of what you need to study up on as well.
Taking your CKA a very rewarding challenge, but it shouldn't be stressful! I hope that some of the information above can be of help to anyone other there who might be worrying unnecessarily.
Did I miss something you think I should include? Please reach out to me on Twitter @nathangloverAUS and let me know!