CKS Preparation — My two cents on passing one of the most sought after certifications

surabhiisharma_0-1680154846626.png

This article is based on my experience studying for and passing the Certified Kubernetes Security Specialist exam. I recently cleared the CKS (Certified Kubernetes Security Specialist) exam with a decent score in my first attempt. So I thought I should share my story of the exam preparation along with the tips and tricks that helped me in clearing the exam. If you are also preparing for the CKS exam, then this article will help you get a good idea on what is the format of the exam, what resources to utilize, how to manage the time during the exam, how to prepare & some important tips related to the exam.

A note before we begin [A brief about Kubernetes]:

If you think getting a CK{A or AD or S} certification seems like a lot of work, you’re right. But that hard work is worth it for many. Since Kubernetes was open-sourced by Google in 2014, it has skyrocketed in popularity. Now a graduated project of the Cloud Native Computing Foundation (CNCF), Kubernetes dominates the market, with 78% of enterprises reporting that they use it to orchestrate containerised workloads and services in production.

surabhiisharma_1-1680154936058.png

  1. There are YAML templates provided in a few of the questions. If you want you can re-use them & change the variable values as per the ask.
  2. Use the browser within the VM to access the following documentation:
  • Kubernetes Documentation: It’s important to mention that you have access to Kubernetes Official Documentation during the exam. So get yourself familiar with Kubernetes online documentation, and know where to find all specific topics listed below. It might be helpful for you during the exam.
  • Tools
  • AppArmor
Show More
One small note: I am in no way affiliated with the author of any of the above courses & that this is not a paid promotion.
  • Kim Wustkamp’s Course and Zeal Vora’s Course have some questions which you can practice.
  • KodeKloud CKS Course Mock tests: The mock tests are super cool to gain confidence while solving the exam problems. I felt that the difficulty level of the course’s mock tests is a little lower than the actual exam (the course may get updated in the future, I am saying this based on my experience when I attempted the exam).
  • For the AppArmor and Seccomp, you can take the help of the different learning platforms. I used AcloudGuru for that.
  • When you book your exam, there are 2 exam simulator sessions provided by killer.sh. These mock exams are VERY tough as compared to the actual exams, as they mention, but do provide a great learning experience. Do not get demotivated if you flunk badly on time on this one 🙂
  • Use kubectl imperative commands to create Kubernetes resources. Copy YAML from the documentation only when you can’t create it using kubectl.
  • Carefully change context while attempting questions.
  • Time Management is the main concern in the CKS Exam, but if you know the thing and have a clear understanding of what needs to be done in question, you will be able to complete the exam in 2 hrs.
  • Don't get panicked because First:- if it is your first attempt then you have the other left.
    Second:- is that you only need 67% to crack the exam.
  • And in the exam, you need to modify some of the files, so please take the backup of that file before making any changes, so if anything goes wrong or something is not working you can restore and start it again.
  • A good thing in the CKS Exam is, that in some questions you will find the example manifest of the task which you need to perform in questions, the file is stored at some location. It saves time from copying from documentation and then modifying
  • You will have to deal with a lot of YAML files in the exam. As such, vi/vim is the to-go option. I would strongly encourage you to invest your time on vi/vim if you are not familiar with it because it will save your time significantly during the exam.
  • Use kubectl run with the — dry-run flag as much as you can. If you create a YAML file with — dry-run flag, it’s an easier and faster way to create resources in the cluster.
  • The priority is to attempt the questions which you have high confidence that you can complete. Keep in mind that percentages of each question appear on top. This will help you determine if it’s worthwhile to spend time on the question of skip over to attempt the next one.
  • Place the resource in a specific namespace as asked in the question. But if you forgot to specify it, it will be placed on the “default” namespace as the default behavior. And you’ll be penalized with a 0 mark for that answer.
  • If you are not familiar with any question or problem, just skip it and come back later and use the notepad as a tracking pad. Put all the questions you skipped with the weight as well. For example, if you skip 2 questions with the weight 8% and 2%, you should come back to the question which has more weight.
  • In the exam, some questions may require you to edit an already existing Kubernetes resource to apply a different configuration. You can export the resource to a new file, and then delete the resource, then edit the file and create a new resource from the file. Alternatively, you can edit the resource in place using the “kubectl edit” command. This will open the Vim editor with the resource’s YAML where you can make changes as usual. Once you save your changes and exit the editor, Kubernetes will apply the new YAML on top of the existing resource.
  • Kubernetes release versions quite frequently. Practice based on the current kubernetes version for the exam.
  • Prefer using short names as it will save a lot of time in the exam. I’d encourage you to memorize them at least the commonly used ones such as: po for pods, deploy for deployments ,pv for persistentvolumes
  • Create your own alias to save typing the long command. Always do these at the beginning of the exam.
  • export do=” — dry-run=client -o yaml” Example : k create deploy nginx –image nginx $do > nginx.yaml
  • export now=” — grace-period 0 –force” Example: k delete po nginx $now : When you request deletion of a Pod, By default, all pod deletions are graceful within 30 seconds. But you don’t want to wait for 30 seconds in your exams as every second counts so the kubectl delete command supports the — grace-period=<seconds> option which allows you to override the default and specify your own value. Setting the grace period to 0 immediately deletes the Pod from the API server.
  • Give a lot of practice exams, identify your weak topics and spend more time on those.
  • Do labs and mock tests repeatedly (at least three times). Identify what is slowing you down and plan accordingly.
  • With each K8 exam purchase you also get 2 free exam simulator practice tests on killer.sh. This gives you access to a test environment which comes very close to the original one. The current exam simulator has 20 complex questions/scenarios to solve in 120 minutes. After the session you will get access to detailed solutions. Go through the detailed solution to see the approach.
  • In the exam, if you analyse that any particular question is going to take more than 6–7 mins to solve, flag/mark it to solve for later and come back once you solve the rest.
  • Familiarize yourself with tools such as openssl, journald, systemd, etcdctl (for managing etcd)
  • Don’t directly rush over the terminal to solve the question, read it twice before doing anything.
  • Don't write YAML files from the beginning
  • Don’t overwhelm yourself with alias for everything
  • Don't rely on bookmarks
  • Don’t ignore the candidate handbook. It has important instructions related to your exam like you’re system requirements . The specifications are: You should have a Reliable Internet Connection, A working Webcam and Microphone, Chrome, Verify things from compatibility checker tool before the start of the exam, Make sure to provide govt issued photo identification, Close non-required programs
  • Don’t panic if you are stuck; simply flag/mark the particular question and move ahead. You can always come back to it later. Every question has a weightage associated with it; Prioritise questions according to the time and the weightage.
  • Don’t give the exam on the last day , you will have no time left for the re-take.
