NAS platform confusion (or which NAS OS do I pick?)

In Computing, Linux, NAS by Ross Fisher6 Comments

I recently ordered 6x 2TB drives to throw in my Xpenology NAS, my 1TB drives were tired and starting to fail – not bad for 5+ year old Seagate drives! The only issue is that I ordered them “refurbished” from NewEgg, each came with 30k+ hours and about 12 power cycles (obviously yanked out of a datacenter). Two arrived unsealed and DOA, including one with very obvious hardware damage – the other with creeping reallocated sectors.

I shrugged and RMA’d the two drives, while waiting for the replacements – another drive failed and then I returned them all. Obviously someone was smart at the Datacenter and planned the average end of life (Mfg 2010 – 30k hours). Somehow thousands of them ended up on NewEgg as “refurbs”. I don’t know about you, but throwing tired drives directly out of a datacenter with virtually no testing doesn’t sound like refurbishment to me.

So here we are, back to square one. To make it worse, Synology has recently started adding undocumented malicious code to their files, causing Xpenology to fantastically crash – they released an “update” under the same exact build and version number so their intentions are clear. With DSM 6 coming, it sounds like it’s end of line for Xpenology.

So what do I do? I’ve been a fan of Freenas for some time, it was what I ran before Xpenology. It has some pretty stringent requirements though, such as ECC ram (and at least 8GB of it, 1GB more for every TB of HDD space for ARC Cache) and it isn’t exactly a walk in the park to administer. Yeah, I know – don’t add SSD L2ARC or ZIL, just buy more RAM, more RAM – you got 128GB of RAM, right? Then of course, my server doesn’t have ECC RAM so according to the internet at large, I’m risking silent data corruption if I run without it. So just grab some ECC RAM right? Wrong. That’s another Motherboard, CPU and RAM that would need purchasing.

What about just buying a Synology unit? The DS716+ looks mighty appealing, no compromises NAS with 4k transcoding and VM support. I could simply throw in 2x 6TB drives in SHR1 and call it a day. The issue comes to expansion, another $150 for another 2x bays or a whopping $500+ for 5 bays! That’s a chunk of change for a dumb SATA expander enclosure. Well, and I’d be voting with my money, saying it’s okay to screw over Xpenology. Worst of all, I’d have a perfectly good mobo, CPU, ram, PSU and case go to waste – which are infinitely more powerful then the DS716+ anyway. The breaking point was the “Warranty void if removed” sticker on the Syno’s RAM module. Give us 2GB of ram and a way to expand to 8GB easily but screw over those that do because they didn’t buy the next model up? Screw you Synology.

So what other solutions do we have? Well, UNRAID I suppose. I don’t like it though, it’s closed source and their “arrays” are some cobbled together proprietary solution. Sure, there is an easy to use SSD cache but it’s set to only flush every so often using some sort of cron job – and that it’s only for writes. It isn’t a true storage pool, it throws data across disks and you read from them individually, only one disk parity is allowed. “Hye guyz, let’s make a NAS OS that doesn’t use safe parity and doesn’t offer IOPS scaling, then charge for it!”. I’ll pick UNRAID the moment I throw together a 24 disk array and only want single drive read and write performance with single parity.

OpenMediaVault, Nas4Free and others – not great no nonexistent plugin support. As I want to host Plex and others on the box to make the power usage worth it, these won’t work and seem to not be as popular as other solutions.

So build your own? MDADM + LVM + LVM SSD Cache? Seems the most flexible and feature rich doesn’t it? I could install XEN and do PCIE passthrough to have an all in one Steam server/Plex/NAS rig. The burning question would remain, would I spend far too much time tweaking/playing with it, time that could go towards productive projects? This is my worry and why I dumped beloved Android for iOS. Tweaking, rooting and compiling kernels is FUN but it isn’t productive – a time suck. This is why I switched from Linux to OS X, just power the damn thing on and do actual work – save me from myself in tweaking it and not actually getting work done.

