Wednesday, July 29, 2020

Succeeding in CKA and CKAD

Last week in July 2020, I earned CKA (98%) and CKAD (81%). Sharing my learning journey here.


PREPARATION

When Mumshad Mannambeth and https://kodekloud.com/ claimed that their courses 'CKA with Practice Test' & 'CKAD with Test' ("KK" - also available on Udemy) along with official documentation are sufficient for Certification, my initial thought was - it is an exaggeration! There are so many blogs and posts saying CKA  & CKAD are hands on tests and one of the most difficult one.


I found the claim is - true. KK is the only platform that provides hands on labs, and grades your work immediately to provide feedback on your answers. I had explored courses on Linuxacademy, Pluralsight etc. too. Labs at KK are the most resembling real exams  in look and feel.


Here is preparation bullet points:


1- Start preparation with k8s cheat sheet documentation page. A single page has invaluable tips and at least a 10% mark is hidden in a single page!


2- During test, bash-completion package was already installed on jump host (node-1) from where you need to keep changing context to access different k8s clusters. If you are doing ssh to some other node, you need to come back to node-1. So you need to set your aliases, editor variables and auto completion only on jump host.


3- Do not create too many command alias (e.g. kg, kd, kk etc). First 4 lines in the cheat sheet along with a tab for autocomplete is sufficient.


4- If you do not want to miss even 2% marks (I got 98% in CKA), then read the complete question before starting to type a single character in the terminal!


5- Each question has context written at top.  A mouse click on it will copy it. Paste it in the terminal before starting each question.


6- Before writing even a single line in any yaml file, think- is there any imperative way to do this? Some resources (pv, pvc, csr etc.) do not have - but many have. Mastering imperative commands with "-o yaml --dry-run" is key to success.


7- First thing when you edit in any yaml is - namespace (if needed).  Be aware! Some imperative commands, even you mentioned namespace option, do not write namespace in created yaml file.


8- KK includes lessons on YAML and JSON/jsonptah. Understanding of both topics are essential.


9- you can bookmark official documentation pages in Chrome browser bookmarks, but do not bookmark more than a few as official documentation search is pretty good. For example, if you search netpol or pv, the first search result is Persistent Volume and Network Policies document page respectively.


10- CKA (3 hours test) has a timer bar at the top left corner that turns Red when 1 hour is left. CKAD does not have. Proctor was proactively informing remaining time every 30 minutes.


11- I was able to complete CKA alomost 1h earlier and CKAD ….. I could not do last 2 question! why? With my CKA experience, I derived that there is enough time for me - hence I spend too much time in post verification of each question. Key is - chase your last question. You do not know if upcoming questions are comparatively easy or hard. Once you are done with all questions, spend remaining time to verify and re-chek tricky questions. I did not listen to the advice of many bloggers… and paid the price!


12- Each question has percentage weight. Cosider 4% as 4 marks. How much time you need to spend on this ( CKA : 3h x 60 minutes * .04 ~= 7.2 minutes). So if you cannot complete it in  this time, flag it for later attempt and move on.


13- If you are using vim editor, your friend is : echo 'set nu list sw=2 ts=2 expandtab' >> ~/.vimrc


14- Learn how to use explain to see all possible attributes of a k8s resource. In certain cases, it will eliminate the need to search documentation.

   kubectl explain pods --recursive | sed 's/ <.*/:/g' > pe.txt (after first /, press ctrl+v then Tab and then literal <.*/)


15- To create 3 nodes VM clusters locally, do not waste time on researching here and there. Bring it up in 15 minutes with Vagrant https://github.com/nansari/vagrant. If you are taking a KK course, just follow it. It has a full module on creating k8s HA clusters by hard way.


16- Do all Lightning Labs + Mock Labs + Labs on DaemonSet, multi-container, Ingress, NetPol exercises until you get 90% right within given time


17- Read about all kubeadm init option even you have not used it and think that you are not going to use it. 


18- In the last one week test your learning by solving free 'Games of Pods'. It will teach you a few more things, test your knowledge and shake your beliefs too!


19- Occasionally, there will be a discount offer 15-30% by Linux Foundation, or even more during Black Friday. Continue your preparation and purchase exam at a later date.


20- Finally, are these tests hard as many posts and blogs claim? Depends - how did you prepare? Get yourself ~3-4 months. If planning to take CKAD and CKA both, attempt CKAD first.



PRE-EXAM

1- Schedule your exam 10-15 days earlier to get a favorable time slot, especially for CKA. I could not find APAC favorable time and finished the exam at 2 AM!


2- If possible, avoid taking tests in late evening. You may not be able to sleep whole night with anxiety.


3- Portal will be open for login 15 minutes earlier.

- Disable ctrl+w to eliminate closing of tab accidently! On my Ubuntu, I have key mapped it to ‘nope’ a few days earlier than the test.


4- Mute mike, you do not need headphones too. All is done over chat.


5- Use two screen setups to take exams - one for the test terminal and another to browse k8s documentation.


6- Do not keep anything on your desk. Only Keep your ID proof and a bottle of water. Remove all other things beforehand as anyway proctor will ask you to remove all other items.


7- You need to move the webcam around your room to show all 4 walls, 4 corners of table and under table space.



DURING-EXAM

1- You can request a break during the exam though the timer will not stop.


2- Notepad editor located at the top right corner of the test portal is not very efficient. Whatever you write there will remain there even if you close and reopen it.

- Ctrl+C and Ctrl+v do not work for copy and paste . User Control+Insert to copy and Shift+Insert to Paste


3- if you are creating a k8s object from yaml, spend a moment to re-check yaml (especially pv, pvc and pod)  before doing apply/create on it. Once an object is created, deleting may take a couple of minutes - time is a precious resource!


POST-EXAM

1- Remember, you have a second free attempt, so switch off all your k8s related thoughts for a day until the result is delivered to your email inbox.


2- Do not expect results too early - wait for 36 hours, especially if you are in a certain time zone.


3- Celebrate your success and share your experience.



ADDITIONAL RESOURCES

Free courses

  https://www.udacity.com/course/scalable-microservices-with-kubernetes--ud615 

  https://www.edx.org/course/introduction-to-kubernetes

Book

Kubernetes: Up and Running


Do comment if you find this post valuable. Feel free to share; no creaditt required.


I'm reachable @nasim_ansari


Short url of this document : https://bit.ly/ckackad


4 comments:

  1. This is really fantastic and helpful. Thank you so much for the short yet complete guidance for anyone taking the exam.

    ReplyDelete
  2. Thanks for taking out time for helping people out

    ReplyDelete
  3. Jazak Allahu khair brother

    ReplyDelete