This post has been in my drafts since 2018, so I'm publishing it before I forget.

You certainly have heard of Kubernetes. My stance on it is that it won't hurt you to do a little research about it even if you don't use it, considering how widely used it is now in the industry. However it's probably overkill for the majority of companies, so while many resources about k8s describe it as the tool that will solve all your problem, it is not true.

I wish I could find more resources like the ones below that actually explain the concepts and not throw random words at you while expecting you to understand.

There are a lot of concepts and vocabulary in Kubernetes, so the learning curve is rough.

Even if you're experienced with containers and Docker, it's difficult to understand how Kubernetes works because there are many layers of abstraction.

I've been learning Kubernetes for a while now, and the best advice I can give you for now is: read blog posts, tutorials, documentations, watch videos, talks and experiment, again and again.

First step: get comfortable with Docker

I've known some people that jump right into Kubernetes without even knowing how to launch a Docker container. This seems super ineffective to me, so I'll advise you to learn Docker and get comfortable with. It's a different paradigm that physical machines and VM, even with configuration management, but it's not that hard to understand.

If you don't know what a stateless application is or how to build a Dockerfile, it will be that much harder to understand the inner workings of k8s.

Video resources

Containers and K8S basics by IBM

Actually, by IBM FSS FCI and Counter Fraud Management, whatever that may be. They have a YouTube channel with very few views, but they're short and extremely clear.

Here are the videos (there is no playlist):

This man deserves more recognition!

Kelsey Hightower

Here are two of Kelsey's conferences about k8s. It's the best speaker I've seen and he will make you want to use k8s even if you don't have anything to run.

Other videos

Text resources

Getting started & tutorials

Learn Kubernetes on DigitalOcean
Over 30 of DigitalOcean’s Kubernetes resources and guides, all in one place

Minukuke is the go-to solution to test k8s on your own computer.

Setting up Ingress on Minikube
Hosted Kubernetes instances, especially on GCE, come with a certain number of features and configurations out of the box unlike Minikube, the local development platform for kubernetes. Although…
kelseyhightower/kubernetes-the-hard-way
Bootstrap Kubernetes the hard way on Google Cloud Platform. No scripts. - kelseyhightower/kubernetes-the-hard-way

This is my favorite:

hobby-kube/guide
Kubernetes clusters for the hobbyist. Contribute to hobby-kube/guide development by creating an account on GitHub.

It worked!

Kubernetes on bare metal

I'd advise to run k8s trough managed services on cloud providers. Most of them have one now, including the big names like AWS and GCP but also cheapers alternatives like OVH and Digital Ocean.

In case you want to run a proper k8s cluster yourself, here are some links I kept:

Kubernetes On Bare Metal
Table of Contents Goals Options Servers Init Scripts NFS Server Master Node Worker Node(s) Pod Networking (Flannel) Kubernetes Dashboard NFS Storage Class Installing Helm Installing Heapster Installing Traefik Private Docker Registry Configuring Credentials Deploying Your Applications Integrating w…
Kubernetes FAQ: How do I configure storage for a bare metal Kubernetes cluster?
In this post we explain why managing your application state can be tricky and how by using persistent volume claims, you can easily manage storage on bare metal Kubernetes installations.
Kubernetes NodePort vs LoadBalancer vs Ingress? When should I use what?
Recently, someone asked me what the difference between NodePorts, LoadBalancers, and Ingress were. They are all different ways to get external traffic into your cluster, and they all do it in…
Kubernetes FAQ - How can I route traffic for Kubernetes on bare metal?
Bare metal, on-premise installations of Kubernetes can be challenging. A frequently asked question is how to route traffic in Kubernetes. This post discusses the different traffic routing methods and the pros and cons of each.
Choosing a CNI Network Provider For Kubernetes
Choosing which CNI Network provider to deploy in Kubernetes

Other

To run or not to run a database on Kubernetes: What to consider | Google Cloud Blog
It can be a challenge to run a database in a distributed container environment like Kubernetes. Try these tips and best practices.
ramitsurana/awesome-kubernetes
A curated list for awesome kubernetes sources :ship::tada: - ramitsurana/awesome-kubernetes

Kubernetes for your personal projects

You might not need Kubernetes

Or so said Jessie:

You might not need Kubernetes
Why use something bloated when you could use something minimal.

Related articles:

Will Kubernetes Collapse Under the Weight of Its Complexity? | Blog | InfluxData
A few weeks ago, I attended and spoke at KubeCon EU. It was a massive event attended by around 4,700 people...However, I felt there was an underlying problem with the whole spectacle: everyone I talked to was either an operator or an SRE. Where were all the application developers?

Kubernetes failure stories

k8s.af is a list of failure stories that happened on a k8s infrastructure. It's interesting because you get to learn more about the different types of implementation (since there are so many), and it will probably cool down your excitement about the new cool tech and make you realize that complexity comes with a cost.


That's it. There are millions of resources on the web about k8s, but these are some that helped me. I hope they will help you too!

I still don't know much about Kubernetes despite having worked on multiple clusters at my previous job, but at least I can pretend like I do: