There was a prior discussion about doing HA-NFS by using zfs
send/recv to replicate the failover system''s independent storage, and
the conclusion was that it wasn''t doable because NFS needs identical
fsids on both systems. But zfs send/recv generates a different fsid
on the failover, and that results in stale file handles, making it
unusable for this scenario.
Was there ever an RFE submitted for this? I just came across this
very old, rejected bug/RFE in the bug database,
http://bugs.opensolaris.org/view_bug.do?bug_id=6223564 and it seems
to relate to this issue, though for some reason, it had been rejected.
Here''s an excerpt of that prior discussion.
> > I did some tests with send/receive a filesystem from one node to
another,
>> changing the IP from one node to the other, and got the FH issue
>>(stale), from a GNU/Linux client.
>
>How are you replicating the filesystems? zfs send | zfs recv ?
>
>This method will preserve the inodes but you will end up with two different
>filesystem ids. The (solaris kernel-) NFS server uses various values
>to create a filehandle,
>one of them is the fsid: Checkout
>http://blogs.sun.com/peteh/entry/understanding_snoop_1m_nfsv3_file
>
>Changing the fsid of a ZFS-Filesystem is, as far as i know, not
>possible/supported (and would be scary anyway..)
>There also seems to be no way to tell the nfsd to not use the fsid
>(linux knfsd has a fsid option, this would
>solve your problem... Any chance that Sun will implement this?)
>
>I was also trying to build a Cheapo-HA-NFS-Cluster using zfs
>send|recv some weeks ago and ended up
>with a patched version of unfs3d. unfs3d is not as fast (and
>reliable) as nfsd but it has one
>big advantage: It works ;-) .
>
--
Maurice Volaski, mvolaski at aecom.yu.edu
Computing Support, Rose F. Kennedy Center
Albert Einstein College of Medicine of Yeshiva University