This year I’ve seen lots of people taking their first steps to using containers in the real world, and many have joined the Kubernetes train, to start running containers at huge scale. If you’re one of them, you might be overwhelmed by the amount of stuff there is to learn!
You might also be wondering how to find the best resources and tutorials for learning Kubernetes, especially as they tend to be scattered all over the web.
Since Kubernetes is a community project, and is an increasing number of distributions or variations of it, there are many places you can go to learn more about Kubernetes.
In this guide, I’ve brought together what I think are the best links for learning Kubernetes. These are fun comics, tutorials, cheatsheets, playgrounds and books that I’ve been sharing with the teams I’ve worked with, as a consultant and trainer. I hope you find them useful!
So please bookmark this page - and if you like it, I would love for you to share it! It helps more people discover it.
The 10,000-ft view of deploying apps on Kubernetes
First up, here’s a bit of a braindump of the concepts you might need to know if you’re developing for Kubernetes:
This is very much high level, so feel free to shout at me and tell me if I’m missing something!
And now, on with the resources…
Learn in colour: comics and animations
I’m putting this section at the start, because it’s the best way of getting an appreciation of Kubernetes from a higher level.
If you’re less technical, or you just want some fun and engaging resources to help you understand Kubernetes, then check these out.
Smooth Sailing - A Kubernetes Comic
Website/Infographic - Beginner - Non-technical - Free
I just love this! This comic from Google tells the story of Jason, an IT engineer/ship captain who has problems juggling his applications, and looks for a solution.
Fortunately, Kubernetes comes to the rescue, in the form of Athena, the goddess of wisdom. She appears in Jason’s life to show him the way of wisdom, craft and containerised applications.
It’s tongue-in-cheek and very funny, explaining the core concepts of Kubernetes in a way that could be understood by anyone.
Read the comic online
The Illustrated Children’s Guide to Kubernetes
Website/Infographic - Beginner - Non-technical - Free
If you’re looking for a bedtime story to tell your kids, this is it. This adorable illustrated story tells the tale of Phippy, a PHP application who just wants to be with his friends.
Along the way you’ll learn about Kubernetes, pods, labels, replicas and volumes. And you’ll still have time for milk and cookies before bed.
Read the story
You can also watch it as a video, written and performed by Matt Butcher:
Phippy: What happened next?
The excitement about a potential follow-up to Phippy’s story is real. As someone originally said in the video comments:
Excited to see the 2nd part about killing containers, and Phippy’s conclusion this is a terror ship.
(If you’re learning about Kubernetes, you’ll soon find out that a Pod can be “killed”!)
Well fortunately, in 2019, Microsoft Azure created a follow-up story! So here is what happened when Phippy went to the zoo:
VMware: Containers and Kubernetes in 3 minutes
Video - Beginner - Non-technical - Free
A lot of videos from software vendors are so dry, because they have to appeal to a huge cross-section of people. Like brown bread.
But I think this one from VMware is the right mix of facts and explanation. And whizzy graphics. It’s a very brief introduction to containers and Kubernetes, that’s so short, even your boss can watch it without falling asleep.
This video packs in a lot into three minutes. You might be tempted to press stop after 20 seconds, but persist! It talks about physical shipping containers, and how software containers are similar. It then talks about what Kubernetes does and why it exists. Plus lots of swanky animations.
Well worth watching, or sharing with your less technical coworkers! Everyone has 3 minutes to spare.
Watch the video on YouTube
Step-by-step: Tutorials and courses
A very popular way of learning Kubernetes is to pick one of the many tutorials and online courses available.
These vary from simple web pages to full-blown video courses.
Here are some of the best Kubernetes tutorials and courses which I’ve been recommending to people:
Learn Kubernetes Basics
Website/Documentation - All levels - Free
If you’re learning Kubernetes from scratch, why not start from the top? This is the official getting started guide, on the official Kubernetes project website. It’s functional and covers the basics.
If you click through into each module, you’ll get an interactive Kubernetes environment in your web browser to learn in. It uses Katacoda technology, and you don’t have to install anything on your computer.
The basic modules cover deploying an app, exposing it publicly and scaling. Plus you’ll learn about Pods, how they communicate with each other through Services, Pods and other core Kubernetes objects.
Start the tutorials
KubeAcademy from VMware
Video - All levels - Free (registration required for Pro courses)
This set of video lessons from VMware’s instructors will really get you started, although you do need to find your own Kubernetes cluster to work with.
The lessons are really high quality and add up to 19 hours of learning at the time of writing.
My favourite course is The Kubernetes Machine where you learn all about the inner workings of Kubernetes, including the data store (etcd), the Kube API and the scheduler.
You would normally pay a lot of money for high quality video training like this. But this is free. So it’s definitely worth checking out.
Start the course
AWS EKS Workshop
Self-paced - All levels - Free (AWS account required; pay for what you use)
EKS Workshop is a free, self-paced training course from AWS. And it is incredibly thorough!
In this workshop, you’ll go from starting a Kubernetes cluster, to deploying applications, setting up external access to your apps, and moving onto advanced topics like Istio service mesh, Open Policy Agent (OPA), Helm and lots of other cool cloud-native projects.
The downside of this workshop is that you need an AWS account, and you must pay for what you use. (EKS is not included in Amazon’s Free Tier.) It can work out quite expensive if you’re paying your own way. If you leave your cluster on for a few days, you could end up spending more than you think.
So my recommendation is: start small and work on the first few sections, and destroy the cluster at the end of each day. (You can do this easily using Amazon’s
Start the workshop
Book: Kubernetes: Up and Running by Burns, Beda & Hightower
Ebook (PDF) - Intermediate - Free (registration required)
A deeply technical Kubernetes book which goes from creating a cluster, through explaining commands and concepts, and then some real-world examples.
This is the first of two O’Reilly books in this article which are currently being given away free by software vendors. (Scroll down to find the second one, from Red Hat)
This technical book is the gold standard of Kubernetes books. It’s written by Brendan Burns and Joe Beda, both co-creators of Kubernetes, and Kelsey Hightower, well-known developer advocate.
The great thing about this book is that it not only explains concepts very well, but it also includes a section on deploying some real-world applications. So if you prefer to learn by example, you can use these scenarios to help you understand better.
Download the book
Cheatsheets and command references
Cheatsheets are my favourite way to learn, because I’m very hands-on. I prefer to learn by seeing how to use a command.
In the case of Kubernetes, you’ll probably be looking for cheatsheets for
kubectl. It is the main tool that you use to interact with a Kubernetes cluster.
And you might also want to find cheatsheets on how to craft Kubernetes resources, such as Pods or Deployments.
Here are some cheatsheets for Kubernetes that you can learn with:
Kubernetes by Example
Website - Beginner - Free
This website, by the Red Hat team, shows you how to use Kubernetes in the “look what this command does” kind of way.
For each of the different resources controlled by Kubernetes – such as Pods, Deployments and Services – you can see some example commands, explore some example YAML and see what happens when the commands are executed.
If you’re more of a engineer and someone who prefers to hack or tinker with a system, then you will find this website useful.
Go to the website
infraBuilder Kubernetes Cheatsheet
Cheatsheet (PDF) - Beginner/Intermediate - Free
French cloud consultancy infraBuilder publishes this really useful cheatsheet for the
kubectl command line tool. It’s nicely laid out and prints on a single page, so you can hang it up in your office.
I use this Kubernetes cheatsheet because it helps me remember which arguments go in the right order, when I’m using
kubectl. Plus it introduced me to some new
kubectl commands that I didn’t know before. Good job!
Download the cheatsheet
Go hands-on: interactive playgrounds
Kubernetes can be hard to install.
But fortunately, there are some places where you can try a Kubernetes cluster for free!
You usually don’t get administrator access – so no deleting your own cluster, sadly – but you will get some alloted time on a cluster.
You can use this time to deploy simple apps, and understand how to use k8s.
So here are some online Kubernetes playgrounds I recommend:
Katacoda Kubernetes Playground
Interactive - All levels - Free (some scenarios require registration)
Katacoda is a web-based virtual coding environment. You can type commands into a terminal in a web page and do stuff, just as if you were on a real server.
For learning Kubernetes, there are a range of scenarios (as they’re called) to show you how to do common tasks in Kubernetes.
No registration required for some of the scenarios, and you get a cluster for 60 minutes. Highly recommended.
Go to the playground
Play with Kubernetes
Interactive - Free (sign in with a Docker or GitHub account)
Another interactive Kubernetes environment, brought to you by Docker. You need to sign in with Docker or GitHub for this one.
Play with Kubernetes
Red Hat OpenShift Learning Portal and Red Hat Developer Courses
Interactive - Self-paced - All levels - Free (some scenarios require registration)
If you want to learn OpenShift, which is a distribution of Kubernetes, then try this interactive web-based terminal from Red Hat.
You can choose to follow various different missions, or just choose the OpenShift Playgrounds, which gives you developer access to an OpenShift cluster for 60 minutes, to do what you like.
Or, for a more developer-specific learning path, choose one of the Foundations of OpenShift scenarios on Red Hat’s Developers site.
Do a free OpenShift course
Using Kubernetes well: Architecture and best practices
You’ve taken the beginners’ tutorials and you’re ready to start putting your applications onto Kubernetes?
Then check out these resources, which I think summarise all of the great knowledge we have around how to design and architect your applications for a container platform like K8s.
The Twelve-Factor App Methodology
Website - Intermediate - Free
The Twelve-Factor App methodology is a set of principles for building SaaS applications, which are commonly also applied to modern, API-first, cloud-native apps.
Kelsey Hightower wrote an interesting blog in 2015 about applying these principles to Docker containers:
Docker and 12 factor apps are a killer combo and offer a peek into the future of application design and deployment.
The idea of The 12-Factor App is to make sure your applications are portable, and this is crucial when deploying to a cloud platform, whether Kubernetes or any other.
It encourages many good practices for architecting your apps for a cloud platform like Kubernetes, such as externalising your application configuration and moving state outside your application.
Read the 12 principles
Kubernetes Patterns by Bilgin Ibryam and Roland Huss
Ebook (PDF) - Intermediate/Advanced - Free (registration required)
This book, published by O’Reilly but currently being distributed free by Red Hat, is written by two authors who know Kubernetes very well. In the book, they introduce the main patterns that you will use with Kubernetes, plus lots of practical examples.
Why are patterns important? Because it’s tempting to stick with old-style approaches to application design, like brittle VMs and manual configuration. But when you move to a cloud-native platform like Kubernetes, you need to think differently.
Topics include: how to create cloud-native applications, how to manage containers, how to apply configuration and more.
Download the book
Kubernetes Failure Stories
Website/Curated links - Intermediate/Advanced - Free
Are you the type of person who likes to learn from others’ failures? Constant success stories can get a bit repetitive and it’s nice to see that failure is not only a common occurrence, but many companies are happy to share their failure with others.
This website curates all the public post-mortem and Kubernetes failure stories, from some pretty big names, like Skyscanner, Spotify and Free Now, the taxi app.
From Kubernetes failure stories involving cloud outages and production outages to accidentally deleting entire clusters, this list of links provides a lot of good reads for Kubernetes administrators. If you’re managing a Kubernetes cluster, you should check this out.
Read failure stories
Over to you
There you have it! Lots of resources to help you learn Kubernetes, ranging from comics to cheatsheets, and tutorials to hands-on exercises.
If you found this list useful, please share with your social network or your colleagues, every little helps! Thanks.
Got any thoughts on what you've just read? Sign in with your GitHub account and leave a comment.