Redundant/failover NFS servers - stale NFS file handle

Attila Nagy bra at fsn.hu
Mon Aug 14 13:10:37 UTC 2006


Hello,

I would like to run diskless clients (they are actually servers) from 
FreeBSD, but I don't like having a SPoF at the NFS server level and 
don't want to use expensive out of the box solutions, like a NAS with a 
SAN behind it.

The scenario of one master server and one (or more) slave(s) are enough 
for me, as the mounts would be read only.

So in theory, having two FreeBSD boxes, both with the NFS service on a 
CARP-based virtual IP would perfectly fit my needs.

The only problem is that NFS encodes some information in the 
filehandles, so when I'm doing a failover with the NFS clients (bringing 
the carp interface down on the master server), I get "Stale NFS file 
handle".

Linux has an fsid option, which can be specified in exports, but as far 
as I can understand what's going under the hood it's only part of the 
problem. Due to inode numbers (and maybe other reasons) I need to have a 
common, shared file system between the NFS servers to have file handles 
in sync.

Do you see any possible solutions, which could satisfy this (thought to 
be) simple need of having a master and slave NFS servers with a virtual 
IP without client side support?

As for the client side, Solaris has the capability of doing NFS client 
failover (reported to have some problems, but for now I would have only 
FreeBSD clients), and AMD has multiple server support, but I don't know 
how does that work with FreeBSD diskless boots yet. (root FS on NFS)

Thanks,
-- 
Attila Nagy                                   e-mail: Attila.Nagy at fsn.hu
Free Software Network (FSN.HU)                 phone: +3630 306 6758
http://www.fsn.hu/


More information about the freebsd-net mailing list