Beginning of a home lab journey
For the last four years, I have been running a small home lab environment where I got to test and play around in an unrestricted way with various technologies. It was a humble setup running Proxmox VE on an HP Z800 workstation.
I had my own Jenkins pipelines, Kubernetes clusters, OpenStack Clusters, and anything that came to mind and which I thought would be cool to try (and with root access and no consequences) and for some time this was a lot of fun. I learned so much playing around with that environment and got to try out so many odd setups I wouldn’t even have dared to suggest at work.
Eventually, this fun hobby started becoming a bit of a mess. I lacked visibility over so many things, performance was disappointingly bad, monitoring was chaotic and I had no alerts, Infrastructure as code was lacking or almost non-existent. The lab was not exactly ‘planned’ in any sense but was rather a series of spontaneous projects which sometimes resulted from an article I read somewhere or a fun discussion I had with a friend. Keeping things up to date and functional started to become a hassle and I no longer enjoyed how tedious it had become, trouble-shooting involved a lot of manual work which reaffirmed my suspicions that this project cannot scale any further and is already no longer sustainable in a healthy/fun way.
I was at a fork in the road, I had to pick between completely abandoning the project or trying to salvage something out of it and try to “fix” it. I mean that was healthier for me. I had decided to give myself time and shut down the home lab for a couple of months and maybe, eventually come back to it. Several months later, I came back to it and decided to go for a fresh start, I made sure the personal non-reproducible data is backed up somewhere safe (S3) and wiped everything clean.
Okay, clean slate! what to do now? Do I run Proxmox again?
That seemed to be pretty reasonable and after looking into what the folks in r/homelab are doing it seems like Proxmox remains one of the top contenders, especially among opensource offerings. OpenStack came in a close second but the overhead of managing an OpenStack cluster was a little bit too much for what I had in mind. Not to mention the diminishing popularity of OpenStack recently as shown below.
Before committing though, I wanted to dig a bit deeper into how reliable/flexible is the automation support in Proxmox. Thankfully, it seems like the terraform provider for PVE is good enough at least for basic automation, things like automating the creation of Virtual Machines and containers.