Skip to main content

Why HomeLab

Steffen Skui
Author
Steffen Skui
Working in IT in the private sector, spending free time on automation, self-hosted services, and small homelab experiments. Father of two.

Introduction
#

Why I mean you should you have a HomeLab? What makes a “Lab” so great? How I built mine “beyond just the technical aspects”.

Why
#

Why should you have a LAB?
#

Why should you have a LAB? Well, the truth is that no one should tell you why you need a LAB, but I have some arguments for why you “SHOULD” have one. One reason is to learn, explore, and develop yourself.

I work in IT today, but that’s because I experimented and learned different technologies while I was working in construction and transportation. I simply had IT at home as a hobby.

A LAB and self-hosting are two different things, but they often go hand in hand. Most of us who have a LAB also self-host some of the services we use daily. This also puts pressure on us to keep things “live”. We depend on them working. We must handle backups, updates, troubleshooting, and restores ourselves. Monitor security and maintain documentation.

This gives us a mindset that can provide an advantage in IT. If you have a LAB and understand the entire chain of a service, you have an advantage in understanding what to troubleshoot and how.

In a LAB, you can break a service, restore it, and try again. That’s the whole point of a LAB. It’s the best way to learn, even after you have an IT job. You can’t test in “PROD”. “Although you could argue many do”

How I built mine
#

I wrote about the hardware I run in this post, but how do I think and use those hypervisor nodes? The setup is 3 nodes that are equal. I could have an HA setup “High Availability” setup. But the fact is I do not have the network infrastructure to make this a viable setup. I would at least need 10GB network before I consider that kind of setup.

So I have 3 Nodes:

  • Node 1 is currently used for hosting gaming related servers - Terraria, Longvinter, Vrising, Valheim, Enshrouded, Scum, and more.
  • Node 2 is my production server where I host the services I use everyday and rely on - Git, among others.
  • Node 3 is the “DEV” server. Where I test different applications and work on things that may break sooner than later.

And I use the backup server “PBS” on schedule or manually triggered to have a good restore point.

But what about everything on Node 2? Good question, Node 2 is a “PROD” server for me, BUT there is nothing too “Critical” on there. If I need super uptime, I host outside the home.

Yes, a LAB can be outside your home, and you can self-host outside the home. As long as you are the one responsible. So the services I depend on to be “online” and “exposed” 24/7 I host outside on different platforms - VPS providers, CDN services, and cloud infrastructure. You can read more about how I host this site for an example.

Experiences so far
#

I love that I have a LAB. I have setups I am a little “afraid” to break, and I have setups I actually don’t care about. I stay curious and look for equivalents to what I encounter at work to test and play with at home. The satisfaction when you break through a new “chapter” in your tech journey. Understanding a concept or getting something to finally work you have been trying for a long time. Those are the times I am all in it for.

Have you started?
#

The next step if you don’t have a LAB is to get one. NO it doesn’t need to be overpowered. Mine is, and that is just because I have gotten every hardware donated. And most hardware is in some way overpowered. Just start. An old gaming or office box, a laptop. Anything. As long as you start. What to start with? Whatever you are curious about. But if you want to learn:

  • Virtualization
  • Docker / Kubernetes
  • Proxy / VPN setups
  • SSO - ID providers
  • Git
  • SSL
  • Network and Routing

Those were some bullet points on what can be useful

The road ahead
#

My next focus areas are:

  • Improving monitoring and alerting (moving beyond basic uptime checks)
  • Expanding automation with more CI/CD pipelines
  • Better documentation of lessons learned
  • Testing new infrastructure patterns in Node 3 before production

This site serves as living documentation that will be updated as the LAB evolves. Each experiment, success, and failure gets documented here. If I find the time between everyting.

  • Steffen