Is there anyone who has more experience with ZFS under Linux based systems ? I saw ZFS fuse library, but I don't know it;s worth a test or not. Stable, usable ? Maybe as a storage ? Or only experimental projects ?
I would say it's only for testing or non-io-intensive tasks. The problem is that it is in userspace. Native ZFS on Linux is far from stable. Interested in it too but the only real option is export iscsi zvol from solaris to linux of share zfs via nfs to linux.
zfs-fuse works pretty well on Linux, and for many workloads the bottleneck will be the disks and not fuse. If you give it plenty of memory (ARC > 1GB) it works surprisingly well as a primary filesystem (for home directories/etc).
Also, zfs send piped to zfs receive in the same box works correctly:
root:~/ # zfs list NAME USED AVAIL REFER MOUNTPOINT igorhvr-main 257G 211G 6.56M /igorhvr-main igorhvr-main/home 183G 211G 181G /igorhvr-main/home igorhvr-main/teste 23.5K 211G 23.5K /igorhvr-main/teste root:~/ # zfs send igorhvr-main/teste@2012-03-05_08h15m | zfs receive igorhvr-main/teste3 root:~/ # zfs list NAME USED AVAIL REFER MOUNTPOINT igorhvr-main 257G 211G 6.56M /igorhvr-main igorhvr-main/home 183G 211G 181G /igorhvr-main/home igorhvr-main/teste 23.5K 211G 23.5K /igorhvr-main/teste igorhvr-main/teste3 23.5K 211G 23.5K /igorhvr-main/teste3 root:~/ # ps -ef | grep zfs root 1213 1 0 Mar09 ? 00:32:50 /sbin/zfs-fuse --pidfile /var/run/zfs-fuse.pid root 22383 22273 0 01:17 pts/12 00:00:00 grep zfs root:~/ #
Unfortunately, ZFS is really only an option on Solaris, its derivatives (Illumos (Shillix, OpenIndiana, et al)) and FreeBSD. While ZFS can be used on Linux systems via FUSE, it's very slow, and since it's a blocking process there are some gotchas. For instance, if you're used to doing a zfs send | zfs receive on the same box, that will not work on ZFS-FUSE.
While it's nowhere near as feature rich, BTRFS seems to provide some of the functionality found in ZFS, and I suspect it would perform better and be significantly more stable.
And while there is the zfsonlinux stuff, that is hardly more than a "look, I got it to work" effort. To me, that means it's still squarely in the realm of interest to filesystem developers, and nowhere near the quality or stability that I would require for my personal play boxes, much less anything that had data on it that I actually cared about.
I ran ZFS-Fuse under Ubuntu at home for nearly two years before switching to OpenSolaris and later Nexenta. I found it to be very stable and my pool worked without issue when I migrated the disks to new hardware/OS. That said, I intentionally never used the resource intensive ZFS features like deduplication (large memory use) and compression (high CPU usage) because I had minimal hardware. Nor would I use it as part of a production setup at work (certainly not without good backups on another machine) that said, for a home setup or learning about ZFS I found sufficiently performant and stable, even surviving multiple power failures without data loss..
Depending on what you're trying to do, you might consider a second system with ZFS in kernel (Nexenta, FreeBSD, Solaris 10, Solaris 11 Express, etc) which exports filesystems to your Linux host(s) using NFS. That way you can get the benefits of ZFS (snapshots, copy-on-write, etc) without having to rely on userland (ZFS-Fuse) or projects with a limited track record (ZFS on Linux or KQStor). Course it does require a second machine and some familiarity with NFS.
KQ Infotech has a beta version of their port available since January at http://kqstor.com/ . They provide paid support contracts as well.
I can't comment on its stability or performance though. From my experience testing ZFS on FreeBSD, I suspect there will be some kernel tuning issues and NFS mountd issues compared to Solaris. ZFS needs a special mountd if you want many subsystems shared via NFS.