1. 以下是NFS网络文件系统优化挂载的参数建议

  1. Centos6.6X86_64服务器端和客户端环境下,可使用如下命令参数:<br />mount -t nfs -o **noatime,nodiratime,nosuid,noexec,nodev**,rsize=131072,wsize=131072 10.0.0.31:/data /mnt<br /> 经过实际测试,Centos6.6X86_64默认的挂载参数性能还是不错的。<br />mount -t nfs 10.0.0.31:/data /mnt<br />注意:非性能的参数越多,速度可能会越慢。<br />注意:根据具体的业务需要以及实际测试效果选择挂载参数。

2. NFS内核优化建议

下面是服务器端优化选项说明。

  • /proc/sys/net/core/rmem_default:该文件指定了接收套接字缓冲区大小的默认值(以字节为单位),默认设置:124928。
  • /proc/sysd/net/core/rmem_max:该文件指定了接收套接字缓冲区大小的最大值(以字节为单位),默认设置:124928。
  • /proc/sys/net/core/wmem_default:该文件指定了发送套接字缓冲区大小的默认值(以字节为单位),默认设置:124928。
  • /proc/sys/net/core/wmem_max:该文件指定了发送套接字缓冲区大小的最大值(以字节为单位),默认设置:124928。

上述文件对于的具体内核优化命令如下:
cat >>/etc/sysctl.conf<net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
EOF
sysctl -p

3. 企业生产场景NFS共享存储优化小结

  • 硬件:sas/ssd磁盘,买多块,硬件 raid5/raid10。网卡吞吐量要大,至少千兆(多块bond)。
  • NFS服务器端配置:/data 10.0.0.0/24(rw,sync,all_squash,anonuid=65534,anongid=65534)
  • NFS客户端挂载优化配置命令:

mount -t nfs -o nosuid,noexec,nodev,noatime,nodiratime,rsize=131072,wsize=131072
10.0.0.31:/data /mnt <=兼顾安全性能
□ 对NFS服务的所有服务器内核进行优化时,执行如下命令:
cat >>/etc/sysctl.conf<net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
EOF
执行sysctl -p生效。

  • 如果卸载的时候提示”umount:/mnt:device is busy”,需要退出挂载目录在进行卸载,如果是NFS Server宕机了,侧需要强制卸载,可执行 umount -lf /mnt。
  • 大型网站NFS网络问卷系统的替代软件为分布式文件系统Moosefs(mfs)。

GlusterFS、FastDFS。