nfs server overload (nfsd)
Eric Anderson
anderson at centtech.com
Thu Dec 29 05:04:23 PST 2005
Angel Blazquez wrote:
>Hello,
>
>We are expecting incredible overload in a NFS server. A top shows nfsd
>consuming most of the CPU:
>
>PID USERNAME PRI NICE SIZE RES STATE C TIME WCPU CPU COMMAND
>6000 root -8 0 1204K 660K biord 1 124:15 27.88% 27.88% nfsd
>6002 root 4 0 1204K 660K *Giant 0 124:18 17.58% 17.58% nfsd
>6006 root 4 0 1204K 660K *Giant 0 123:38 10.21% 10.21% nfsd
>6005 root 4 0 1204K 660K *Giant 0 123:36 7.47% 7.47% nfsd
>6003 root 4 0 1204K 660K *Giant 0 123:08 4.15% 4.15% nfsd
>6001 root 4 0 1204K 660K *Giant 0 123:16 2.83% 2.83% nfsd
>
>
During these loads, can you run nfsstat -s -w 1 on the server and see
what is going on?
>Memory looks fine:
>
>Mem: 27M Active, 910M Inact, 136M Wired, 51M Cache, 112M Buf, 1828K Free
>Swap: 2048M Total, 72K Used, 2048M Free
>
>Typing in the nfs server (console/ssh) becomes terrible, the server does
>not reply well.
>
>We are running this nfs server in FreeBSD 5.3-RELEASE-p23 on a Compaq
>Proliant server with a Compaq Smart Array 5300 that comunicates with a
>array of disks:
>
>/dev/da0s1d 164G 124G 27G 82% /data0
>/dev/da1s1d 131G 80G 41G 66% /data1
>
>
You may want to also look at gstat and see how busy your disks look.
>We have /data0 and /data1 exported:
>
>/data0 -maproot=root -alldirs -network 192.168.62.0 -mask 255.255.255.0
>/data1 -maproot=root -alldirs -network 192.168.62.0 -mask 255.255.255.0
>
>so a couple of incoming SMTP servers we have can deliver e-mail to
>those filesystems.
>We are running exim 4.60.0 in those other servers, 4.10-RELEASE-p5 in
>one of them, and FreeBSD 6.0-RELEASE #0 in the other one.
>
>If we stop exim delivering e-mail, nfs server does well, the cpu gets
>free, and the nfs server works fine (replies to user interaction, etc).
>
>
You may try mounting the filesystems on the server with the 'noatime'
option to reduce disk writes.
You can also try setting the gatherdelay down from 10000 to 1000 on the
server and see if that helps.
Also - are you sure you want:
vfs.nfsrv.async: 1
I fairly certain default is 0, which is safer.
>FreeBSD 6.0 sysctl output (nfs related):
>
>vfs.nfs4.access_cache_timeout: 60
>vfs.nfs4.nfsv3_commit_on_close: 0
>vfs.nfs.downdelayinitial: 12
>vfs.nfs.downdelayinterval: 30
>vfs.nfs.realign_test: 1294030
>vfs.nfs.realign_count: 0
>vfs.nfs.bufpackets: 4
>vfs.nfs.reconnects: 2
>vfs.nfs.iodmaxidle: 120
>vfs.nfs.iodmin: 4
>vfs.nfs.iodmax: 20
>vfs.nfs.defect: 0
>vfs.nfs.nfs_ip_paranoia: 1
>vfs.nfs.diskless_valid: 0
>vfs.nfs.diskless_rootpath:
>vfs.nfs.access_cache_timeout: 2
>vfs.nfs.nfsv3_commit_on_close: 0
>vfs.nfs.clean_pages_on_close: 1
>vfs.nfs.nfs_directio_enable: 0
>vfs.nfs.nfs_directio_allow_mmap: 1
>vfs.nfsrv.nfs_privport: 0
>vfs.nfsrv.async: 0
>vfs.nfsrv.commit_blks: 0
>vfs.nfsrv.commit_miss: 0
>vfs.nfsrv.realign_test: 0
>vfs.nfsrv.realign_count: 0
>vfs.nfsrv.gatherdelay: 10000
>vfs.nfsrv.gatherdelay_v3: 0
>
>FreeBSD 4.10 sysctl output (nfs related):
>
>vfs.nfs.nfs_privport: 0
>vfs.nfs.async: 0
>vfs.nfs.commit_blks: 0
>vfs.nfs.commit_miss: 0
>vfs.nfs.realign_test: 84602323
>vfs.nfs.realign_count: 99713
>vfs.nfs.bufpackets: 4
>vfs.nfs.gatherdelay: 10000
>vfs.nfs.gatherdelay_v3: 0
>vfs.nfs.defect: 0
>vfs.nfs.nfs_ip_paranoia: 1
>vfs.nfs.diskless_valid: 0
>vfs.nfs.diskless_rootpath:
>vfs.nfs.diskless_swappath:
>vfs.nfs.access_cache_timeout: 2
>vfs.nfs.nfsv3_commit_on_close: 0
>
>This couple of servers mounts the filesystems with this options:
>
>192.168.62.54:/data1 /mail nfs
>rw,nfsv3,intr,dumbtimer,rdirplus,nosuid,nodev 0 0
>192.168.62.54:/data0 /data0 nfs
>rw,nfsv3,intr,dumbtimer,rdirplus,nosuid,nodev 0 0
>
>On the server, sysctl nfs related output looks like this:
>
>vfs.nfs.downdelayinitial: 12
>vfs.nfs.downdelayinterval: 30
>vfs.nfs.realign_test: 2694
>vfs.nfs.realign_count: 0
>vfs.nfs.bufpackets: 4
>vfs.nfs.reconnects: 2
>vfs.nfs.iodmaxidle: 120
>vfs.nfs.iodmin: 4
>
>vfs.nfs.iodmax: 20
>vfs.nfs.defect: 0
>vfs.nfs.nfs_ip_paranoia: 1
>vfs.nfs.diskless_valid: 0
>vfs.nfs.diskless_rootpath:
>vfs.nfs.access_cache_timeout: 2
>vfs.nfs.nfsv3_commit_on_close: 0
>vfs.nfs4.access_cache_timeout: 60
>vfs.nfs4.nfsv3_commit_on_close: 0
>vfs.nfsrv.nfs_privport: 0
>vfs.nfsrv.async: 1
>vfs.nfsrv.commit_blks: 579238
>vfs.nfsrv.commit_miss: 413059
>vfs.nfsrv.realign_test: 88269083
>vfs.nfsrv.realign_count: 11961
>vfs.nfsrv.gatherdelay: 10000
>vfs.nfsrv.gatherdelay_v3: 0
>debug.hashstat.nfsnode: 65536 5 1 0
>
>Thanks in advance,
>
>Best regards,
>Angel Blazquez
>_______________________________________________
>freebsd-isp at freebsd.org mailing list
>http://lists.freebsd.org/mailman/listinfo/freebsd-isp
>To unsubscribe, send any mail to "freebsd-isp-unsubscribe at freebsd.org"
>
>
More information about the freebsd-isp
mailing list