I’m looking for advice for upgrading my current home server to something newer. Let me start with discussing our current home server setup. It is currently an old gaming PC that I have converted to a home server.
Current Server Specs:
MSI Z170I Gaming Pro ITX Motherboard
16GB DDR4 Ram
Samsung 850 EVO 250GB SSD
2x 2TB WD Red Plus
It is running Windows 10 with the two drives mirrored. We are using it for Plex/Jellyfin, File Shares and I was running Home Assistant in a Virtual Box VM but that was bogging down the whole system unfortunately. With our photo and TV/movie collection we are quickly running out of space and I would like to upgrade.
The main issue is I’m on a budget and nothing is very cheap right now. It seems like everyone universally recommends ECC for Truenas which is not cheap on the Intel side, especially in ITX. I would prefer newer gear TBH. I tried to “upgrade” last year using some older hardware from eBay but had a bunch of issues and ended up asking for a refund on what I bought.
My thought right now is to go one of two directions. Either a consumer AMD Asrock motherboard with a lower end APU and then use ECC or just stick with all consumer hardware and go with an Intel Asrock motherboard and the i3-12100. Jellyfin supports AMD transcoding so going the AMD route might not be too horrible. In the end the main purpose is for backing up our old files so ECC would probably be best. I would also like to start using Nextcloud so we can access our files easier.
Any advise would be appreciated since I currently have analysis paralysis.
ECC is always recommended when it comes to data integrity. That’s not a special thing for TrueNAS. 32GB is the minimum I recommend for homeserver on a new build. Price is around 170€ , so not that expensive for ECC memory.
Usually 4-6 cores will do the job just fine, but I’m unsure how much jellyfin transcoding impacts everything. I wouldn’t get anything under 8 cores for this workload.
And AMD APUs don’t support ECC memory. Ryzen Pro CPUs do, however. Intel doesn’t support ECC on anything consumer hardware you can buy right now.
Ryzen 5800x +32GB will last some years. Board should have enough expansion options (SATA,M.2, PCIe) so you easily can upgrade networking and drives. Asus and Gigabyte boards usually advertise ECC support, but I can’t share personal experience regarding these boards. 2.5Gbit or 10Gbit Networking is a nice bonus on any board.
Enterprise drives are good TB/€. Toshiba MG series or Seagate Exos will get you the most TB for the money. If using mirror, you can re-use your old 2TB drives and add them to the pool for increased performance and capacity.
And you can re-use the 2TB as a second vdev to improve performance and capacity and use the 250GB SSD as cache (L2ARC)
There’s no reason to change that configuration for now as I really do think you’ll be fine on most cases just by doing a few things different. According to Intel your CPU support Quick Sync so transcoding should be fine if needed.
Cheap and ECC doesn’t really go hand in hand right now.
AMDs consumer ECC support is spotty at best and Intel hasn’t released anything low/mid-end for years. The closest you get is their new W680 chipset but motherboards are sparse and crazy expensive. Something like this would do great for a NAS though good luck finding one.
Link: MW34-SP0 (rev. 1.0) | Server Motherboard - GIGABYTE Global
Running Home Assistant in a VM using bhyve with 4Gb of RAM should be fine along with the other tasks.
Not sure if your motherboard in particular does something funny but getting a cheap ASMedia ASM1164/1166 will do fine for spinning rust if you need additional SATA ports. You can go for a LSI HBA but they’re a bit more picky about compatibility so you might want to research that combo and don’t forget additional cabling.
The Thoshiba MG series are nice drives that usually have a pretty good size / price ratio.
Just stop running Windows 10 on that Pentium G and you should be fine. I had the exact same CPU and a MSI B250-Pro-VH with 8 GB of RAM and I was running both Manjaro and a Windows VM on it. I know what that system is capable of and it sure as heck can run TrueNAS.
However, what I suggest you do is switch to Proxmox, because you are running VMs. With Proxmox, you can just install it on the 850 evo drive and then make a RAID mirror on the 2 TB drives. Or if you want to go higher, I’d suggest a 3 or 5 drive RAID-Z. Would not go higher than this with RAID-Z, anything above 5 is either RAID-Z2 or stripped mirrors.
With Proxmox, you can run the Jellyfin in a LXC container and take advantage of your Proxmox host kernel and use the intel iGPU for QuickSync, it should speed transcoding a lot, just like diizzy mentioned. Then you can run another container for a SMB share. This way, you’ll save a lot of performance that you don’t need to waste on virtualization.
And I have ran a couple VMs on this box under proxmox. In fact, it’s my last standing Proxmox host (the other two went poof after a long blackout that the UPS couldn’t keep up with). I have a stripped mirror on it. You can run a RAID 10 if you want to save some CPU cycles even further, but the Pentium G4560 is a decent little CPU, it should get the job done.
ECC is only a nice to have, but not necessary. In fact, my next NAS will be a low powered ARM SBC with 4GB of non-ECC RAM (Odroid HC4). Just have a good decent backup and test it from time to time and you should be fine.
Proxmox doesn’t have too much overhead as an OS, especially if using LXC. And if he wants to run VMs, Proxmox is the way to go. The reason I said he goes with Proxmox is because I’m pretty sure that Linux has better driver support and QuickSync is likely to play nicer with it. I don’t know what the situation is on FreeBSD. Installing Jellyfin and Samba in a container isn’t hard and it’s going to save as much resources as Jails do.
And again, I have Proxmox running on that CPU with less RAM and it’s working great, besides my failed cluster state that I always have to work around at every reboot. As a standalone install, it should work flawlessly.
Just to make it clear, I wasn’t suggesting he runs TrueNAS Core in a VM. In fact, I am highly opposed to that, HBA passthrough or not. Proxmox has ZFS built-in, why would one run another OS and do a lot of software gymnastics to emulate stuff.
One can run Samba straight on Proxmox too, but doing a container gives at least in some regards, some security. Same for TrueNAS Core Jails. Although in retrospect, in a home environment, it is a bit pointless. Also, if one is running TrueNAS or OMV, I suggest they just use the built-in, on-host version. If one would want, Jellyfin could be ran natively on Proxmox. But by that point, you’d have to wonder why you are running Proxmox or TrueNAS Core in the first place, instead of using something like FreeBSD, Debian, or FreedomBox version of Debian.
I just watched the newer videos from L1Tech about the Asrock Deskmeet and I might just go with that option. Having a full RaidZ2 setup is honestly not in the budget so I will probably go with mirrored drives again. Drives in the 8-12TB range should cover our needs for the next 5+ years.
I prefer to keep things simple and having an even smaller setup would be nice. I plan on going with Truenas only, probably scale. Learning Proxmox or something similar seems like too much complexity for what I’m going for. The Deskmeet and a i5 12400 as Wendell suggested should last me a very long time with enough buffer in case I want to add additional containers etc. I can sell off my existing hardware to recoup some of the cost as well.
Sorry, I missed your reply. I did not end up going with the Deskmeet. When I really thought about our usage for a home server, I only see us using more containers like nextcloud which will increase our storage space needs. I am waiting a bit longer to see if the W680 motherboards become more available and more importantly more affordable. I think instead of going with a SFF I will be going with a rack mount setup which will also give me an opportunity to clean up my networking.