Contain your enthusiasm
At work, I’ve been involved in projects over the last few years to deliver a private cloud experience to our users. One of the cornerstones in the latest endeavour has been to provide a solid container platform based on Kubernetes. This is quite a challenging adjustment for someone who has done primarily IT operations around traditional workloads, first physical servers and later virtual machines but still running conventional operating systems like Linux and Windows.
Kubernetes and software-defined infrastructure require a different approach to IT operations and blur lines between traditional roles. It requires developers to take greater responsibility for security and infrastructure elements and network, storage and server admins to better understand how code is built, delivered, and updated. While I’ve written some basic web applications through the years, I certainly don’t consider myself a developer, and I’m struggling to fully grasp some of the concepts and ideas.
I’m a practical guy; I need to try stuff, really use it, to fully understand something genuinely new and different. So, therefore, I decided to bring containers into my home lab and bring up a Kubernetes environment that I can test stuff on.
Running a bunch of QNAP NASes at home, the easiest and quickest way to start tinkering with containers was to deploy them using the included Container Station, which offers the Docker engine underneath. The first application I brought up here was a Crashplan cloud backup application. The person who had been building QNAP native packages of Crashplan was retiring the project, and to back up the NAS content directly, the docker image was the best-supported option. This has been running for at least a year and works very well.
Since then, I’ve added two more docker containers to Containers Station on my primary NAS. But running all sorts of containers is not what I want to use the NAS for, so I’m looking for a more suitable platform even though it’s a reasonably well-specced unit with 4 cores and 32GB RAM.
So instead of the next natural step, which would be to get something to run Docker on, I took a leap and started looking for a way to run Kubernetes. Since we’re using Tanzu Kubernetes Grid on top of a vSphere platform at work, I tried to find something similar, but without all the requirements of TKGs, which would massively complicate my little lab. After a lot of tinkering, I managed to bring up a management cluster using Tanzu Community Edition. Then I realized I really needed some infrastructure components up before proceeding with a workload cluster, so I had to return to planning for a Docker environment after all.
Which probably qualifies for its own post…