Setting up a Home Lab Part 1 - Hardware

in #hardwareyesterday

After meeting a heap of cool Hiveians at HiveFest10, and Jason Chew who's been raving about Umbrel OS to run a bitcoin Node, I have been more motivated than ever to re-engage in my home lab.

In the era of endless subscriptions, it made a lot of sense to setup a home server for many reasons:-

  1. Privacy is a forethought, not an afterthought - In addition to paying for services, we also sacrifice our privacy by putting up all our information in the cloud for the sake of convenience, and have little control over the direction of these cloud service providers

  2. It's fun and cool to have your own home server as you can learn how to actually set one up for yourself and be unchained from perpetual cloud services

  3. You only pay once for the hardware, and recurring electricity bills (well at least until your hardware croaks, or upgrading your infrastructure)

I had some old hardware lying around, and thought to myself...let's reuse the old hardware that has been abandoned for at least 7 years. Thus the journey into the endless rabbit hole begins!

While taking the opportunity to clean up my home from old stashes of old technology, I found my old IBM servers (X3100M4 and X3500M3), which despite spending days trying to resuscitate these servers ended up in frustration. The motherboards wouldn't boot for whatever reason, and despite doing everything in my knowledge (changing thermal paste, changing CMOS battery, resetting CMOS settings, and countless other tests) the servers refuse to post into BIOS. I was close to smashing them apart and sending them to the junkyard. Cool heads prevail, and eventually I decided to gut them out like a butcher cleaning the innards of an animal in preparation for cooking.

The Victim - IBM X3100M4

Exhibit A

This machine is a Micro ATX casing with 4 PCIe brackets, with 4 HDD drives and a SAS backplane which makes it an ideal candidate to be stuffed with a new motherboard. First we have to remove the motherboard.

Motherboard removed

This motherboard was actually pretty decent, and I would've just kept it as is if it didn't decide to just fail. Looking at the board, it doesn't look like there's any damage. My only suspect at this stage is that the BIOS has corrupted or one or some of the parts on the board has failed and repairing it would take considerable time with uncertain possibility of revival.

IBM X3100M4 Motherboard

Now that the motherboard is removed, this fan grill has annoyed me for a long time. It made a whistling sound when the airflow is high. It's time to take out the dremel and remove this abomination.

Fan Grill

After a good hour of elbow grease, and a carbide wheel and dremel, the grill was finally removed. Looks much better now.

Fan Perforated Grill Removed

Now that's all done, it was time to fit it out with a new motherboard. For this subject, I have chosen to fit it with a cheap Chinese motherboard that was going on AliExpress for $55 including a Xeon 8 core processor.

New Motherboard In

Much to my dismay, as I was trying to fit the I/O panel in, the IBM engineers decided to design this casing with a non-standard I/O panel! UGHH! The only option left is to stick on the I/O panel with double sided tape. The ultimate solution to all woes. And the front panel buttons had a custom motherboard header, which means I can't use the existing power button, power LED, and HDD LED without cutting up the original and crimping a new set of headers. This is something to leave for later down the track...Just gotta have a power button with some other old stuff lying around...

Now to reassemble everything back together, along with the double sided tape to stick the I/O panel to the casing's exterior.

Assembled Rear View

Now that everything is in place, it's time to move on to the software which will be in a new post.

