This will hopefully be the first post in a series, probably spread out over a long time about my home lab. I’m going to start of with a bit of a discussion as to what kind of homelab you might want. I’ll talk a bit about what the considerations you might need to take into account. Then I’ll talk about what I’ve gone with.
Just Virtual Machines
If you’re on a budget, starting out or just have fairly limited requirements the easiest and cheapest way to get started is to go fully virtual on your desktop. If you’re a bit short on RAM or storage, then simply upgrading your desktop (or laptop) will allow you to run plenty of VMs. If you’re stuck with Windows, then you can run virtualbox. If you’re running Linux then KVM would be prefereable, but you can use virtualbox as well. There’s also plenty of options for running networks. If you want to try out containers or clustering, again it’s totally possible to virtualise all of these things, if you’ve got a suitably powerful machine.
Single physical host
This is probably the next step up from running VMs on your desktop. These can be as cheap or as bling as you see fit. You can spend a small amount of money and get a cheap box which can run a decent amount of VMs.
Multiple physical hosts
There’s a lot of options with multiple hosts, so I’ll talk about each of them a bit. But broadly, this is probably the ‘gold standard’ of labbing. Even if you mostly work in the cloud having a solid knowledge of physical infrastructure will always be useful. At this kind of level, you probably want at least two network ports, as then you can start dabbling with lots of different failover scenarios. Also having three nodes is pretty important. You can do plenty with two and obviously it is easy to add more later on. But at three nodes (and above) you can start playing with various kinds of clustering, which is very useful.
NUC stands for Next Unit of Computing. But basically they’re very small PCs with an embedded CPUs. The mother board is roughly 10 cms by 10 cms. Mini ITXes are a bit bigger, around 17 cms by 17 cms. Surprisingly hard to get dual ethernet NUCs. When you do get them, they’re not cheap. However you do get a lot for your money. NUCs come with CPUs and power supplies, so you just need to chuck in a hard drive and some RAM. They’re great if you’re limited on space. They’re normally pretty powerful. You can stack them up nicely. You don’t have to build anything, so if you’re happy to pay a bit more and want a neat little box, then NUCs are great.
Build your own
This is also often a relatively expensive option, but there are plenty of cheap Mini-ITX boards out there, which provide plenty of ports and it is possible to get ones which have server features like management interfaces and ECC RAM. There are also plenty of Micro ATX server boards as well. If you want to build an ATX node, you can, but to be honest when you get to that point, I’d probably just buy second hand servers. If you want the
Second Hand Servers
As most places work on a 5 year refresh cycle, there’s often plenty of cheap physical servers out there. These are often very powerful and you get a lot of bang for your buck. For example, you’ll get powerful CPUs, ECC RAM, fast hard drives and the like. On the downside, most servers sound like jets when they power up. They’re also normally fairly large, so a few nodes will take up quite a bit of space. Finally, as servers normally have fairly steep power requirements to run, you’ll spend more in electricity. Homelabs aren’t normally demanding on kit, so you can often make second hand equipment last for a long time.
Single Board Computers