Chinaunix

标题: [NFS]速度为什么这么慢啊,如何优化? [打印本页]

作者: mygod100    时间: 2012-08-10 14:24
标题: [NFS]速度为什么这么慢啊,如何优化?
有两台服务器A和B,每台都用10G网口,交换机也是10G的
在A上用tmpfs建ramdisk在/mnt/ramdisk/ 并在其中dd 一个10g的文件 10gA
在B上也同样建tmpfs并放10gB
将A的/mnt/ramdisk nfs export给B, B mount在/mnt/ramA上,dd一个10G文件到/mnt/ramA,发现速度只有300MB上下。
而用ftp,B的ramdisk中的10gB上传到A的ramdisk,或是从A的ramdisk下载10gA到B的ramdisk,速度几乎可以达到网络极限,接近1GB/s
哪位大哥可以指教一下,nfs如何设置优化才能达到近似ftp的速度啊?
B中mount参数rsize,wsize都设到1M了也不行啊!!!

作者: r2007    时间: 2012-08-10 15:24
dd的参数要调整的,所以可呢不是nfs的问题。bs是常用的调整参数,具体man dd
作者: mygod100    时间: 2012-08-10 19:56
回复 2# r2007


    bs调小了也一样啊,从serverB的ramdisk cp一个大文件到这个mount点速度也就300MB左右
作者: r2007    时间: 2012-08-10 20:21
回复 3# mygod100


    我遇到过boardcom网卡驱动的问题,也是ftp正常nfs会卡甚至会死机。而且网卡的问题早就暴露过,就是一直不出新驱动,换了个别的牌子的就好了。
作者: mygod100    时间: 2012-08-11 11:13
本帖最后由 mygod100 于 2012-08-11 11:14 编辑
r2007 发表于 2012-08-10 20:21
回复 3# mygod100
我遇到过boardcom网卡驱动的问题,也是ftp正常nfs会卡甚至会死机。而且网卡的问题早就暴露过,就是一直不出新驱动,换了个别的牌子的就好了。


看了下,10G网卡是ixgbe: Intel(R) 10 Gigabit PCI Express Network Driver - version 3.4.8-k
作者: r2007    时间: 2012-08-11 13:25
32还是64?os版本?
作者: mygod100    时间: 2012-08-12 00:42
r2007 发表于 2012-08-11 13:25
32还是64?os版本?


$uname -a
Linux yish 2.6.18-308.el5 #1 SMP Tue Feb 21 20:06:06 EST 2012 x86_64 X86_64 X86_64 GNU/Linux
$cat /etc/redhat-release
CentOS release 5.8 (Final)
作者: r2007    时间: 2012-08-12 10:53
可以从几个方面着手:
换一个nfs server
换一个nfs client
用intel的驱动
调一下mtu

作者: mygod100    时间: 2012-08-12 18:23
r2007 发表于 2012-08-12 10:53

可以从几个方面着手:
换一个nfs server
换一个nfs client
用intel的驱动
调一下mtu


1,2,是换一个nfs server/client版本吗?
3,这个可以待会试一下
4,MTU试过来,只有+-10%左右的速度差别


另外想请教一下,这个会是会是nfs的本身的效率问题?
作者: mygod100    时间: 2012-08-13 11:25
r2007 发表于 2012-08-12 10:53
可以从几个方面着手:
换一个nfs server
换一个nfs client
用intel的驱动
调一下mtu


修改了下网卡驱动,从v3.4.8-k修改成最新的v3.10.16,结果速度反而下降了很多,从原来的300M左右下降到不到200M,噢我的天啊!!

nfs-utils-1.2.6.tar.bz2直接在centos 5.8上编译通不过,还在尝试中....
作者: llzqq    时间: 2012-08-13 11:38
检查一下网线和网卡,确认一下链接速度。
作者: r2007    时间: 2012-08-13 14:12
换一个别的nfs client,比如其他linux,bsd甚至windows,也是10g网卡的
换一个别的10g的nfs server等等,找出问题。
作者: mygod100    时间: 2012-08-13 21:33
系统急着要部署使用,暂时先300M将就,且目前10G网络只有这两台有,别的都是1G,看来要下次再找时间尝试了
作者: hulifox008    时间: 2012-08-14 23:23
Try adding "async" to nfs server?)
作者: mygod100    时间: 2012-08-16 12:35
hulifox008 发表于 2012-08-14 23:23
Try adding "async" to nfs server?


已经是async export了
作者: mygod100    时间: 2012-08-16 12:35
llzqq 发表于 2012-08-13 11:38
检查一下网线和网卡,确认一下链接速度。


