I have been following along with Kubernetes for the past few years. This year I have been paying more attention and have decided to pick up Kubernetes and give it a try. To get started, I picked up the audiobook version of The Kubernetes Book by Nigel Poulton. There's so much reading material available that I wanted to start with a good audio resource to digest as I finish moving out of our old house. I am only halfway through the audiobook, but it has proven to be a great resource at learning some of the basic concepts. Those Kubernetes manifest files seem a little less daunting and I'm hoping to write and share about my journey as well.
Playing with Kubernetes
My main reason for the delay was the cost of having a Kubermetes playground. Kubernetes requires a series of nodes within the cluster. You need at least one master node in a Kubernetes cluster to perform all of the orchestration operations. That means you need a minimum of two virtual machines in a cluster.
There are a few ways to play around with Kubernetes.
Docker for Desktop
For those of us running macOS or Windows, the Docker for Desktop application can run as a single-node Kubernetes cluster. You can still use Docker as normal for managing containers and Docker images. However, Docker will not be able to manipulate containers (pods) started by Kubernetes.
minikube allows you to implement a local Kubernetes cluster. I had heard of MiniKube but never tried it out. I have limited disk space remaining on my devices and constantly have to wipe out Docker's disk. minikube sets up a virtual machine that runs your local cluster.
Play with Kubernetes
The Kubernetes Book made me aware of a Kubernetes playground! If you visit https://labs.play-with-k8s.com/ you can log in using your GitHub or Docker Hub credentials to receive a sandboxed Kubernetes environment for four hours.
This is exactly like Simplytest.me which spins up sandbox Drupal environments.
However, I went to DigitalOcean. Thanks to DigitalOcean's managed Kubernetes service, I have been able to get off the ground fairly easily. DigitalOcean is the most cost-effective solution as you only need to pay for nodes which will host your application. I have a single-node cluster that has a load balancer and object storage. All together this comes out to about $25 a month.
Jeff Geerlings Dramble
What I really wanted to do is build a Raspberry Pi Dramble, a creation by Jeff Geerling. The Pi Dramble is a Kubernetes cluster running on a series of Raspberry Pis. The entire products list is outlined so that you can build your own: https://www.pidramble.com/wiki/hardware/pis. I just know that I would end up buying all of the equipment and six months later I still would have components in their boxes. I'm hoping to build one during winter break this year and spend the years-end on heavier Kubernetes experimentation.
Want more? Sign up for my weekly newsletter