Certified Kubernetes Application Developer (CKAD) in a nutshell
Read the article which I shared after taking Certified Kubernetes Administrator (CKA)
Kubernetes has become an integral part for large number of company choosing microservices as their architecture. For that reason, working with pods, services, deployments, … on daily basis seems like an inevitable task for developers. So being able to understand how Kubernetes works and what benefit it could bring to software development cycle as a whole are substantial.
Certified kubernetes application developer (CKAD) is a comprehensive exam which could help software engineers at all levels strengthen their Kubernetes knowledge in a practical way. Here are few tips which, in my opinion, could help candidates perform at their best not only during the exam but also on day-to-day jobs.
Break the ice
- The exam requires candidates to have sufficient knowledge on Docker, containers and microservices architecture. So make sure that you know where you are at before signing up ;)
- I found this course especially helpful when I first started working with Kubernetes. You could never go wrong with Kelsey Hightower’s course
- Play with
kubectl, use minikube to get familiar with Kubernetes concepts (pod, deployment, service,…)
Practice, practice and practice
- Kubernetes.io, at the end of the day, provides all the resources we need not only for the exam but also for real use cases. However, you might find it hard to catch up if you just begin the journey.
- Katacoda.com fits nicely in that hole. It’s where you could find a lot of practical hands-on labs ranged from basic to more advanced level.
- Whenever I got stuck, Kubernetes by example always help me get back on the track.
Learn to use terminal
- If you come from IDE world, this sounds like an uneasy choice, but unfortunately we don’t have any other choice since the exam requires us to use only the terminal (and a blank notepad, if it helps)
- This is a comprehensive article to walk you through the setup, where to start, how does some basic tools work…
- Make sure that you know how to use
kubectl explainprobably because, believe me, this is the command you would probably use the most during the exam.
- Get familiar with Vim and Tmux, use them at work, learn the basic commands & shorcuts. The more you’re good at them, the less you waste your time.
- You get 2 hours to finish 20 questions, which is pretty rough.
- Possibly setup alias for the commands which are used frequently (kubectl get, kubectl describe, kubectl config,…)
- Spend no more than 5 mins for a single question. If you stuck, move on to the next one.
- Make sure that you follow the description and always be on the right context
Here’re some tips that are out of the exam’s scope, but still really useful and probably on what you should spend times after the exam.
- At Honestbee, we use Helm as a deploy management for Kubernetes. That being said, you don't need to manually edit yaml file and make change directly to the cluster anymore. Each services come as a chart, which define all necessary components, and the values are injected inside the chart via templating. You could check my cheatsheet for more info.
- Most of our developers have a chance to work with Helm / Kubernetes as a commonplace task. Helm charts are written by themselves and the deployment are made automatically via Drone CI/CD, which is a lightweight alternate compared to Jenkins.