Do You Need Traditional RAID in Your Server?
DATA HOARDERS REJOICE: If you’re building a home server, you’re not constrained to using traditional JBOD, RAID, or RAID-Z. SnapRAID and MergerFS offer JBOD-like storage advantages with the data security you’d expect from RAID 5. For most home users, the performance is more than enough. And you’ll be able to use heterogeneous drives to boot.
To keep costs down when building a home server, it’s a good idea to make use of any existing hardware you have. But one of those hardware requirements may warrant thought: the hard drives.
The first thought you might have is to create a traditional RAID or RAID-Z array. Those solutions are fine, but if you think about it, a traditional RAID array has a few requirements that aren’t great.
First off, RAID arrays require all the hard drives to be up and spinning for any read or write operation. This alone has consequences, one of which is energy use. Sure, a few watts may not sound like much, but when drives are spinning 24/7, it can be like leaving several 60W light bulbs on all the time, and this can add up.
Heat becomes a problem as well. I ran my home server with five drives in a RAID 5 array for a long time, with the server in my home office. Sacramento summers can be hot, and having five spinning drives up all the time made the room unbearable. Along with heat comes noise. Keeping drives cool means running fans all the time.
When I decided to rebuild my server in October, I looked for another method that would maximize my storage while maintaining a level of data security (through RAID 5-like parity). I stumbled across SnapRAID and MergerFS, which is what I run now.
SnapRAID with MergerFS is a little like a JBOD (just a bunch of disks) array in disguise. MergerFS operates on top of a drive’s filesystems, and allows you to use your drives as a single logical drive. SnapRAID handles parity and backup operations, so you can restore data if a drive fails. You’ll have to do this through snapshotting, however.
From a cost perspective, this is great. With typical RAID arrays, it is recommended to use identical drives. With SnapRAID and MergerFS, I could take my 5TB drives and add a couple unused 4TB and 1TB drives.
SnapRAID also only has to spin up one drive at a time for file access. This can save life on your drive motors, keep energy use down, and reduce heat. SnapRAID attempts to fill one drive at a time, too. This means that unused drives largely stay at rest until needed. The bad thing about this, of course, is that one drive may be taking the brunt of access requests.
One of the downsides of using SnapRAID/MergerFS is that reads aren’t as fast as traditional RAID. But if you’re using the machine as a server, there’s a good chance that your gigabit network is saturated by the reads from a single drive anyway. If you’re accessing your server over the Internet, your upload speeds dictate your read performance as well. Basically, outside of having a 10Gb network, SnapRAID/MergerFS perform just fine for most home networks.
If you’re looking to build a server, take a look at SnapRAID (free software under GPLv3) and MergerFS (open source under the MIT-like ISC license). If you decide to try it, there’s a great guide from LinuxServer.io ( https:// blog. linuxserver. io/ 2017/ 06/ 24/ the-perfect-media-server-2017/).