暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

linux系统NFS服务参数优化实验(二)

爱婷如命一生一世 2017-07-26
794


闷热的夜晚,抽出时间整理技术笔记:

NFS网络文件系统优化挂载参数的建议:

一些相关的参数翻译参阅资料:http://www.iyunv.com/thread-271100-1-1.html


在centos6.5系统:在在实际生产情况下就增加个noatime nodiratime图中是查看默认的挂载参数。

当然增加参数越多,越安全,但是效率会降低。这是必然。NFS最终还是要追求的是性能。高并发效率不是很高,中大型企业也是不会用它的!



我在NFS官方技术资料中查阅到的建议修改优化参数如下:

NFS内核优化

默认的参数是124928--------缓存的一个参数

这个文件指定了接收套接字缓冲区大小的缺省值(以字节为单位)

还有一个最大的内核缓存参数:

这个文件指定了接收套接字缓冲区最大的缺省值(以字节为单位)


当然,有了接收就会有发送的:

这个文件指定了发送套接字缓冲区大小的缺省值(以字节为单位)

这个文件指定了接收套接字缓冲区最大的缺省值(以字节为单位)

由于默认的内核缓存参数值是比较小的,所以在生产环境下,我可以把这个值变的大一些,使得NFS效率高一些。


NFS官方建议还是将指定的参数追加到以下文件内中。以防重启后失效。

NFS官方给出值:

发送套接字缓冲区大小为: 8388608 字节;

接收套接字缓冲区大小为: 8388608 字节;

接收套接字缓冲区最大值为: 16777216 字节;

发送套接字缓冲区最大值为: 16777216 字节;


net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216



我们可以在用echo追加到sysctl.conf的配置文件中去:


查看下systl.conf 的配置文件:

这样稍微就数据读取就会快一些。



企业生产实际生产环境下NFS共享存储优化:

  1. 磁盘方面:sas/ssd磁盘,建议买多块,raid 0效率最高,但是它没有冗余。raid10效率高且冗余好!

  2. NFS服务器:all-squash,性能最优就增加async.图中async我就没有增加。



3.客户端挂载:rsize.wsize.noatime .nodiretime 兼顾安全增加:Nosudi.noexec



4.内核优化:

net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216




关于强制卸载:用Man可以查看umount 翻译后的原文如下:

-l 的意思:

-f 的意思:



showmount 命令一般用于从NFS客户端检查NFS服务器端共享目录的情况:

最常用的是-e 


接着补充一个Mount的参数  -a  :试挂载的意思。作用在于可以在开机启动前检查到挂载错误:

例如,我将客户端/etc/fstab开机自动挂载的配置文件里的写法格式给搞错


用Mount -a 检查的话,就可以检查出来了

如果配置正确的话,它就不会报错的:

rpcinfo这个命令一般是用于查看端口命令rpc服务相关端口的命令:

站在服务端:增加-p这个参数可以查看到rpc服务有没有向NFS服务注册相应的端口


如果你单独的将rpc服务重启,而NFS服务没有重启的话:,再次站在NFS服务端上查看rpc的本地端口,就不会发现有向NFS注册端口的表项。




因此,如果排故时发现RPC端口很少,你就要注意NFS启动顺序是不是有问题,你可以将NFS服务重新启动。



当我用rpcinfo -p 检查出现以下提示,就可以认定NFS服务中RPC服务意外停止错误:


接下来,我在NFS服务端上来查看NFS文件的路径:在这里面我们可以根据不同的文件来查看NFS的参数!


例如etab:我可以看到NFS的配置的当前的参数:(这样比在服务端上用mount -o 查看的更为简洁 )



NFS服务生产场景应用:

其作用是可以让不同的客户端挂载使用同一个目录,作为共享存储使用,这样可以确保不同节点客户端数据的议政性,在集群架构下经常会用到。

NFS优点:

  1. 部署简单,容易掌握,数据是在文件系统之上的。(其区别与MFS GFS之类的云存储,它在目录下能够看到真实文件,而在云存储内是看不到的。)

  2. 部署快速,维护简单。

  3. 数据可靠,从软件层面上看,数据可靠性高,经久耐用。


NFS服务缺点:

  1. 劣势在于局限性:存在单点故障,如果NFS server 宕机,那么所有的客户端都不能正常访问共享目录了。(可用高可用方案来解决)

  2. 在高并发的场合。MFS效率性能有限(一般几千万以下PV的网站不是瓶颈,除非网站架构过于简单。)

  3. 客户端认证时基于IP和主机名,权限是根据ID识别,安全性一般。(推荐在内网使用)

  4. 多台客户端挂载NFS服务器是,连接管理维护麻烦,当NFS服务端出现故障,所有的NFS客户端挂载状态都会出现问题。这就反映出耦合度太高了(测试环境可用autofs 自动挂载解决。)

  5. NFS传输的数据是明文的,NFS对数据完整性不做验证。


文章转载自爱婷如命一生一世,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论