For those of you thinking of setting up your own home labs, here are some learnings from my research that took too much time. I hope it'll help you shorten your time needed to get one up and running.

  1. All in One (AIO) or custom built - Not all of you would have an old computer lying around, if you do it'll be the perfect stealth build! One of the big questions would be should I just buy one or build one? There's obvious benefits to building one over buying one especially if it's a new machine. I would prefer a custom built machine, as I would like for the server to be upgradeable (memory, storage, PCI cards). If you just don't want to mess around with hardware, an AIO is perfect. If you decide to build one and it's your first time, be mindful of electrostatic discharge from handling electronics, and make sure you don't damage any components by accidentally jabbing your screwdriver on the sensitive electronic parts, or handle the motherboard roughly. Treat it like a prized possession.

  2. Computing Processor Unit (CPU) - These days there's many options to choose from Intel and AMD, or ARM. Personally I like to use old server hardware instead of consumer parts because they are more stable, have more processing power or memory capacity but they aren't likely great for gaming if you decide to use it for a workstation. They will work well, just not exceptional if you're intending to run them at ultra high 4K. If you're looking for performance for cheap, my recommendation is to find a used Xeon processor as they can have 8-22 cores for cheap.

  3. Motherboard - To pair with a processor, you'll need a suitable motherboard. Take note that motherboards only accept specific processors based on their chipsets and processor sockets. Xeon processors have found a new life with Chinese manufacturers reusing old chipsets from enterprise servers and soldering them Frankenstein style in a brand new motherboard. These can be found fairly cheap on AliExpress, Amazon, or eBay. Personally I have tested with Machinist and Huananzhi and they left me pretty impressed. For the amount of money paid, you can easily setup a machine with some pretty impressive stats for less that $200. Some AliExpress vendors also pair them up with CPU and RAM so you won't need to buy them seperately.

  4. Random Access Memory (RAM) - You'll need to decide how much RAM you need for your home lab. If you ever have some aspiration to setup a Hive Witness node at some stage in the future, you should be aiming for at least 32GB RAM. If you wanna run an AI home lab, you'd be looking at at least 128GB RAM. Memory is getting more expensive, as Micron just announced that they will be discontinuing the Crucial brand, which will push prices up for RAM and SSDs. Right now you can get DDR3 memory for cheap, like less than $60 for 64GB, while DDR4 will set you back about $200 or more for the same amount.

  5. Storage - How much storage do you need for your home server? SSD or HDD? Solid State Drives (SSD) use flash memory and are much more expensive than the traditional hard disk drives (HDD) which uses spinning magnetic platters to store information. SSDs have much higher performance than HDDs, but you'd be expecting to pay top dollar for them. You can also opt for second hand enterprise HDDs which have better longevity compared to consumer HDDs. As a guide, you'd be looking at $13/TB for second hand enterprise HDDs, while for a new consumer HDD, you'd be looking at $25/TB. Ideally you'd want to have at least 2 of the same drives, to setup redundancy, in case one drive fails, you won't lose all your data.

  6. Power Supply - This is very important as the power supply provides stable current to all the components in your computer. If you intend to run the machine 24/7, it's best to look for one with 80 PLUS rating on them. Most power supply units come from 550W onwards, and is sufficient for a server setup unless you plan to run high powered graphics cards on them for AI workloads. Add 300W for each graphics card you plan to include. E.g. For one GTX5090, you'd be looking at a 850W power supply to have the best efficiency.

    Source: CoolerMaster website

    What this 80 PLUS rating means is that the input you have on your machine translates into 80% output of usable power. So if your system needs 500W/hour, with 80% efficiency, you'd be consuming 625W on the power outlet. At $0.40/kWh, you'd be roughly paying about $0.25/hour to keep your machine running.

  7. Casing - If you have an old casing, this would be perfect as the older casings are FREE, and they tend to allow many drives to be fit into them. The newer casings all prioritise aesthetics with fish tank glass/acrylic side panels meant for showcasing internal parts, but tend to only allow 1-3 HDD/SDD drives. If you wanted to put in an old DVD writer, tough luck! Computer casings can be anywhere from $30 to $300, depending on their brand, build material, and drive layout. NAS casings are not surprisingly more expensive.

  8. Router - This should normally be provided by your internet service provider and should contain enough to run your home server or lab without needing additional hardware, but if your router is locked by your provider, or lacks the functionality to access the admin panel, open up ports, setup firewall rules, or doesn't have any ethernet ports, you should look at adding a router/switch or replacing your ISP's one.

And that's it. With these you should be able to build your own home lab. Hope this post has been useful for you and stay tuned for the next article where I will share more about my journey experimenting with software.

Sort:  

i use proxmox for my home lab , plannning to run my backup witness on there soon :) enjoy your homelab .

Congratulations !!
You have been manual curated and upvoted by @ecency



Did you know that @stresskiller is also a witness now ?

I’ve been using ProxMox too. It’s actually really good. It’s not as easy to use as ESXi but given the licensing changes, it’s by far the best option now and LXC containers are so good!

i have my router running on proxmox , i use pfsense still working on amoving all my docker servers from synology NAS to proxmox