I use my desktop PC for Jellyfin and torrenting, but I'm looking for something that I can keep on 24/7 that draws less power and run other self-hosted services on Linux. I would like to have at least 2x 14 TB 3.5" hard drives in or attached to it with the possibility of expanding in the future.
From my research, these seem to be some good options:
Mini PC like this Beelink S12 Pro + USB hard drive enclosure. The price seems reasonable for the specs and low power consumption. Not sure if USB will limit transfer speeds.
ODROID HC-4 or similar SBCs. I feel like these have much lower performance for not much price savings, and it's harder to get software running up because of ARM. But it seems like they don't use too much power.
Used enterprise PCs/servers. I know they can be found cheap used, but I'm a little lost at comparing the performance and power draw to other options.
DIY build. I'm interested in getting a Mini-ITX case like this Jonsbo N2 and getting parts for it, but it seems like it will be the most expensive option. It does seem like the most modular and upgradable.
Classic NAS products like Synology. It seems like these are falling out of favor because they are pretty under powered for the price.
What does selfhosted think about these options, and what would you recommend?
For the money: Used sff like an optiplex 7050 or similar for $100. Typically <20W, real computer performance, can handle a bunch of ram, pcie accelerators depending on what you get into. Add a multi drive enclosure for more storage when needed.
This is what I did and I love it. I will add that sff is bad for upgrades. I wanted to add a gpu to mine and now I have to buy a larger case to put it in.
As I always say, have a look through https://forums.serverbuilds.net They have tons of guides on building whatever you need at whatever price point you can afford. The NAS Killer 5.0 is pretty great and I went with a second box for transcoding. Both low power and pretty cheap.
Check out ServeTheHome's "Project TinyMiniMicro" on Youtube for a great overview of ultra-small form factor ("1 liter") business PCs.
The big three PC makers each have standardized products in this form factor with (relatively speaking, compared to smaller manufacturers) tons of spare parts available.
I hate to admit that I love using these micro business computers, but they're pretty awesome. Stackable, powerful, upgradeable, cheap second hand or refurbished. I've considered nucs, but you can find buckets of these for cheaper.
I set myself a budget of ~€150 and eventually settled on a Lenovo Mini PC with an i5 and 8 GB of ram for €160 including shipping. In retrospective, one of those Beelink mini PC's would have been a better option, they use significantly less energy and have a better performance/price ratio.
I feel like a loser after reading some of these awesome setups, but i just use an rpi4 4gb. It's enough for 1-2 ppl casual use as NAS, media server, nextcloud, pihole, and a few other things here and there. I have USB hub with it's own power supply because if not the hard drives lose power occasionally. All in all it's like 20W max but usually under 10. Best of all it's completely silent.
JONSBO N1 Mini Itx Case
5 HDD (Size of your choosing)
Mini Itx MB AM4 ~500 Series
Best/Cheapest Amd Processor with GPU (I got a R7 3800G)
350w Itx PSU
RAM of your choosing
I use 2.5GBE for my network, so I just got a USB to 2.5GB Ethernet Adapter. So make sure the Mobo has USB 3.1 or 3.2, or a 2.5GBE Port. I bought most refurbished, or clearance. If you really wanna go crazy transcoding, you can pickup Tesla P4s for cheap on Ebay.
It's low power, small, and powerful enough to run the whole suite of Arrs*, Jellyfin, Jellyseer, etc., etc.
I just decided to bite the bullet on paying for a Synology DS920+ and I don't regret it at all. For media hosting on my scale, 4K direct or 1080p transcodes to 6 or less concurrent streams, it does everything I need it to do and it has pretty decent software.
Only problem that I have with mine is it just doesn’t have the power to transcode audio flawlessly. I have a lot of DTS content and it just stutters all the time. I had to set up a Tdarr pipeline just to add EAC3 tracks to everything.
I have not experienced this with any lossless transcodes and my friends streaming remote haven't said anything about it. What client are you using to watch media?
My home server is a RockPro64. I didn't specifically buy it for that purpose but since I had it lying around I figured I might as well use it.
It has a PCIe Slot which I used for a SATA controller, with two 3,5" HDDs.
They have an official NAS case for it too, not sure I'd recommend it as it's kind of expensive, doesn't isolate HDD vibration / noise at all and isn't very convenient to service (to replace the drives for instance).
I'm not aware of a better case option for this board though.
I run debian and OpenMediaVault on it (I didn't have to mess with the kernel or device tree at all), with the ZFS plugin, and several docker containers (Jellyfin, PiHole, Syncthing, Tailscale).
For my needs it's working perfectly fine and doesn't need much power.
But:
It isn't particularly great at video transcoding
4GB of RAM isn't a ton especially with ZFS, keep that in mind if you wish to run more / heavier services such as Nextcloud
being ARM based, this board basically limits you to OMV or manually setting up stuff on Linux through the CLI, as TrueNAS, Unraid and Proxmox only support x86.
OMV is fine for it's core functionality and you can get some more advanced features through plugins, but at that point it often gets kind of janky and annoying compared to e. g. TrueNAS. Also, the KVM plugin apparently doesn't work on ARM.
TL;DR these low power ARM boards are just fine as a cheap option for getting into homelab / Self hosting and I wouldn't necessarily recommend against them, but sooner or later I want to build a low power x86 based NAS with more RAM, SSD cache and TrueNAS Scale instead.
Depending on power prices in your country I would take that into strong consideration, while some server or desktop grade hardware might be technically very good, they often have high idle power consumption without offering greater functionality.
Yeah, the power prices in my city are really high (USA). They're even higher than Hawaii, from what I've heard. That's why I'm leaning towards the mini PCs and SBC options, even if used server/desktop parts have better performance for the price.
Since Debian has added RISC-V as a supported architecture, we should start seeing most major software like Docker and KVM being packaged for it. If not, it can be compiled too.
As someone with a used 4U server... the noise, weight, cost, poeer consumption all are an inconvenience generally. I now have some mini PCs and I wish I started small and built up, rather than trying to treat myself with the best single solution possible.
My $0.02c worth - I have run all sorts of servers at home over the years, and one of the main challenges around the hardware is managing heat.
I’ve used mini-ITX mobos and tiny cases for builds. They look gorgeous, but at some point, when you stick enough drives in there (assuming you can) or make the CPU/GPU busy, you are going to have a heat problem, or a noise problem, or both.
On my mythtv build I used M-itx and a gorgeous Lian Li small case. It was a beautiful add to my home theatre stack, but in the end I drilled a ton of small holes in the top and added a slow 140mm fan to control the heat without noise.
The same goes for my file server - it was a slightly larger case with no GPU, but once I added my 6th HDD and had a ton of services running, heat became an issue and I was having to add extra fans, which could only be 80mm so they ran fast and noisy.
My new build I’m going to go all the way with a Phanteks Enthoo Full Tower and a few 120mm fans. I’ve decided that looks don’t matter
The other problem for me with these tiny builds is cable management. I’m complete shit at it, and small builds requires some skills. A big case gives you space to spread those cables out.
Lastly, you can get ATX or EATX mobos with 6, 8 or more SATA connectors - room for growth! And there are very low power options available.
I’ll soon have the appleTV + TV upstairs, laptop in the office, and the monster server downstairs with cat-6 + Gb fibre throughout.
I had a 10Gbps USB Icy Box enclosure, speeds were ok but cooling was simply inadequate.
Now I have just built a pc with an Asus B550-Plus and a 5600G, idles at 19W with the drives in standby but with three fans active. I thought about going with a mini pc and a better external enclosure, but that would've been much more expensive and I doubt that I would've saved that much power with that anyway
There's an old adage for cars that I think applies to home servers.
Fast, Cheap, Reliable. Pick two
In my experience, SBCs take a whole lot more tinkering than I like to do. I bought a cheap matx motherboard and a second hand ryzen 2400g which has served me well. Inside a second hand htpc chassis with an ssd for the os and a couple hdds for storage. It even has a 5.25" bay I can install a drive for ripping. I'd rubbing OpenMediaVault with Docker for Sonarr/Radarr/Overseerr/Nextcloud etc.
It's probably not the cheapest to run, but it was cheap to buy and it's very reliable because it's based on x86 so the support will probably outlast me.
I have a DIY NAS... Not sure of specs any more. Some micro-atx board with a cheaper AMD CPU. All it's for is an NFS share and I use almost no resources on it.
I have a bunch of PI4 8GB and lenovo m92p tinys that I use for the compute. Their storage is the DIY NAS.
If I was starting out and planned on growing m'y setup, id go option 4. Just do an all in one thing, run everything on it. When you run out of ram/CPU consider a pi or mini like I have. When you need more disk, add it into the NAS.
If you just want something simple option 1. USB will 100% limit transfer speed but what kind of speed do you actually need? What will you run?
I think I had the misconception that USB was slower than SATA, but USB-C is actually just as fast. And anything USB 3.0+ should be faster than 1 gigabit ethernet I guess?
Theoretically, USBC 3.1 has 10Gbit/s from what I'm reading so it sounds like you're right. My concern is the chipset on the MoBo, how many lanes it has, and what it supports. I haven't looked into it but I bet this is the limiting factor. Especially if you're adding a lot of USB devices.
Yep, just an old PC that I moved into a case with hotswap hard drive bays. I also bought a LSI 9300-8i to support the hard drives.
As an owner of the HC-2, I’d say if you don’t need to transcode and you really only need qBitTorrent and Jellyfin, the HC-4 should be an awesome NAS and media host. You really only need more power when you have scope creep, and you realize you want your home server to do more and more. In any case it’s a pretty low cost of entry, should you choose to upgrade in the future.
I run proxmox on a System76 Thelio. ZFS mirror, 16 cores, 64GB. Synology NAS for data storage and backup. Dual NICs bonded with ovs for the VMs. The onboard NIC for connecting to proxmox itself. One of the VMs then rclones the backup share to rsync.net
One of the VMs is Plex/Sonarr/Radarr/Transmission. Media is stored via NFS to the NAS.
I don't like lxc containers, and my build automation works well at the full system level vs containers.
Running your services bare metal these days is insane. If I have a problem, I just restore or rebuild that purpose-built vm from configuration management. This is also a lot more flexible and cost effective vs having separate hardware for each thing.
Redundancy is also easier, should I decide it is worth the hardware investment.
I recently got the Beelink Mini S12 Pro. I'm completely impressed with its capabilities, especially for that price. I got the 16GB Ram N100 version. Great piece of hardware.
I'm running 27 different services, including the *Arrs, Jellyfin, paperless-ngx, home assistant, and even stuff like Kasm workspaces and emulatorjs.
I’m seriously thinking of getting this. Maybe the Firebat brand though as it has two Ethernet ports and it’s cheaper for me.
Have you had Pi’s? I’m currently using a pi4 4gb and wondering how it compares.
I’m also frustrated with arm as a lot of docker images aren’t working. Recently had issues with Hugo and Jekyll which needs node.js that doesn’t support arm at this version.
Yes, I have a Pi4 2GB, it's still working as a second pi hole node. That's what got me into the world of self-hosting, but 2GB is not enough for a lot of things.
I went from that to a N100 with 16GB of RAM, so the difference is huge and I think it's totally worth the money.
I haven't tried Immich, but I probably will once I have a better solution for storage.
I just have the included 500GB SSD and an external 2TB HDD, but I'm planning on getting a 4TB 2.5" SSD to put it inside the mini PC, since it has an extra slot for that.
I have a used 2016 super micro server. It was $600, has 2 18 core/36 thread cpus and 256 GB of DDR4 and 12 HDD hot swap trays. It also idles at 180 watts. Way over kill but I have cheap electricity and it's nice being able to spin up a vm with just about any specs I could want. If I got some more normal cpus it would probably burn a good bit less power.
I've tried a few of the things you mention over the years.
However, I've lately gotten into the used business PCs. The performance of even a 6th get Intel CPU more than double an RPI4 or the ATOM in my NAS, depending on how you count. Sure, it's quite a bit more power, and they have their place (RPI in the garage), but I've gotten a few SFFs that have room for multiple HDs for like $50-$60 shipped, as long as i'm patient, since I don't care for the windows license.
The CPU benchmark sites are what convinced me that more SBCs was not the solution for me.
I also tell myself that i'm recycling what could have been ewaste otherwise. I am afraid to calculate the energy cost.
I also try and ignore energy costs and prevent ewaste: my home server is my three builds back gaming PC with a lower power GPU shoved into it. Whenever I build a new main gaming PC my old one becomes my wife's gaming PC, and her old PC is rebuilt into the home server.
Can you talk a bit more about the CPU benchmarking? What sites do you usually refer to? Is score the best metric or do you look for something else as well?
It’s up to you how much you want to pay vs. how much time you are willing to sink into it. A synology is overpriced and underpowered, but you get a nice plug and play solution eith sane defaults. I went with that, fully knowing that price-wise, it’s not optimal. But I don’t enjoy tinkering as much as I used to.
If you want x86-64 support in fanless, take a look at Celeron (low powered) based industrial PCs. Qotom comes to mind. You can get a passively cooled machine. Most come with a NVMe and 2.5 slot for storage, do doing raid 1 is possible without external storage. I've bern running my J1900 based one for nearly 5 years and haven't had an issue with hardware at all.
Do you have a NAS? It can be a good way to get decent functionality without extra hardware, especially if you're doing proof of concept or temporary stuff.
My self-hosting Docker setup is split between 12 permanent stacks on a Synology DS920+ NAS (with upgraded RAM) and 4 on a Raspberry Pi 4B, using Portainer and its agent on the Pi to manage them. The NAS is also using Synology's Drive (like Dropbox or GDrive) and Photos (like Google Photos).
I've had the NAS running servers for Valheim and VRising in the past, but they require that fewer containers be running, as game servers running on Linux usually have no optimisation and/or are emulating Windows.
If I decide to host a game server again, I'll probably look at a NUC. I've done the DIY mini-ITX route in the past (for an XBMC-based media centre with HDMI output) and it was great, so that's another option.