我有一个新的mdadm RAID10设备是健康的,由4个7200转/分钟的SATA 3驱动器构build而成:
# cat /proc/mdstat Personalities : [raid10] [raid1] md2 : active raid10 sdc3[5] sda3[4] sdb3[1] sdd3[3] 3885267968 blocks super 1.2 512K chunks 2 near-copies [4/4] [UUUU]
(还有两个mdadm设备,但是md2是相关的)
在md2之上是一个ext4文件系统,用以下方式创build:
mkfs.ext4 -m0 -L bups -b 4096 -E stride=8,stripe-width=32 /dev/md2
在通过NFS使用它作为备份目标时,性能非常糟糕。 在单个客户端写作时,我看到了这样的数字,大约有30%到50%的I / O等待在top :
Device: tps MB_read/s MB_wrtn/s MB_read MB_wrtn sda 197.00 0.00 1.07 0 1 sdb 189.00 0.00 1.09 0 1 sdc 300.00 0.00 1.78 0 1 sdd 290.00 0.00 1.78 0 1 md2 785.00 0.00 2.86 0 2
负载平均值高:
# uptime 11:40:38 up 21:21, 1 user, load average: 9.90, 9.18, 8.92
使用dd显示体面的performance:
# dd if=/dev/zero of=/bup/test.dd bs=4096 count=1024000 1024000+0 records in 1024000+0 records out 4194304000 bytes (4.2 GB) copied, 18.7801 s, 223 MB/s
所有的连接都是千兆位的。 这是全新的HP DL160 Gen8上的CentOS 6.2 x64,配备16GB内存,应该是一个专门的备份目标,但不具备这种性能。
编辑
控制器是采用SATA AHCI模式的HP B120i。
/etc/exports在服务器上:
/bup/phdv 172.31.42.30(rw,no_root_squash)
/etc/fstab解压到客户端(也是CentOS 6.4 x64):
svr-bup1.example.com:/bup/pronto /mnt/bup nfs soft 0 0
编辑2
/proc/mounts相关信息:
svr-bup1.example.com:/bup/pronto /mnt/bup2 nfs4 rw,relatime,vers=4,rsize=1048576,wsize=1048576,namlen=255,soft,proto=tcp6,port=0,timeo=600,retrans=2,sec=sys,clientaddr=2001:xxxx:xxxx:xxxx::240,minorversion=0,local_lock=none,addr=2001:xxxx:xxxx:xxxx::210 0 0
在服务器上增加/etc/default/nfs-kernel-server RPCNFSDCOUNT号可能会有帮助;
在客户端(s)它可能是值得尝试较小的rsize和wsize值…