用ftp方式可以达到理论速度,所以网线应该不存在问题
作者: xulang726    时间: 2012-08-16 16:21
增加NFS进程数呢?
作者: mygod100    时间: 2012-08-16 22:09
xulang726 发表于 2012-08-16 16:21
增加NFS进程数呢?


测试时是无其它进程的,所以基本上读写nfs只有一个进程,个人认为测试条件下,和NFS的进程数无关,如果测试状态达到理论速度,而应用时速度下来,才会考虑NFS进程数吧?
作者: llzqq    时间: 2012-08-17 09:16
回复 16# mygod100


   

上行,下行速度都确认了吗
作者: xulang726    时间: 2012-08-17 11:16
回复 18# mygod100


    server端多开几个,就是改export里的那个数,弄成8试一下,看cpu使用会不会是造成网络的瓶颈
作者: xulang726    时间: 2012-08-17 11:26
300M的时候,CPU多少?
作者: 烦死人了00    时间: 2012-08-17 14:12
提示: 作者被禁止或删除 内容自动屏蔽
作者: mygod100    时间: 2012-08-20 12:54
llzqq 发表于 2012-08-17 09:16
回复 16# mygod100


目前只尝试写,也就是上行
作者: mygod100    时间: 2012-08-20 12:58
xulang726 发表于 2012-08-17 11:16
回复 18# mygod100



您的意思是18楼的增加进程数吗?
http://bbs.chinaunix.net/forum.p ... mp;fromuid=10559303

如果其它的设置方法请告知,谢谢!
作者: mygod100    时间: 2012-08-20 13:00
xulang726 发表于 2012-08-17 11:26
300M的时候,CPU多少?


没明白CPU多少是什么意思?频率吗?还是CPU核数,还是load?

load不高,所以跟频率核数都关系不大
作者: xulang726    时间: 2012-08-21 15:36
ftp nfs的cpu load 都差不多那就不是进程数量问题了,需要DD优化参数了
作者: mygod100    时间: 2012-09-06 16:32
回复 26# xulang726


    是dd的参数问题吗?我试过不同的bs,都没有明显的效果,现在真有点怀疑nfs server/client效率问题了,不知道哪位对此有研究的给些建议啊
作者: linxor    时间: 2012-09-06 17:43
可能是硬盘IO问题吧,还有就是dd时要生成文件,生成算法本身会占用一定时间,最好在本机试试一下,看比速度有没有什么变化!而ftp只是传送文件!
作者: xulang726    时间: 2012-09-07 11:07
http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=1967910这个有用没有?SERVER/CLIENT MTU是否一致?
作者: mygod100    时间: 2012-09-10 15:30
linxor 发表于 2012-09-06 17:43
可能是硬盘IO问题吧,还有就是dd时要生成文件,生成算法本身会占用一定时间,最好在本机试试一下,看比速度 ...

请看楼顶,已经考虑到这个问题,没有放在硬盘上,用memory虚拟出来的磁盘做的测试
本机用dd测试>2GB/s
作者: mygod100    时间: 2012-09-10 15:36
本帖最后由 mygod100 于 2012-09-10 15:37 编辑
xulang726 发表于 2012-09-07 11:07
http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=1967910这个有用没有?SERVER/CLIENT MTU是否一致 ...


谢谢,我用的主机是Cent OS 5.8,第5点没有相应的文件无法尝试
其它各点都已经做过测试没有明显的速度提升

MTU都是9000是一致的
作者: xulang726    时间: 2012-09-10 15:55
那就搞不定了,google 找找了
作者: mygod100    时间: 2012-09-10 16:33
xulang726 发表于 2012-09-10 15:55
那就搞不定了,google 找找了


哈哈,google已经帮不上忙了才来这里找的
作者: xulang726    时间: 2012-09-10 17:18
能不能改用SSHFS?
作者: mygod100    时间: 2012-09-11 15:30
xulang726 发表于 2012-09-10 17:18
能不能改用SSHFS?


谢谢,试用了一下SSHFS,使用起来是比较方便,也不用root权限就可以使用。

但是效率不行,实际测试时,只有60M+,没有发挥到10G网络的速度.(注,mount源为tmpfs,即内存,不存在硬盘瓶颈)
作者: xulang726    时间: 2012-09-11 16:05
sshfs稳定性也不好,就是方便,看一下sourceforge上有没有其他的NFS实现,晚上回去查一下,觉得有人推荐过的
作者: xulang    时间: 2012-09-11 22:18
本帖最后由 xulang 于 2012-09-11 22:22 编辑

要不把sever端共享的NFS盘用FTP取,看一下结果?没有找到那个sf的nfs实现,是windows的freenfs,记错了
作者: xulang726    时间: 2012-09-21 17:31
试过nfsstas -s (server), nfsstat -c (client)看一下没有?




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2