I want to build a home sever to fulfill a couple of roles through virtualization. (maybe 3 or 4 VMs)
- Seedbox, I want to seed a large amount of torrents (500-1000)
- NAS, I want this to serve as my back up and media hub. Everything will be synced to this server and then backed up to the cloud using Crashplan. I’d also like to eventually set up FTP
- I want to host a local media server.
- Website hosting, I want to host my website on my own personal server. (Is this even a good idea?)
- Home automation, Haven’t really put much thought into this but I want to keep this angle open.
I want to keep this more of a budget build, likely using used hardware. That said I want something fairly robust that will preform well for several years and be reliable. I just not sure where to start, what specs are important? Where should I look? There’s so much server equipment out there I’m just a bit overwhelmed.
I’d love to get some specific or general recommendations.
Unless you’re on some super high end internet connection, any Ryzen or core series CPU will do the job, so from that point it comes down to how many other services you want to run on it.
I’d start with something like an X470 board (for the better quality, stronger VRMs, upgrade potential) with a ryzen 2400G (saves sticking a GPU in it and gets you 4 cores 8 threads) then add as much storage as you need. The OS will be booted from USB stick.
I’d start with 16 GB of RAM and upgrade if that is insufficient.
For the OS, I’d run FreeNAS and spin up VMs on it for your webserver, automation server, etc. as required. Crashplan is available as a freenas “plugin” if i recall.
To explain some of the above choices:
Ryzen 2400G because its about the cheapest way to get 4 cores and 8 threads and a GPU on a reasonably future proof board.
FreeNAS because ZFS, friendly config GUI, VMs, plugins (for both transmission and crashplan), etc.
16 GB because RAM is super expensive right now, 8 won’t be enough and 32 will probably be more than enough but $$$. If you get 2x8 sticks you can go to 32 GB if required, but I’d try with 16.
I’d go with 4x storage drives and run 2x ZFS mirror VDEVs in your pool (essentially RAID10). Why? Spinning rust is cheap and with 2x mirrors you’ll get decent performance on both reads and writes out of 4 drives and can upgrade 2 drives at a time. Going with RAIDZ or RAIDZ2 complicates your upgrades as you need to replace at least 3-4 drives at a time if you want to expand. ZFS will happily do variable stripe width across 2 different size mirrors if you upgrade one mirror at a time and self-balance the free space on each side.
If you can afford more drives, add them in pairs and keep creating mirror VDEVs for your pool. If IO performance is insufficient, add SSD devices to the pool.
Definitely read up on how ZFS uses VDEVs for storage and SSDs for caching prior to deciding on a pool layout.