So what are we left with? Rockstor looks most appealing. It’s a newish Linux based BTRFS NAS OS built using Django and CentOS. It’s open source, it has plugins using Docker, you can add/remove/change RAID pools and disks. “Stable” update channel costs $15/year but it makes total sense, it’s free if you agree to help beta test and if you don’t like something, fork it and compile your own install. Only two main issues: 1. RAID5/6 is not yet fully mature on BTRFS, for example – they still have the write hole problem (old school) 2. The plugin system while awesome as it’s on Docker, is restricted to what images they provide as a JSON string in the source code. I totally get it though, allowing the full Docker Registry on a Beta NAS OS is bad news, for example a change in the Plex Docker image they use leads to / having permissions changed and the OS breaking.

So I’m stuck with this need of a NAS but having issues committing to a platform. Rockstor seems awesome and I’ve tested it in a VM but isn’t yet mature. Building my own would serve my needs and more but can turn into a time suck rather easily. Do I just go ahead and commit to Rockstor and ride along the stable updates or do I build my own?

Comments

  1. Nice post and thanks for supporting Rockstor and engaging in the community! Btw, Rockstor is based on CentOS, not Debian.

    1. Author

      Much appreciated, I have updated the post to reflect this. With so many distros, it’s hard to keep in touch with who is who.

  2. great post! I’m in the same situation – committing to a platform. $60-$90 for an unRAID license seems exorbitant when like you say its hacked together on dated tech. So where are you now – 6 months later – have you committed?

    1. Author

      I ended up returning the DS716+. While the solution was excellent, I was less than enthused about the performance of the unit. R+W SSD Caching actually hurt read speeds as the DS716+ had no “Skip Sequential IO” setting (which I later hacked in by modifying files on the unit) but still doesn’t explain why an 850 Evo was running circles around an 850 Pro in benchmarks.. The icing on the cake is that the Synology External Enclosure (which is about $300 USD) only operated over SATA II further hampering performance even if they were to fix the performance issues in the software.

      Currently I’ve stuck with my i7-2600 Xpenology build. All the benefits of Synology without the haphazard hardware and SSD Caching actually works correctly.

      Check out http://rockstor.com – I’ll be switching once I get some time as I find it cutting edge and has BTRFS+Docker support!

  3. I totally agree with every word you wrote. Rockstor seems to be on very top when you compare with other “NAS” solutions out there like freenas, etc. Sure, some features like RAID5/6 and iSCSI support is not there yet but I think it will come over time. I wanted to build my own NAS after using up space on Netgear ReadyNAS+, Thecus N7700PRO and almost out on Synology 1813+ which led me to testing freenas and eventually to rockstor which I am testing right now.

    I read the “noob” guide to freenas and it scared the s*** out of me because you can do everything right, have ECC 128GB-256GB RAM, top of the line hardware and still end up losing data… not that data isn’t at risk with other NAS but I felt freenas guide scares you more than others, maybe its the custom build issues.

    1. Author

      I’m excited for Freenas 10, the UI seems to be modern and more user friendly. I however didn’t like using the CLI on Freenas 9 for some administration tasks. Compounding the usability issue is that there is no native external drive backup, leading to many users to rely upon RAID replication for backup (which isn’t backup at all). I hope that native external drive backup is added to Freenas with 10.

      These days I’m running a Synology DS916+II. It does almost everything I ask of it; Dockerized Unifi controller for my home network, IP camera Surveillance (was the deciding point for me to run Syno over Freenas for my use case) and I’m really happy with the WD Red Pro drives. The shortcoming is Plex transcoding, until they bring Quicksync hardware transcoding to more models other than the WD – one needs an external Plex transcoding box.

      I think you’ll be happy with Rockstor, the Dev(s) are very responsive to the community and BTRFS/Docker are cutting edge technologies that should make system administration easier (it’s so cool one can add/remove drives from BTRFS arrays live).

Leave a Reply