linux – 在同一服务器上的NFS / CIFS目录之间进行缓慢复制

前端之家收集整理的这篇文章主要介绍了linux – 在同一服务器上的NFS / CIFS目录之间进行缓慢复制前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
请耐心等待,我知道这很重要.这个问题可能适用于其他人,所以有一个答案会很棒.我不得不放弃赏金,因为它将会过期.

当我从客户端(Ubuntu)复制到我的NFS服务器(Debian)或从我的NFS服务器(Debian)复制时,它最大化了千兆位.但是,当我在同一台服务器上的两个目录之间进行复制时,它的速度在< 30MB /秒,最高可超过100MB /秒.大多数时候它大约是50MB /秒. 直接在NFS服务器(本地磁盘)上执行的相同副本我得到100-150 MB /秒,有时更多.此NFS导出与从同一服务器上的同一目录导出的CIFS共享之间的文件副本速度很慢,并且同一服务器上通过CIFS的两个目录之间的副本速度很慢. iperf显示客户端和服务器之间的双向速度为941Mb / 940Mb. 我确保NFS在服务器上使用异步.我还禁用了ZFS数据集上的同步,并尝试删除ZFS缓存和日志设备. 我已经在一个非常快速的4x2TB磁盘ZFS条带镜像上进行了测试,其中包含用于日志和缓存设备的SSD. NFS服务器规范:

Debian 8.2 core 4Ghz AMD-FX
32GB ram
ZFS raid 10,SSD cache/log
17GB ARC
4x2GB WD red drives
Intel 82574L NIC

测试客户:

Ubuntu 15.04,Core2Quad 2.4Ghz
8GB ram
SSD
Intel 82574L NIC

这就是当前设置的方式. / pool2 / Media是我一直在测试的份额.

客户端上的/ etc / fstab:

UUID=575701cc-53b1-450c-9981-e1adeaa283f0 /               ext4        errors=remount-ro,discard,noatime,user_xattr 0       1
UUID=16e505ad-ab7d-4c92-b414-c6a90078c400 none            swap    sw              0       0 
/dev/fd0        /media/floppy0  auto    rw,user,noauto,exec,utf8 0       0
tmpfs    /tmp    tmpfs   mode=1777       0       0


igor:/pool2/other     /other        nfs         soft,bg,nfsvers=4,intr,rsize=65536,wsize=65536,timeo=50,nolock
igor:/pool2/Media       /Media          nfs     soft,nolock,noac
igor:/pool2/home        /nfshome        nfs     soft,nolock

服务器(igor)上的/ etc / exports:

#LAN
/pool2/home 192.168.1.0/24(rw,sync,no_subtree_check,no_root_squash)
/pool2/other 192.168.1.0/24(rw,no_root_squash)
/pool2/Media 192.168.1.0/24(rw,async,no_root_squash)
/test 192.168.1.0/24(rw,no_root_squash)

#OpenVPN
/pool2/home 10.0.1.0/24(rw,no_root_squash)
/pool2/other 10.0.1.0/24(rw,no_root_squash)
/pool2/Media 10.0.1.0/24(rw,no_root_squash)

zpool状态:

pool: pool2
 state: ONLINE
  scan: scrub repaired 0 in 6h10m with 0 errors on Sat Oct  3 08:10:26 2015
config:

        NAME                                                 STATE     READ WRITE CKSUM
        pool2                                                ONLINE       0     0     0
          mirror-0                                           ONLINE       0     0     0
            ata-WDC_WD20EFRX-68AX9N0_WD-WMC300004469         ONLINE       0     0     0
            ata-WDC_WD20EFRX-68EUZN0_WD-WCC4MLK57MVX         ONLINE       0     0     0
          mirror-1                                           ONLINE       0     0     0
            ata-WDC_WD20EFRX-68AX9N0_WD-WCC1T0429536         ONLINE       0     0     0
            ata-WDC_WD20EFRX-68EUZN0_WD-WCC4M0VYKFCE         ONLINE       0     0     0
        logs
          ata-KINGSTON_SV300S37A120G_50026B7751153A9F-part1  ONLINE       0     0     0
        cache
          ata-KINGSTON_SV300S37A120G_50026B7751153A9F-part2  ONLINE       0     0     0

errors: No known data errors

  pool: pool3
 state: ONLINE
  scan: scrub repaired 0 in 3h13m with 0 errors on Sat Oct  3 05:13:33 2015
