Topic: NFS and Non-Responsiveness

I have 4 webservers serving content from an NFS mount on a RAID5 box.  All FreeBSD.

NFS Server:
----------------------------
nfs_server_enable="YES"
nfs_server_flags="-u -t -n 8"
rpc_lockd_enable="YES"          # Run NFS rpc.lockd needed for client/server.
rpc_statd_enable="YES"          # Run NFS rpc.statd needed for client/server.
nfs_client_enable="YES"         # This host is an NFS client (or NO).
nfs_reserved_port_only="NO"
mountd_flags="-r"


Webserver mounts using the fstab file


Issue I recently had:
------------------------

The NFS server went down. 
I expect the webservers to not be able to serve content, but they all became non-usable as soon as i typed one of the following:

df -h
umount
umount -f
reboot

...couldn't even reboot for crying out loud, network services turned off, but it wouldn't go all the way, so i had to drive to the datacenter and hard reboot.


anyways, I can't imagine that a 'bad share' could take down such a great OS.


Is there anything I can do to prevent this hangup in the future ?

Re: NFS and Non-Responsiveness

When NFS goes down, none of the OSes using the shares can know the state of the files and they can't do anything. They hang as they attempt to read/write files as there's no confirmation of the read/write occurring...

or something like that.

"UBER" means I don't drink the coffee... I chew the beans instead
             -- Copyright BSDnexus

Re: NFS and Non-Responsiveness

could any nfs mount options help my cause ?

hard mount vs soft ... interrupts, timeout, etc...

Re: NFS and Non-Responsiveness

I have never heard of any solution.

That's why many people quit using NFS.

<wintellect> NetBSD users are smart enough to accept that there's no 3D support tongue

Re: NFS and Non-Responsiveness

Actually, there is a solution: use the -i option with mount_nfs. This causes file system options to fail after a while when the NFS server becomes unresponsive. It corresponds to the intr mount option (although that one is marked as deprecated on FreeBSD; I'm not sure what the recommended way to select the option is then; I'd probably just use intr anyway as long as it still works).