3D Printing My New Server
Monday 09 February 2026
Background
I've had several home servers, for the past 10 years or so, starting with my old Dell Dimension desktop PC running Windows XP, and ending with my current Proxmox setup. Somewhere in the middle there was a highly available Citrix XenServer cluster that was broken more often than it worked because I wasn't in a position to afford a SAN so faked it with GlusterFS running on all the nodes.

The last iteration of my server has been for the last few years, a HP Microserver Gen 8, which started with VMWare ESXi, but later got swapped out for Proxmox. It's main purpose has always been a NAS, firstly running as an off-site backup for my university work, and later on-site, backing up my PCs. It also runs any services I need to build projects, automate my home, and anything else I feel like playing with. The Microserver is great, it's small enough to run at home without needing to dedicate a whole room to servers, and light enough on the power bill that it's actually worth it over paying for SaaS platforms that do the same tasks.

Recently, I attempted to spin up a new VM using Rocky Linux 10 to find that the CPU in the Microserver, an aging Intel Xeon E3, was no longer supported with no simple way to get it to boot. That, paired with the hard limitation of 16 GiB of RAM prompted me to start looking into new hardware.
Options
Initially, I really wanted to stick with "real" server hardware as it provides a few nicities, ECC memory makes crashes much less likely (an issue that plagued my old desktop hardware servers which all used DDR2 memory), iLO (HP's name for IPMI) makes it much simpler to sort out when things go wrong, and monitoring the hardware is much simpler to name just a few. I do have a rack, but it's not full depth and is in a small cupboard in my living room, so depth and noise are things I really need to consider. Initially, I was attracted to the SuperMicro SuperServer short depth servers, but these seem to be a little rare, making them expensive when they do come up. I was also a little concerned about noise given the 1u form factor, even running my 48 port HP switch has proven annoying in the living room.
The remaining two options I considered were a standard PC case, that would just about fit into the rack on it's side. Or a mini-PC. After some consideration (and inspired by this 3D model) I opted for a Lenovo ThinkCentre M710q. This is missing a couple of features of the M9xx series, but nothing I'd miss. Mostly a full size PCIe port. I also opted for a 7th Gen Intel chip to take advantage of the plummeting prices of anything not capable of running Windows 11, my servers are almost exclusively Linux.
An aside on ECC
I mentioned previously that my old DDR2 systems had been plagued with crashes due to non-ECC memory. I still believe that was the cause, however while DDR4 does lack the on-die ECC of DDR5, it seems to have much better internal error correction as I've never seen a DDR4 system suffer a crash that looks like bad RAM. That, combined with the fact I'm running the system on a UPS, with regular backups taken to other locations means I'm happy to run this machine without ECC.
Building
Once the mini PC arrived, I needed to figure out how to connect some more hard drives to it. The microserver had a 4 bay SATA backplane which I'd been using for a ZFS array. With the new setup, I wanted a way to expand this so that I could use RAIDZ2. I opted for a 6 bay backplane, connected using an NVMe SATA controller:
I set these up temporarily on my bench to verify that I could get these items to play nicely together.

After chasing my tail for far too long not realising that the hard drive I was testing with was dead (I have since turned it into fridge magnets), I verified that I could boot Proxmox on the mini PC, and that drives connected to the controller would show up.
Brief word of warning: I have heard bad things about these ASM1166 controllers online. Mine seems to be working fine, but it seems like they can be a bit of a lottery so use at your own risk.
The only major issue to solve now was the somewhat annoying way SATA drives are powered. I wanted to use a single power supply to minimise cable mess in the rack, but SATA drives need both 12v and 5v rails. It's worth noting that for the most part with 2.5" drives, you'll get away with only powering the 5v rail, but some features of the backplane I bought also require the 12v rail to be present. Plus I figured I have no idea what drives I might put in this thing in the future, and I'm told some drives do require 12v power. To work around this, I bought a high power buck converter (6 drives could theoretically draw somewhere around 12A at spin-up, although I suspect that's unlikely to be for any sustained period of time) and built the following circuit:

With all this working, the next step was the case. My design methodology is pretty much to imagine the thing in my head, and design as I go which is arguably a bad idea for a project of this size. I modelled in several parts and ended up with this design:

Despite appearances to the contrary in the image above, I can't print this in one piece on my BambuLab A1 Mini, so I split the main case into 3 parts. This leads to some ugly glue joints, but I'm not too concerned about that given the thing lives in a rack full of other things that aren't aesthetically pleasing. If there is ever a situation where that bothers me, I may look into experimenting with filler and paint to smooth these out. I also have some joints that aren't completely aligned due to the warping that always ocurrs when 3D prints cool.
Despite this, I'm quite happy with the outcome

Software
This isn't the point of this post so I'll be brief. I was very impressed by how easy it was to get everything migrated over to the new server in Proxmox. I installed PVE 9 on the new server and added it to the existing PVE 8 cluster. That left me free to migrate all my VMs across. I even suffered a power failure since the new node was just on my desk not connected to a UPS, and no data was lost. I completed most of the migration from the sofa using my laptop while watching TV.
Future things
So the new server works, I do have a few things to improve upon later
-
Noise
I was aiming for quiet, and for the most part have achieved it, but the fan built into the SATA backplane is a little cheap sounding so I'm not sure how long it will stay quiet. It uses a non-standard connector but I suspect it should be possible to mod it to use a Noctua fan. Time will tell if I ever get to that.
-
Heat
It's currently winter in the UK which means my flat gets to a maximum of about 20°C. I'm a little concerned that in summer, when the server cupboard can be upwards of 40°C that the PLA I've used to print the case might start to warp. If that happens, it does. I knew this was a risk when I printed in PLA, but I didn't want to waste a load of more expensive PETG on a design I didn't know worked. If I get any significant warping I'll re-print in PETG which should solve the problem albeit requiring an annoying rebuild of the server.
-
IPMI
I mentioned the loss of IPMI up above. I do think this is a problem, so I intend to buy something like Sipeed's NanoKVM to bridge the gap.