Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Features of ZFS and RAID-Z look vary promising. Looks like it is a perfect FS for home NAS solutions, poor man's Drobo things and alike.

Are there any drawbacks I should be aware of?

share|improve this question
add comment

11 Answers

up vote 25 down vote accepted

Snapshotting a filesystem is an amazing feeling, as geeky as that sounds. Knowing you can roll back in an instant is a relieving thought. Snapshots also take only a few seconds. A colleague and I recently deployed an OpenSolaris NAS for a smallish college (200+ students) for virtual machine iSCSI storage for Citrix XenServer, student file storage and administration files. Files are checksummed so you have the guarantee that if there is a bit error at the harddrive level that you'll find out instead of your files corrupting silently.

Having a bit of a budget we got a server with 9 disks, 2 for the OS mirrored using ZFS, 4 for data, 2 parity (using ZFS RAIDZ2) and 1 hot spare. Each was 1TB which brought it down to about 2.5T+ or thereabouts usable (you lose some space for the 1TB to 1TiB conversion and other overhead like filesystem data). Snapshotting the root storage pool took less than 2 seconds. When you go ZFS, you wonder how you'll ever go back, and why this isn't standard.

Snapshots can also be sent to another computer running the same version of ZFS using 'zfs send' which can be done over SSH. These changes are sent incrementally so there's no wastage there.

The only downside is knowing the right commands, although OpenSolaris has a nice scheduling manager for daily snapshots however I haven't used it. Sharing via iSCSI, CIFS/SMB, or NFS is fairly trivial - but in the latest version using the new framework COMSTAR yields some problems. Make sure you're using the right guide for your release if you go down this path. 2009.06 has a few changes since 2008.11 which I recommend. I wouldn't use it as a desktop either - Gnome and X seem a bit in need of attention.

Last thing: you need 512MB to 1G minimum of memory to let ZFS run smoothly. YMMV though, so give it a shot and see what you think.

Have a read through the docs: http://wikis.sun.com/display/BluePrints/Provisioning+with+iSCSI+and+Solaris+ZFS+in+10+Minutes

And maybe Lesser known Solaris Features http://www.c0t0d0s0.org/pages/lksfbook.html

And if you're feeling like testing some stuff http://www.solarisinternals.com/wiki/index.php/ZFS%5FEvil%5FTuning%5FGuide

Oh and one last bit of information for anyone reading: make sure if you have a RAID card and you want to utilize the features of ZFS that it can serve up the disks in JBOD as opposed to a predetermined RAID configuration as dictated by the card. Enjoy!

share|improve this answer
5  
I'm using Solaris with RAIDZ2 for my personal file server and it's been great. It's easy to set up, fast, and reliable. I wouldn't use Solaris as a desktop OS, but as a server OS I haven't found anything better. –  Amuck Sep 23 '09 at 19:55
2  
I've found Solaris to be a decent work-oriented desktop OS as well, but can't recommend it for home use (where one might need access to more multimedia apps). –  Brian Knoblauch Sep 23 '09 at 19:57
add comment

If by NAS you mean (Open)Solaris or FreeBSD on PC hardware acting as a fileserver, then yes, it should be fine.

See this question on building your own NAS. You might find dedicated NAS software such as FreeNAS easier to setup and admin.

share|improve this answer
add comment

It should be noted that due to licensing issues, the Linux ZFS implementation is somewhat crippled. It runs as a Userspace program, and has dramatically reduced performance, and iirc, a reduced feature set. Solaris and FreeBSD are the recommended OS choices, although Mac OSX has limited support.

Followup - The OSX port of ZFS has since become somewhat deprecated, I wouldn't recommend it for anything other than testing

share|improve this answer
1  
zfsonlinux.org uses a kernel module, and doesn't have the same performance issues. –  devicenull Oct 19 '11 at 1:57
add comment

ZFS on a home NAS is great. I've have a FreeBSD server running ZFS for years (now upgraded to FreeBSD 8.2 with V15) and the recover aspects are one of the hidden gems.

I have a system that has a pair of 2TB drives in a ZFS mirror that crashed due to environmental reasons, when it came back up, it only took seconds for ZFS to correct the issues with drive. A standard RAID rebuild on 2TB drives takes a long time. I had another die because some of the internal fans died. This system had a 4 drive RAIDZ and it was able to recover all of the data loss in 5 minutes across a 2TB setup.

If you run FreeBSD with Samba and ZFS, you can combine the snapshots from the first answer with Recent Files (found in Vista and Windows 7) and then be able to older file versions using the windows GUI. See http://www.edplese.com/samba-with-zfs.html for details.

share|improve this answer
add comment

It can be worthwhile once you find hardware that works well with Solaris. I ended up using Nexenta for usability - it (mostly) uses familiar GNU command-line and Debian's package manager.

Here's my writeup of how it went.

share|improve this answer
add comment

I've been meaning to try it forever, because running a Raid-Z host with an NFS share sounds like what OpenSolaris was made for. But without having tried it, I can't speak to the advantages or disadvantages yet. Clearly you won't be able to mount it directly on Windows unless you also run Samba, and it might not be able to run both for the same array. If I were to do it, I would not boot out of the same Raid-Z array which I'm sharing, so you'd need a minimum of 4 drives, and I'm thinking of using 6.

