Last Updated onReading Time: 4 minutes
Kubernetes is one of the hottest technologies at the moment and showing off your skills is only going to boost the chances of recruiters and potential employers taking notice of your CV.
But what if you want to go one step further and really showcase that you’re the Kubernetes legend that you claim to be? In my opinion, one of the most important traits of a good techie is humility. There will always be stuff you don’t know, there will always be people who know more about a subject than you. Always.
When I work with a new tech, I’m incredibly mindful of the Dunning-Kruger effect. I know immediately upon getting excited about something that there’ll be tons of stuff in the universe for that technology that I’m going to be unaware of. If I turn up at an interview and claim to be an expert, how do I know that they won’t ask me about the 10% of Kubernetes that I haven’t touched yet?
Maybe I’m just a bit of an anxious, nervous wreck of a man.
I like to fill in those gaps and prove to potential employers, and to myself, that I am actually fairly decent at this stuff. I do this by certifications, and in the world of Kubernetes, a good baseline is the Kubernetes Certified Administrator (CKA).
Before I give you my best advice for passing the exam, a small amount about the exam itself.
The exam is remotely proctored by the CNCF. They record your desktop, and you through your webcam and microphone for the duration of the exam.
This sounds really rudimentary, but what are the building blocks to consider when deploying an application to Kubernetes? Containers? Pods? Jobs? Replica Sets? Daemon Sets? Deployments? Services? Secrets? Config Maps? Volumes?
Can you create any of these on the CLI from zero, perhaps with a little assistance from the docs? For this you’ll need a tool. What do you think it could be? Read on!
In my opinion, the exam could be renamed to the kubectl certified administrator. You’ll use kubectl extensively in every question to build, edit or debug items in your cluster.
Use the cheat sheet from the Kubernetes documentation to prove to yourself that you’re ready. Do you understand all of the examples?
One of the first things I do when I use kubectl on a new laptop is to set up bash completion, it can really speed you up. I did it in the exam too.
source <(kubectl completion bash)
Question about Pods? Go to the Pods page and copy a Pod definition to get you started.
Question about Services? Go to the Services page and copy a Service definition to get you started.
Question abou…. no, I’ll leave it there, you get the picture.
Alternatively to the last point, try this pattern to get yourself the base objects that you can augment to answer the questions…
$ kubectl create job 7tips --image=nginx:1.9.1 -o yaml --dry-run
- image: nginx:1.9.1
Know what the components are and how to assess their health. We’re talking systemctl, journalctl and the small number of derivative commands to stop/start services and look at logs.
systemctl restart kubelet
This exam tests you as a Kubernetes Admin, not a SysAdmin. You should know how to scratch the surface with these commands, you don’t need to be an expert.
Time is of the essence. You’re going to need to find stuff quick. You can only have 1 tab open for the docs, make good use of it.
74% is a funny pass rate. It’s probably designed to get you to get 17 of the 20 easy ones correct and 2 of the 4 hard ones correct, or something like that.
Each question has a number of % points visible so for example.
Q1 - pods - 2 points
Q2 - secrets - 4 points
Q24 - config maps - 5 points
I’d suggest that you take the following approach.
Read through all of the questions and make a note of the weight of each question using the integrated notepad.
Then decide a strategy.
Either complete all of the low pointed easy ones to build your confidence up. Or, do the hard ones first to get all of those points under your belt.
And then get your family members to ask you questions about it.
Thank you, Kelsey.
From this, you’ll touch things that you’ll never touch when you’re doing day to day cluster admin. Such as, setting up SSL between nodes, firewall rules between nodes and master, interacting with etcd using etcdctl.
This is a guest post by Graham Moore, a senior DevOps and certified AWS architect who has worked on contracts for numerous high profile technology companies in and around London. Add him on LinkedIn if you’d like to discuss cloud consulting projects.
Tell us about a new Kubernetes application
Never miss a thing! Sign up for our newsletter to stay updated.
Discover and learn about everything Kubernetes