NFS基础及调优

NFS简介

NFS原理:

NFS原理详解_从头开始的技术博客_51CTO博客

nfs优化设置:

1、客户端:默认情况下,NFS配置不适合大磁盘挂载。

设置块大小

mount命令的risize和wsize指定了server端和client端的传输的块大小。

如果没有指定,那么,系统根据nfs的版本来设置缺省的risize和wsize大小。大多数情况是4K(4096bytes),

对于nfs v2,最大是8K,

对于nfs v3,在server端设置risize和wsize的限制,

最大块大小在kernel的常量 NFSSVC_MAXBLKSIZE,

该常量在/usr/src/linux2.4/include/linux/nfsd/const.h.

所有的2.4 的客户端都支持最大32K的传输块。

系统缺省的块,这主要取决于你的kernel和你的网卡,

太大或者太小都有可能导致nfs 速度很慢。

示例:mount -t nfs resize=32768,wrize=32768,intr,notime x.x.x.x:/opt/share /opt/share

使用大的读、写块,(指定最大块大小,这个示例是32KB),在挂起时nfs操作可以被中断不持续更新atime,可以设置放在/etc/fstab中,如果设置自动挂装器,,这些放置在/etc/auto.*文件中

2、服务器端

查看服务器端共享目录

Showmount -e ip

在服务器端确保有足够的NFS内核线程来处理客户端。默认情况下,只启动一个线程

nfsd的个数
radhat和Fedora缺省的系统在启动时,有8个nfsd进程。
$ps -efl|grep nfsd

对于忙碌的NFS服务器端应提高数字。可用nfsstat -rc命令评估客户机,了解是否阻塞的现象,这个命令显示客户机远程过程调用rpc来统计数据,下显示一个Web服务器的客户机统计数据

nfsstar -rc

列出中,retrans=0,这表示从上一次重新引导以来没有出现需重新传输的情况,如果这个数值比较大,考虑增加nfs内核线程配置项:nfs现场数量应该跟内核数一致。超过32核的配置都为32

也可以通过查看/proc/net/rpc/nfsd文件的th行,
  第一个是nfsd的个数,
  后十个是线程是用的时间数,第二个到第四个值如果很大,那么就需要增加nfsd的个数。

优化方案具体如下:

#vi /etc/sysconfig/nfs 或者vi /etc/init.d/nfs 目录下

找到RPCNFSDCOUNT,修改该值,一般和client端数目一致

备注:suse12中,该数值为USE_KERNEL_NFSD_NUMBER=16

systemctl restart nfs ,将需要的线程数量传递给rpc.nfsd例如rpc.nfsd 32 会启动32个线程,任何时候都可以设置,线程需要启动或者销毁,应放置启动脚本中。

nfs端口

由于nfs服务需要开启 mountd,nfs,nlockmgr,portmapper,rquotad这5个服务,将这5个服务的端口加到iptables里面而nfs 和 portmapper两个服务是固定端口的,nfs为2049,portmapper为111。其他的3个服务是用的随机端口。

2049--------NFS数据通信端口,访问NFS共享目录时传输数据的端口

111-----rpc通信端口,NFS挂载通信和应答的端口 rpcinfo -p

mountd:它是RPC安装守护进程,主要功能是管理NFS的文件系统。当客户端顺利通过nfsd登录NFS服务器后,在使用NFS服务所提供的文件前,还必须通过文件使用权限的验证。它会读取NFS的配置文件/etc/exports来对比客户端权限。

nfs:基本的NFS守护进程,主要功能是管理客户端是否能够登录服务器;

portmapper:主要功能是进行端口映射工作。当客户端尝试连接并使用RPC服务器提供的服务(如NFS服务)时,portmap会将所管理的与服务对应的端口提供给客户端,从而使客户可以通过该端口向服务器请求服务

nfs命令

刷新NFS共享配置信息:exports -rv:

-r:刷新NFS共享目录信息

-v:查询NFS共享目录信息

启动nfs,先启动rpcbind,然后nfsserver进程

systemctl start rpcbind

systemctl start nfs

centos7版本:

systemctl start rpcbind

systemctl start nfsserver

低版本:

service start rpcbind

service start nfsserver

备注:mount挂载有严格的约束:“=”、“,”逗号前后不允许有空格,不允许有特殊字符/中文字符

NFS卸载

1停止nfs服务后在umount

如果失败,需要先停止访问nfs共享目录所在分区的进程

ffuses -kuc xxxx;umont xxxxx

参考:NFS性能优化/调优-CSDN博客

NFS使用详解之三.NFS传输速度优化 - princessd8251 - 博客园 (cnblogs.com)NFS占用的端口,配置固定端口_nfs的端口-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值