It's 2021 and I am still using my home-built NAS (FreeNAS!), but I am increasingly interested in reducing energy consumption and maintenance time (mostly to improve compatibility with the family life, which leaves me less time to tinker with hardware).
So I humbly ask the hivemind:
- what are good solutions for storing personal backup on-site (other than a bunch of external hard drives)?
- What are some caveats that I should avoid?
- Can I trust the 'standard' companies (Synology, QNAP, Seagate, ...) to keep my data sufficiently safe?
Strong opinions, war stories, and all other suggestions are highly welcome!
The NAS gurus always say "RAID is not a backup", and it is true you should have additional backups. But no backup solution is perfect, none get updated every day, especially if you plan on keeping the backup off-site. For most users, the NAS is the backup. All I'm saying is that when a disk fails on your NAS, you'll be in panic mode and will want the easiest, most direct path to data recovery, and there is no RAID option in this scenario preferable than RAID-1.
With that in mind, the NAS is not the backup. Once a file is deleted, it's gone.
With regard to recovering from a RAID-5 dual disk failure, typically a USB 2x sata toaster is enough to connect the failed disk and the replacement disk to a system that can run a ddrescue to clone the failed disk. Often times disks that are ejected from a RAID array still have enough life left to copy data off very slowly (over several tries/passes)
For backup, a simple solution is connecting very large external USB3 disk(s) and running daily rsync hardlink backups. There are several scripts to do this, and it's quite low effort to maintain after its set up.
Snapshots can be used to catch that failure mode, so I don't think this is universally true. Whether there actually are NASes that would have snapshottable file systems out of the box... Is there?
But I think there's a semi-common exception: people who are using ZFS where they are maxing out the drives their enclosure can hold (or have a plan for that expansion). In that case, sure, fine, use raidz1 or raidz2 (with a hot or cold spare), because the rebuild commands are the same.
1. Think about the contents of your bare disks, in terms of what is required to read them. Lots of RAID-1 will stick headers at the start of the disk (including Linux software raid by default, iirc). Using ZFS mirroring will necessitate the use of ZFS to read it, and so on. I prefer using only Free software raid for this reason, while opting to make myself reliant on Linux/ZFS.
2. Mirroring is much simpler for the sake of rebuilds/performance, and if you're looking for a simple hassle-free setup that's the way to go. I've got a 4+3 raidz3 for my main array, not even for capacity's sake but rather for redundancy's sake (it was going to be a 3+3 until I realized how ZFS deals out chunks). But I realize that's going to be a hassle if I do start getting correlated disk failures (I've also got true backups).
Deleted Comment
If you are using only 2 disks, the only reasonable options are 0 or 1. So, you are saying that 0 is too unreliable, what I think nobody will disagree.
But when you have enough disks, RAID 6 is a no-brainier.
I have 3 + 2 disks Truenas setup, so when a disk fails, i’m still another failure away from single copy of data state. No panic, just relaxed shopping for replacement drive.
ZFS or MDADM don’t have the same limitation, but there are other caveats there.
I would make your first / boot drive a SSD, and put WD Reds in the rest, 2 drive redundancy if you want to be super safe.
In addition, I recommend using the built-in cloud backup software to backup high-value data to Blackblaze B2.
Happy to answer any other questions.
Given the history of the WD Red series they should be avoided by anyone who cares about data integrity in a NAS.
After the SMR scandal, WD did a rebrand and now any drive with any form of promise for NAS use are called WD Red Plus.
I'd go with Toshiba or Seagate Ironwolf.
A solid product with zero regrets (thus far).
[0] https://www.backblaze.com/b2/hard-drive-test-data.html
Yeah, it's slow, long in the tooth, and maybe I should replace it this year. But I'll replace it with another Synology.
I have no idea what I'd use nowadays. As someone pointed out, if the box itself dies, I'm screwed. I think it uses mdadm under the hood, but that's a guess. Maybe I'd just buy a mini ITX barebones that holds 4 drives, boot off a usb stick that runs FreeNAS and configure the disks in a simple 2x2 mirror.
Upgraded it to a Synology 918+ and haven't regretted it even once. Added an SSD for read caching, upgraded memory to 12GB a year ago. The SSD cache has a hit rate of 88%, reducing the need to hit the spinning drives as often.
The Synology Hybrid Raid (SHR) was one of the main reasons I got a Synology NAS, I started with a random assortment of drives of different sizes and it just made a volume with those. Every time I run out of space, I upgrade the smallest one and tell the NAS to expand the volume. It just works.
Running a dozen or so Docker containers on it + native Plex package. It can even transcode video with hardware.
The only way I can realistically upgrade from that setup is to build an actual PC with Unraid or something similar and that'll be a noisy power hog unless I spend mucho $$ on it.
Without knowing anything else, for a small and power-efficient setup I can recommend the Odroid HC4 with Armbian (manually upgraded to Bullseye; Bullseye builds are currently broken but building Buster and then upgrading works fine) and a ZFS mirror of whatever SATA drives you choose. I use one as a backup sink.
https://www.hardkernel.com/shop/odroid-hc4/
As for drives, I've been committing myself for Toshiba recently. They have a good reputation for reliability/durability and reasonable cost-performance.
If you're going for SSDs, that market segment is in a bit of constant flux.
For something beefier and way more extendable I've been writing about my experiences with ASROCK RACK's X570 boards here: https://news.ycombinator.com/item?id=28302303
Though, from what I understand you may get lower idle power consumption from the right Intel CPU/chipset combo than AMD Ryzens as of now. This is just something I gathered from others' remarks and not something I researched or benchmarked properly myself so take that with a grain of salt.
I never used a prebuilt QNAP/Synology but I'm curious what it is that takes time for you these days that you hope to cut down on? A DIY can be pretty much as fire-and-forget once you have it set up and on the flip side you still have plenty of room for tinkering with containers and whatnot on Synology et al... Like, is there ongoing maintenance you have to do on your FreeNAS box just to keep things in place or is it more a personal tendency to keep changing things that makes it never ending?
The main reservation I had for going DIY is that there's a lot of initial building involved (getting hardware that works well together etc.) whereas Synology et al. is more like 'plug and play.' However, I revised that opinion whilst reading that thread, primarily because I learned about NUCs and other such alternatives. I know myself very well, though, and I know that if there's a fully-fledged OS, I am bound to change stuff, try out new things, etc., when in reality all I should be doing is making backups :D
> What are some caveats that I should avoid?
Be very careful about SATA connectors: they're among the worst piece of junk ever designed and have an extremely low guaranteed life (literally dozens of operations, not thousands), therefore, don't think of drive bays and especially desktop "toasters" as something in which drives can be inserted and pulled every day; that would be a solution for defective contacts and data loss. Been there, done that. Twice.
> Can I trust the 'standard' companies (Synology, QNAP, Seagate, ...) to keep my data sufficiently safe?
I guess so, although sometimes there are stories about newly discovered vulnerabilities. It's also possible malicious hackers would rather direct their attack on well known products than home built systems, but that doesn't mean nobody is attempting to target our NASes. I don't have any experience with those brands, however.
As for the rest, I was also following the Helios64 project which seemed really intriguing, albeit it meant moving from *BSD to Linux (actually I am a Linux user, although I like more BSD solutions for NAS servers and firewalling). Unfortunately the project died. It's FOSS, though, hardware and software so hopefully someone will take over development and production. https://kobol.io/
As for trust, you can trust anybody for anything. Should you is a different question. I rest easy knowing there will never be an article about a product I critically rely on deciding to sell me out. And needing to navigate least-worst commercial options seems like a much larger maintenance burden.
You have carefully omitted your budget. Your budget will likely ultimately determine your options.
Otherwise I'll tell you to get a 10Gb switch and build a five node CEPH cluster. :-)
OP was looking to spend less time, not more :P
The setup per node is super simple, Ubuntu 20.04, install Docker, and then one command to add the new node to the cluster, and one more command to add a disk.
(Ceph version 16 switched to cephadm for deploying and managing a cluster and it's a lot easier now than with previous versions.)
With just 4 nodes I'm already saturating a 1Gb connection on my client (Ryzen desktop).
Perhaps the most surprising thing for me was how stable and forgiving a native CephFS client is on my Linux laptop. After waking up from sleep, it takes about a second to reconnect.
This weekend I'm planning on expanding to 7 nodes. With 7 nodes total power usage should be ~31 watts (not counting network switch), which is less than my current 6 disk ZFS RAIDZ2 setup in my desktop.