share|improve this answer
add comment

I have used Solaris, OpenSolaris and OpenIndiana for quite some time. ZFS is one of the most attractive features in these OSs. I have been very favorably impressed with ZFs and recently installed native ZFS on my new Ubuntu workstation. The licensing requires that the user install it but it worked fine for me using the information found on the ZFS on Linux project.

My new installation is a 64Gb SSD for the OS and my /home and 4 2TB drives configured as raidz. I have ZFS filesets as directories under my home dir to avoid loading up the small SSD with files that I would prefer not be part of any OS upgrades.

So far this seems to be working really well for me. The SSD makes the OS very responsive and the storage space and speed is also quite good. I do intend to benchmark the disk array this weekend.

I am really impressed with ZFS. It was designed and engineered to be the last word in filesystems and in my experience so far it is.

share|improve this answer
add comment

"Looks like it is a perfect FS for home NAS solutions, poor man's Drobo things and alike."

For home and for small, medium and large businesses. You can be confident that there is nothing "poor man" about ZFS.

As an example, Oracle has substantial support for ZFS:

http://www.oracle.com/technetwork/server-storage/solaris11/technologies/zfs-338092.html

With ZFS, you can re-create Drobo-like functions on your own, with a little research, and at a lower cost.

My first recommendation is that you read up on the different versions of ZFS; it can get a bit complicated with the whole OpenSolaris, OpenIndiana, Oracle Solaris, BSD and Linux differences that rise from various license types. If you are going to have a dedicated ZFS computer, depending on the version you want, you can install the right OS that supports it.

Some of the differences include support for encryption and for booting from ZFS partitions.

share|improve this answer
add comment

I recently configured a home storage box, I chose raid 10 (mirror + strip) over raidz. the drawbacks of raidz are:

  1. if you disks are not of of equal size, you only use the size of the smallest disk per vdev. for example, if you have two 1TB disks and two 1.5TB disks, a raidz pool with all 4 disks will treat the 1.5TB disks as 1TB disks.

  2. raidz are pretty static. if you have a raidz of 4 disks, you can't just add a fifth disk. you need to add a new raidz vdev of 4 disks. this makes raidz setups less flexible than raid10 setups, where you can just drop another pair of disks into the pool at any time.

the drawback of raid10 is that you lose 50% of the storage, but with today's storage prices, it's not such a big deal.

one drawback is that nfs compatibility with Linux is not great. to get it to work, I had to have linux mount using nfs3 protocol over tcp, and I didn't put any soft timeouts (I had timeouts and they caused problems).

as for Windows file sharing, I used samba and not the built in cifs service. for some reason I was not able to get cifs to work correctly.

one nice thing is that you can backup linux boxes to the open solaris box using rsync, and then take a zfs snapshot. I wrote a tool called zync that automates the process:

share|improve this answer
1  
ZFS can be used like RAID0, RAID1, RAID5, or RAID6 since it supports mirroring, striping, and RAID5/6 style parity. –  Amuck Sep 23 '09 at 20:02
    
Doesn't any standard RAID (such as RAID 1 & RAID 5) setup require that all of the drive be the same size? It is xRAID and other custom RAID setups that support things like that. In the given example, create two pools, one with 2 1TB drives and one with 2 1.5TB drives. –  Walter Jun 11 '11 at 1:05
add comment

Great features and redundancy may give you a false sense of security. Remember, ZFS is very complicated. If something goes wrong some day you might not be able to access your data and there're very few people who can help.

share|improve this answer
    
Same applies to most hardware RAID out there... –  Brian Knoblauch Sep 23 '09 at 19:58
1  
ZFS is somewhat unique. Hardware RAIDs, however fragile they are, have a much simpler on-disk layout. And there are more people capable of recovering data from broken RAID arrays. And there are some data recovery tools for popular filesystems. :) –  Bender Sep 23 '09 at 21:51
    
I've been using it with FreeBSD and have had systems crash due to power outages (UPS crashes, runs out of juice before it is shutdown) and the really slick thing is that when the system comes back up, it recovers all of the data in the background as the system runs (rather than requiring multi-hour RAID rebuilds). The design goal seems to be to prevent every having to get to point were data has to manually recovered by reading raw bytes from the drive. –  Walter Jun 11 '11 at 1:24
add comment

ZFS only works unter Solaris. Solaris doesn't work on a home NAS. This leads us to following conclusion: ZFS doesn't work on a home NAS.

share|improve this answer
4  
ZFS is also available on FreeBSD wiki.freebsd.org/ZFS. There are home NAS systems available that are FreeBSD based freenas.org –  rschuler Jul 21 '09 at 13:18
    
My fault /o\. downvote –  Martin Jul 21 '09 at 13:54
    
It depends on your definition of NAS. I believe any machine hosting storage to a network is NAS, and Sun invented NFS so Solaris should be perfect for a NAS. –  dlamblin Jul 31 '09 at 16:27
2  
Solaris makes an excellent NAS solution, with having NFS and Samba... –  Brian Knoblauch Sep 23 '09 at 19:59
2  
@rschuler I've used FreeBSD and ZFS and found that it's not very stable. –  Amuck Sep 23 '09 at 20:03
show 1 more comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.