Posted on August 8, 2014
Installed a new FreeNAS this week
After months of not wanting to spend the money or burn the extra power, I pulled the trigger on building a new NAS for the house. I had thought about going with a turn key solution with 5 bays from Synology but ended up going with a build your own approach instead. For one, this option was slightly cheaper, but it also has much more potential. The Synology solution does a LOT right out of the box but it does not have much processing horsepower. I wanted more power for PLEX transcoding of multiple HD streams at one time.
My brother recommended that we go with an AMD A10 CPU for its built in video processing acceleration. Whether or not this is actually working, I have no idea. I do know that while streaming HD media the load average does not even come close to 1.00.
For hard drives, we opted for (5) 4TB Western Digital Red drives. The Red drives are supposed to be better for NAS operations. I am always skeptical though of any drive that advertizes itself as more resilient as another. The cynic in me says that they all use the same components inside with a different mounting apparatus or something.
We ended up using FreeNAS for the OS. I have some Linux experience as we use CentOS quite a lot at the office but FreeNAS is based off of FreeBSD and uses ZFS for its filesystem and it has some rather large differences. I am really liking ZFS as a technology though. It takes a hardware RAID card out of the equation and combines the fault tolerance into the file system. This removes an addition layer of abstraction that can cause problems. Having a file system that is directly aware of the striping and parity can theoretically reduce the chance for corruption.
Another big difference between FreeBSD and Linux is the concept of jailing. When you install a plugin on FreeNAS, it runs in its own jail. Each jail has its own network stack and filesystem that runs parallel to the main OS and other jails. I think of jailing as a step below virtualization in that a jail runs much like its own system but with less overhead than a fully virtualized system. You get the security and separation benefits of a VM without having to have lots of VMs taking up space and begging to be updated all the time.
I setup the disks in a “RAID5 like” configuration called Z1. That means one drive’s space is not usable for storage and instead is used for parity to protect against a single drive failure. We have ~16TB of usable storage.