文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

关于AIX挂载NFS写入效率低效的解决方法

2022-06-04 22:40

关注

NFS提供的服务

Mount: 通过在服务端启用/usr/sbin/rpc.mountd伺服进程,在客户端使用mount命令,mounted伺服进程是一个RPC来回应客户端的请求

Remote File access:通过在服务端启用/usr/sbin/nfsd和在客户端启用/usr/sbin/biod,来出来客户端对文件的请求。但客户端一个用户要来读或写一个在服务器端的文件时,biod伺服进程发送这个请求到服务端。

Boot parameters: 通过在服务端启用/usr/sbin/rpc.bootparamd伺服进程来提供无盘SunOS客户端的启动参数。

PC authentication: 通过在服务端启动/usr/sbin/rpc.pcnfsd来提供PC-NFS的用户认证服务

一个NFS服务是无状态的(stateless),也就是说,NFS的传输是原子级的,一个单一的NFS传输对应了一个单一完整的文件操作。

背景:

linux是NFS的SadALvXerver端,AIX是NFS的Client端(此外,有一个Linux也作为Client端对比测试)。

1.NFS对应的底层设备是闪存卡,本地测试I/O写性能可达2GB/s;

2.服务器是千兆网卡,FTP测试传输可达到100MB/s;

3.AIX成功挂载NFS,dd测试写入速度只有10MB/s;

4.Linux成功挂载NFS,同样dd测试写入速度可达到100MB/s;

说明:以上速度主要是体现数量级的差异,实际测试会有少许偏差。

具体环境:

挂载参数均依据MOS文档配置:

Mount Options for Oracle files for RAC databases and Clusterware when used with NFS on NAS devices (文档 ID 359515.1)

根据本次实际需求,提炼一下需要配置的参数:

--MOS建议(AIX):
cio,rw,bg,hard,nointr,rsize=32768,
wsize=32768,proto=tcp,noac,
vers=3,timeo=600

--MOS建议(Linux):
rw,bg,hard,nointr,rsize=32768,
wsize=32768,tcp,actimeo=0,
vers=3,timeo=600

AIX NFS的挂载参数:

mount -o cio,rw,bg,hard,nointr,rsize=32768,wsize=32768,proto=tcp,noac,vers=3,timeo=600 10.xx.xx.212:/xtts /xtts

直接挂载提示如下错误:


# mount -o cio,rw,bg,hard,nointr,rsize=32768,wsize=32768,proto=tcp,noac,vers=3,timeo=600 10.xx.xx.212:/xtts /xtts
mount: 1831-008 giving up on:
10.xx.xx.212:/xtts
vmount: Operation not permitted.

查资料确认AIX需要额外设置网络参数:


# nfso -p -o nfs_use_reserved_ports=1

再次尝试挂载成功:


mount -o cio,rw,bg,hard,nointr,rsize=32768,wsize=32768,proto=tcp,noac,vers=3,timeo=600 10.xx.xx.212:/xtts /xtts

可dd测试的速度非常不理想,只有10MB/s:


--test performance; AIX NFS
# time dd if=/dev/zero of=/xtts/test-write bs=8192 count=102400
102400+0 records in.
102400+0 records out.

real 0m43.20s
user 0m0.79s
sys  0m5.28s
# time dd if=/xtts/test-write of=/dev/null bs=8192 count=102400
102400+0 records in.
102400+0 records out.

real 0m30.86s
user 0m0.84s
sys  0m5.88s

所有参数都是根据实际需求,按照MOS的建议设置的。有什么问题吗?

几乎能试的参数都试了,结果都不理想,马上都准备协调资源找主机工程师定位了。

此时,灵感乍现,突然想到一个可能性。有没有可能AIX上的NFS限制了单个进程的I/O吞吐能力?带着这个猜测,进行并行测试:

开5个窗口同时开始dd:


time dd if=/dev/zero of=/xtts/test-write1 bs=8192 count=102400
time dd if=/dev/zero of=/xtts/test-write2 bs=8192 count=102400
time dd if=/dev/zero of=/xtts/test-write3 bs=8192 count=102400
time dd if=/dev/zero of=/xtts/test-write4 bs=8192 count=102400
time dd if=/dev/zero of=/xtts/test-write5 bs=8192 count=102400

惊喜的发现5个窗口都在55s同时完成,这相当于800M*5=4000M,都在55s完成,每秒达到72MB/s,通过这种并行的方式已满足提升效率的需求。

而且看起来只要继续尝试多开窗口测试,基本也能达到网络上限100MB/s(千兆网卡限制)。

附:测试同样的NFS挂载到另一台Linux服务器上,无需并行,dd写入速度就可达100MB/s,这也是之前影响自己思考的因素。
Linux NFS的挂载参数:


# mount -o rw,bg,hard,nointr,rsize=32768,wsize=32768,tcp,actimeo=0,vers=3,timeo=600 10.xx.xx.212:/xtts /xtts

Linux NFS的测试结果:


--test performance; Linux NFS
# dd if=/dev/zero of=/xtts/test-write bs=8192 count=102400
102400+0 records in
102400+0 records out
838860800 bytes (839 MB) cadALvXopied, 6.02451 s, 139 MB/s
# dd if=/xtts/test-write of=/dev/null bs=8192 count=102400
102400+0 records in
102400+0 records out
838860800 bytes (839 MB) copied, 8.55925 s, 98.0 MB/s

对AIX不熟悉,没有进一步深究底层原理。开始解决问题过程中的主要困惑在于,为何Linux作为client时,无需并行就可以dd测试达到100MB/s的速度,使自己陷入了固有思维中。从这件事情得到的思考是:有些时候,要跳出常规思维去思考方可有所突破。

最后把NFS Server端本地测试的结果也贴出来,感叹下闪存卡的I/O能力:


# dd if=/dev/zero of=/dev/test-write2 bs=8192 count=1024000
1024000+0 records in
1024000+0 records out
8388608000 bytes (8.4 GB) copied, 4.19912 s, 2.0 GB/s

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对我们的支持。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-人工智能
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