Skip to main content

A homelab on a budget

A number of years ago, I had my own server under my desk. This was a fairly beefy (at the time) server running ESXi for virtualization, with a number of VMs for testing and development work. Back then, building a homelab meant using real hardware with, at the most, VMs on top of it. As my career in IT advanced, I still needed to keep up to date with technology, plus it’s actually a passion of mine so it’s not like I was going to stop playing around with things. But I no longer have that server. In fact, I haven’t had a dedicated server for a long time now, nor do I spend a lot of money on hardware for said homelab.

Instead, this is what my current homelab looks like:

As you can see, I utilize a number of low cost options. First, all of my Internet services such as this web site, my email server, VPN server, cloud storage and so on runs in the cloud on AWS. This has a number of advantages. First the cost is drastically lower than running my own datacenter in my home. Then, the security is better, since even if there’s an intrusion, someone can’t get in my home network from AWS. Lastly, by tweaking my own cloud environment I get to learn and improve my skills with cloud services, something that’s extremely in demand in the DevOps world.

As for my home network, the only always-on devices are Raspberry Pis. My ‘production’ system is an older Pi 2B which runs my status screen, DNS server, music, automated backups and local file sharing, while my ‘development’ box is a Pi 3B which I use for all sorts of hardware testing, playing with Docker images, Python coding and so on. The downside of using Pis is that they obviously don’t have a lot of CPU power, but I don’t run things that would require a lot of resources. The upside is that they are low cost, completely silent, low power, and very reliable. And for anything intensive like gaming I have a modern PC on which I can run VirtualBox when needed.

I always enjoy watching YouTube videos of people showing off their massive homelabs, running racked enterprise servers, but for me it’s more of an entertainment than anything else. I’ve been running this setup for many years and have never run into a situation where I wanted to do something but felt that I didn’t have the hardware resources needed for it. In fact most of my time is spent with automation software, using Ansible or custom Python scripts to do things like automated backups, web scrapping, data processing, etc. These things can easily be done over night on a Pi. With things like VMs, Docker, the cloud and tiny computers, it doesn’t make sense to spend the time, money and electricity on a large homelab setup anymore.