##NFS服务端执行
#yum install -y nfs-utils portmap rpcbind
mkdir /NFS_DATA_SERVER
cat >>/etc/exports<<-EOF
/NFS_DATA_SERVER 192.168.1.0/24(rw,sync,root_squash)
EOF
chkconfig rpcbind on
chkconfig nfs on
service rpcbind restart
service nfs restart
showmount -e NFSSERVER_IP
##APP客户机执行
yum install -y nfs-utils
mkdir /NFS_DATA
##加入开机启动项,实现重启后自动挂载.优化挂载
cat >>/etc/rc.local<<-EOF
mount -t nfs -o noatime,nodiratime,nosuid,noexec,nodev 192.168.1.x:/NFS_DATA_SERVER /NFS_DATA
EOF
或写入/etc/fstab
192.168.1.156:/var/fs /var/fs nfs defaults,_netdev 0 0
NFS内核优化建议
下面是优化选项说明:
[x] /proc/sys/net/core/rmem_default:该文件指定了接收套接字缓冲区大小的默认值(以字节为单位),默认设置:124928 建议:8388608
[x] /proc/sys/net/core/rmem_max:该文件指定了接收套接字缓冲区大小的最大值(以字节为单位) 建议:16777216
[x] /proc/sys/net/core/wmem_default:该文件指定了发送套接字缓冲区大小的默认值(以字节为单位),默认设置:124928 建议:8388608
[x] /proc/sys/net/core/wmem_max:该文件指定了发送套接字缓冲区大小的最大值(以字节为单位)。默认设置:124928. 建议:16777216
阿里云上挂载NFS:
挂载的是 NFSv4 文件系统
sudo mount -t nfs -o vers=4.0,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport file-system-id-xxxx.region.nas.aliyuncs.com:/ /mount-point
挂载的是 NFSv3 文件系统
sudo mount -t nfs -o vers=3,nolock,proto=tcp, rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport file-system-id-xxxx.region.nas.aliyuncs.com:/ /mount-point
挂载命令中的参数说明如下表所示:
参数 | 描述 |
---|---|
挂载点域名 | 在创建文件系统时自动生成的挂载点域名,由file-system-id,region和nas.aliyuncs.com等信息组成,无需手工配置。 |
mount-point | NAS挂载点,可以是 NAS 文件系统的根目录“/”或任意子目录。 |
vers | 文件系统版本,目前只支持nfsv3和nfsv4。 |
在挂载文件系统时,还可以选择多种挂载选项,这些选项使用逗号分隔列表的形式,具体选项与说明如下表所示:
选项 | 说明 |
---|---|
rsize | 定义数据块的大小,用于在您的客户端与云中的文件系统之间读取数据。建议值:1048576 |
wsize | 定义数据块的大小,用于在您的客户端与云中的文件系统之间写入数据。建议值:1048576 |
hard | 指定在 NAS 暂时不可用的情况下,使用文件系统上某个文件的本地应用程序时应停止并等待该文件系统恢复在线状态。建议启用该参数。 |
timeo | 指定时长 (单位为 0.1 秒),即 NFS 客户端在重试向云中的文件系统发送请求之前等待响应的时间。建议值:600 分秒。 |
retrans | 指定 NFS 客户端应重试请求的次数。建议值:2 |
noresvport | 指定在网络重连时使用新的 TCP 端口,保障在网络发生故障恢复的时候不会中断连接。建议启用该参数。 |
自动挂载:
在该实例的/etc/fstab配置文件中添加以下命令:
fid-xxxx.cn-hangzhou.nas.aliyuncs.com:/ /mnt nfs4 vers=4.0,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,_netdev,noresvport 0 0
或添加到rc.d/rc.local
sudo mount -t nfs -o vers=4.0,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,_netdev,noresvport fid-xxxx.cn-hangzhou.nas.aliyuncs.com:/ /mnt