config:

        NAME                                        STATE     READ WRITE CKSUM
        pool3                                       ONLINE       0     0     0
          ata-WDC_WD40EFRX-68WT0N0_WD-WCC4E5PSCNYV  ONLINE       0     0     0

errors: No known data errors

/ pool2 bonnie在服务器上:

Version  1.97       ------Sequential Output------ --Sequential Input- --Random-
Concurrency   1     -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
igor            63G   100  99 187367  44 97357  24   325  99 274882  27 367.1  27

粘接

我尝试了绑定和直接连接,平衡-rr绑定,我得到220MB /秒读取和117MB /秒写入,40-50MB /秒复制.

iperf与粘接

[ ID] Interval           Transfer     Bandwidth       Retr
[  4]   0.00-10.00  sec  1.10 GBytes   942 Mbits/sec  707             sender
[  4]   0.00-10.00  sec  1.10 GBytes   941 Mbits/sec                  receiver
[  6]   0.00-10.00  sec  1.06 GBytes   909 Mbits/sec  672             sender
[  6]   0.00-10.00  sec  1.06 GBytes   908 Mbits/sec                  receiver
[SUM]   0.00-10.00  sec  2.15 GBytes  1.85 Gbits/sec  1379             sender
[SUM]   0.00-10.00  sec  2.15 GBytes  1.85 Gbits/sec                  receiver

Bonnie与NFS结合

Version  1.97       ------Sequential Output------ --Sequential Input- --Random-
Concurrency   1     -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
haze            16G  1442  99 192941  16 89157  15  3375  96 179716  13  6082  77

删除ssd缓存/日志,通过NFS复制,iostat显示了这一点

sdb               0.80     0.00   67.60  214.00  8561.60 23689.60   229.06     1.36    4.80   14.77    1.64   1.90  53.60
sdd               0.80     0.00   54.60  214.20  7016.00 23689.60   228.46     1.37    5.14   17.41    2.01   2.15  57.76
sdc               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
sde               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
sda               1.60     0.00  133.00  385.20 17011.20 45104.00   239.73     2.24    4.31   12.29    1.56   1.57  81.60
sdf               0.40     0.00  121.40  385.40 15387.20 45104.00   238.72     2.36    4.63   14.29    1.58   1.62  82.16
sdg               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
md0               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
sdh               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00

TMPFS

我通过NFS导出了一个tmpfs并进行了文件复制 – 速度为108MB /秒.从服务器本地,它是410MB /秒.

zvol挂载在NFS上

速度在< 50MB /秒至> 180MB /秒,但平均约为100MB /秒.这是我正在寻找的.这个zvol与我测试的同一个池(pool2).这真的让我觉得这更像是ZFS数据集/缓存类型问题. 原始磁盘读取测试 使用此命令

dd if=/dev/disk/by-id/ata-WDC_WD20EFRX-68AX9N0_WD-WMC300004469 of=/dev/null bs=1M count=2000

所有4个磁盘我得到146-148MB /秒

池中磁盘使用缓慢,不均匀

感谢ZFS邮件列表上非常有帮助的人,我知道如何更好地使用磁盘.

The reason for ZFS to prefer mirror-1 is that it seems to be added after mirror-0 had been filled quite a bit,now ZFS is trying to rebalance the fill level.

In case you want to get rid of that and have some time:
Iteratively zfs send the datasets of the pool to new datasets on itself,then destroy the source,repeat until pool is rebalanced.

我已修复此问题,现在所有磁盘上的数据都是水平的
这导致NFS的复制速度达到75MB /秒.而本地118MB /秒.

这个问题

我的问题.如果你能回答任何一个问题,我会接受你的回答:

>我的问题怎么解决? (通过NFS缓慢复制,但不是本地复制)
>如果您无法回答#1,您是否可以在Linux上使用ZFS的类似NFS服务器上尝试此操作并告诉我结果,以便我可以将其与之进行比较?
>如果您无法回答#1或#2,您是否可以通过NFS在类似但非ZFS服务器上尝试相同的测试?

解决方法

嗯……我注意到了一些问题,我想我发现了一两把烟.但是,首先我会问几个问题并对你可能的答案做出假设.我将首先介绍一些看起来无关紧要的数据,但我保证,值得一读.所以,请等一下……

猜你在找的Linux相关文章