This is the story of studying Kubernetes basics from the perspective of network engineer. I had basic Linux background, some free time, and willingness to discover this brave new world of containers, pods and microservices.
I think one of the best ways to do this kind of studying is to follow the blueprint of recognized industry certification. This gives you a concrete study plan and bring structure to your knowledge from the very beginning.
There are such certifications in Kubernetes world – CKA and CKAD from CNCF/The Lunix Foundation. It’s quite popular certifications (as k8s in general), and so there a LOT of study material out there in the Internet. Below is the list of sources I’ve used.
- KubeAcademy from VMware. Collection of short courses to study the 101 of containers, Docker and Kubernetes. I’ve found it useful to do first quick dive into this area of knowledge.
- Kubernetes: Up and Running. The must-read book about Kubernetes architecture and concepts. Explains everything in great details.
- Great cources from Mumshad Mannambeth on Udemy – CKA and CKAD. This courses contain almost everything you need to know to pass the exams, and also have a lot of practice labs to consolidate theoretical knowledge. Great value for such a little price.
- Kubernetes Documentation. Oh yes, you need to study this to pass the exams. At least read the whole Concepts section and skim through the Tasks section. And, actually, it’s quite good written, with lots of practical examples. This is a MUST step in exam preparation, because the https://kubernetes.io/docs/ is the only source you have access to during your exam. So you need to be able to quickly find any topic and example yaml.
- Exam simulator by killer.sh. After you purchase your CKA/CKAD exam, you will be given two free sessions on this exam simulator (access it via small inconspicuous link in the Exam Preparation Checklist in Linux Foundation portal). This is GREAT resource which closely simulates the actual exam interface experience, has a lot of interesting tasks and well described answers to them (you should definitely read the answers, even if you done all the tasks easily – there are a lot of useful tips in there). Actually it is harder than real exam, so if you feel comfortable with this you definitely shouldn’t had any problems passing.
- Read the official exam candidate handbook, FAQ and Instructions to feel more comfortable during the exam.
- (optional) Read some success stories, like this one. There are a lot of them on Medium, for example. With links to other useful resources, like awesome-github-list-of-everything-k8s-cheat-you-need-to-know, etc. Just make sure to not spend too much time doing this. It’s impossible to learn everything at once. And it’s not necessary to score 100% on your exam either.
And that’s it! At least it worked for me. About a month of study using these resources, and I had no problems passing the CKA/CKAD exams with high score (95+). Actually it was pretty easy and interesting journey. And I hope that now I have at least some understanding of k8s basics and it will definitely help me in my further network engineering career.
But beware – CKA/CKAD exams is not the end of studying k8s – it’s just the beginning. k8s ecosystem is huge right now, and these exams only check your understanding of basic k8s concepts. k8s was designed to be highly configurable and extensible from day one. It has a lot of related projects in any area, be it compute, storage, monitoring extensions.
In my case, the interesting area is networking plugins. Welcome to CNI world – Calico, Cilium, Contrail, Flannel, kube-router, oh my… And there is also a magical world of service meshes… So much fun ahead!