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?
Same question here. I’m about ready to upgrade from my 8GB Pi 4B, but I’m overwhelmed by options and lost as to where to go next.
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.
It’s not one of the options you listed, but it’s worth considering a laptop since it has a UPS built in.
- Laptop with broken screen
Perfectly server grade, the way the manufacturer intended
Amen. Also they tend to draw less power than your average cheap desktop, so it’s a great middle ground between pc and sbc
And usualy they ARE SBCs. So…
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?
Is your NAS in an old tower PC?
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.
The Thelio looks awesome, but it seems overkill for what to do and spend. I would probably do DIY if I wanted something with the specs of the Thelio.
Why VMs?
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.
While you are correct with insanity of running bare-metal, this argument is manipulative. Indeed, no sane person will ditch existing kernel(e.g. Linux of FreeBSD) and write one themselve, running program in common OS is not bare-metal.
Another manipulation is VM vs per-dervice dedicated hardware.
Redundancy is also easier, should I decide it is worth the hardware investment.
Same thing valid for regular userland.
I suggest you to look at SBCs:
- RockPro64
- Quartz64
- And many others
I don’t find running them problematic, but this is maybe because I have crossdev on gentoo.
Here’s how to install distro on sdcard for SBC:
- Partition sdcard
- Make devicetree file
- For most SBCs dts files are already made
- Configure and install bootloader(e.g. u-boot)
- Unpack base system to sdcard
- Configure, compile kernel and then copy to boot partition(can be shared with system, bootloader must support FS)
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.
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.
Yeah, the mini PCs look great. How do you have your storage set up?
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’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.
Have to tried Immich on it?
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.
Here’s what I did…
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.
There is no 3800G afaik
You are correct. It was a R5 5600g, sorry bout 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.
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.
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?
There are lots of them out there.
For example passmark is one of many.
https://www.cpubenchmark.net/cpu_list.php
I just go find my CPU and use the number to compare to eBay listings. Is it perfect? No.
But it gives you an idea. Each site has some set of algorithms and they get a score for how quickly it can execute on that hardware.
Some of them they allow users to run their system and submit numbers so you get a better sense.
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?
It was streaming locally from my 920+ directly to my LG tv using the official Plex app on the tv and the Plex docker container on the NAS with iGPU passthrough. Tried it in both mp4 and mkv formats. Since the tv doesn’t support DTS it was transcoding into (I think) AAC. When I would change the playback from DTS to any other codec (for files with multiple formats), the video would play flawlessly, it was just the audio transcoding.
I think every time I’ve heard about the plex smart TV app it has not been positive lol
Gonna be honest, I don’t know the exact logistics behind plex transcoding and what resources it may or may not use on the client and I’ve never tried a smart TV app as a client. I’m really not in a place to comment on it. But I can attest to having no issues when transcoding lossless formats to windows or the Nvidia shield.
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.
Same. I’m using a 2012 Mac mini running Proxmox attached to an OWC Thunderbay 4. It’s old but does everything I need it to do.
Another option: Used ThinClients.
I run Proxmox with HomeAssistant, Jellyfin, and some other services on a refurbished Futro-S740, it has a J4105 CPU and 8GB RAM (not officially supported, but 16GB is reported to work) and I use 2 m2 SSDs (required an adapter from AliExpress) for storage.
It could also support 2 proper SATA drives with adapters (power issues might start if you use 3 or more HDDs, plus connection issues), but that always depends on the ThinClient in question.A good bit more powerful than a PI4, but can be found cheaper with roughly the same idle power draw.
Source: CPU-Monkey
I just got into selfhosting with a used thin client (Dell Wyse 3040), only $30 on eBay. I don’t know what I’m doing at all and it’s still working out great for me so far, so I think that’s a good enough endorsement.
I assume it’s a x86 CPU, being an intel processor? How does it manage to be as energy efficient as an ARM CPU? Or maybe it’s only when it’s idle?
Modern Intel CPUs are actually very efficient. And PI’s are not very efficient, just low-powered ;)
Because Pi’s chip is basically GPU with additional ARM processors, while for server use you need only CPU
Nope, the J4105 (which is not a server CPU, server ones are powerful, not power saving) has an iGPU that’s again way more powerful than the PI’s.
Yes, but it uses less part of space and power compared to Pi. On BCM chips ARM core relatively weak compared to VideoCore there.
Interesting. I’ve been using ARM cores for low energy for so long that I haven’t bother to look if things were changing. :) How does it perform on the heat dissipation front? Because if it requires a fan, this should be included in the energy consumed.
I think ARM is still more efficient. It’s specifically the PIs (or it’s chips) that’s not that efficient by my understanding. AFAIK Intel also is not as close for power draw under load.
The S740 is actually passively cooled, and it sits in my cupboard together with a pi4 backup server, router and modem ;) The S740 became very popular with German selfhosters (used prices actually went from 40€ to 80€ for just the base model because of high demand :D), so there’s a page with power measurements, it’s in German, but pretty self explanatory for the most parts.
Thanks for the link!