10 REPLIES 10

Lauren_vdv
Community Manager
Community Manager

Congrats @surabhiisharma! Thanks for sharing your advice and best practices. I'm sure this will be helpful for others 😊 

Thanks a lot, @surabhiisharma  this is really helpful, great Job! Kudos to you. 

Covered everything in Detail for the exam 👍

Fantastic article, very detailed and nicely written, would recommend this article to all aspirants for Kubernetes certifications. Great job👏👏👏🎉

Great writeup Surabhi! One stop shop for all CKS preparation queries.

CKS is a performance-based certification exam that tests candidates' knowledge of Kubernetes and cloud security in a simulated, real world environment. Candidates must have taken and passed the Certified Kubernetes Administrator (CKA) exam prior to attempting the CKS exam.
Regards:
 

is this helpfull?

Thank you for sharing your experience and the resources. 

In addition to those you have highlighted, I have found the below resource useful that covers the solution walk-through and how to approach the CKS Killer shell exam simulation, 

https://www.youtube.com/playlist?list=PLpbwBK0ptssx38770vYNwZEuCeGNw54CH

 

Deeply regret purchasing this exam (CKS), as it does not cover things that could be useful in my job (GCP Secret Manager, Kyverno, managing secrets with Vault).

The exam after July 2023 has become a battle with the exam environment. You are not  allow to use the documentation the local browser. Remote Environment is painfull slow.

The hints provided above work poorly because you will be interrupted 20-30 times during the exam with the message 'Reconnecting to remote environment"

Get ready for the nightmare of dealing with remote environments. For nodes, a tip like customizing aliases and bash for your needs won't work, as you'll be making changes on remote machines. 

if I could get back in time, I would choose Google certification and courses to gain knowledge. It would be much more beneficial for work compared to unnecessary, unused CKS questions.

Congrats @surabhiisharma for the achievement. This is a great milestone in your professional carrier. Thanks for taking the time and sharing very much detailed preparation material and other tips and tricks. This will surely help Kubernetes and GCP enthusiast. 

Top Labels in this Space