Niket:
Got Cert today!
Thanks to Mumshad for this extensive and rigorous course. Doing all the exercises multiple times really helped a lot. Find my experience with this exam below.
TL;DR version:
Practice mocks, killercoda and killer shell multiple times > give exam > download cert.
Long Version—–
Exam Experience:
• Exam will be launched in PSI Secure browser and NOT in Chrome.
• Disable chrome extensions which might run in background(even when chrome is closed) and prevent PSI browser to start exam.
• if chrome remote desktop is installed on PC, uninstall it as it runs some background service.
• I experienced heavy lag after about one hour of starting the exam. Using K8s Docs was a bit uncomfortable due to lag. I was on 50mbps connection.
• I used 18 inch external monitor with separate webcam. Laptop screen was down.
General Preparation Tips:
• Complete KodeKloud mocks, troubleshooting scenarios, netpol and ingress multiple times.
• Do all Killercoda CKA scenarios.
• Target to score at least 55-60% in Killer.sh simulator in first try.
• Do keep a check on namespace field while copying yaml from docs.
• For every question, ensure that you are on correct node, context and namespace.
Some subtle but important things I noted while preparing:
• in case we are not able to troubleshoot master node components, we can take a manifest backup, generate that component’s yaml using “kubeadm init phase” and then take a diff and analyze further.
• upgrading kubeadm and etcd restore can be done in a separate terminal tab as they involve long running operations. We can attend to other things in other terminal meanwhile.
• Pod Anti affinity won’t work without correct topology key. I still don’t know from where to get the correct value for this. I had asked this question on this forum earlier but didn’t get any response.
• Don’t try to check ETCD backup status using etcdctl command as it MIGHT alter the backup.
• You should be able to use these things in yaml WITHOUT looking at docs: nodename, nodeselector, emptyDir volume, volume mounts, pod resources, commands.
• in case we need to create config map from file, DO CHECK file type and don’t rush to use --from-file=<filename>. If it is a yaml file then use “apply -f”.
• we cannot specify --nodePort field while creating nodeport service using kubectl create command. It needs to be done via yaml in case some specific port is required.
• For me, setting aliases for kubectl apply and changing namespace in context helps to make things faster. Setting env for ”–dry-run -o yaml” reduces typing time further.
• while listing api-resource names, using “awk” command gives slightly different results than using “-o name”. I will recommend to use “-o name” OR regular jsonpath.
• in kodekloud course’s jsonpath related questions, using “jq -c ‘paths’ ” helped me a lot.