The Best Kubernetes Learning Resources

Abstract vector created by macrovector - www.freepik.com

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 been working with as a consultant and trainer, and I think you will 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.

So, 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.

Illustration from Smooth Sailing: A Kubernetes Comic
A gentle introduction to Kubernetes with Athena, goddess of wisdom… and containers
(Google)

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.

Screenshot from the Kubernetes Learn Basics web page
The Kubernetes website has a good starting tutorial for beginners
(Kubernetes.io)

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)

Screenshot from VMware KubeAcademy website
KubeAcademy is very thorough and free curriculum on containers and Kubernetes
(VMware)

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!

Screenshot from the AWS EKS Workshop
Learn Kubernetes on AWS, step-by-step with this workshop
(AWS)

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 eksctl tool).

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)

Illustration from the Kubernetes Up and Running book
The book includes helpful technical diagrams
(O'Reilly)

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.

Screenshot from the Kubernetes by Example website
Understand all of the core objects in Kubernetes with examples for each
(Kubernetes By Example)

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.

Extract from the InfraBuilder Kubernetes Cheatsheet
All the basic Kubernetes commands are shown on infraBuilder’s cheatsheet
(infraBuilder)

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.

Screenshot from the Katacoda Kubernetes playground scenario
You can play with a single-node Kubernetes cluster online for free
(Katacoda)

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)

Screenshot from the Play With K8s service
You can use a Kubernetes cluster for free with Play With K8s
(Play With K8s)

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.

Screenshot from the Red Hat OpenShift Learning Portal homepage
OpenShift is another distribution of Kubernetes, which you can learn online for free
(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.

Header from the 12 Factor App net homepage
The 12 Factor App is a set of architectural principles for SaaS and cloud-native applications
(12factor.net)

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.

Extract from the Kubernetes Patterns book
Kubernetes Patterns explains patterns for behaviour, structure and configuration of your apps on Kubernetes
(O'Reilly)

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.