No servidor aumentando RPCNFSDCOUNT
number em /etc/default/nfs-kernel-server
pode ajudar;
no (s) cliente (s), pode valer a pena tentar valores menores de rsize
e wsize
...
Eu tenho um novo dispositivo RAID10 mdadm que é saudável, construído a partir de unidades SATA 3 de 4 x 7200 rpm:
# 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]
(Existem 2 outros dispositivos mdadm, mas o md2 é o mais relevante)
No topo do md2 existe um sistema de arquivos ext4, criado com:
mkfs.ext4 -m0 -L bups -b 4096 -E stride=8,stripe-width=32 /dev/md2
Isso tem um desempenho horrível ao usá-lo como um destino de backup sobre o NFS. Com um único cliente escrevendo, vejo figuras como essa, com ~ 30% a 50% de espera de E / S em 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
A média de carga é alta:
# uptime
11:40:38 up 21:21, 1 user, load average: 9.90, 9.18, 8.92
Usar dd
mostra um desempenho decente:
# 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
A conectividade é gigabit todo o caminho. Este é o CentOS 6.2 x64 em um novíssimo HP DL160 Gen8 com 16gb de RAM, supostamente um alvo de backup dedicado, mas não com esse tipo de desempenho.
EDITAR
O controlador é um HP B120i no modo SATA AHCI.
/etc/exports
no servidor:
/bup/phdv 172.31.42.30(rw,no_root_squash)
/etc/fstab
extract no cliente (também CentOS 6.4 x64):
svr-bup1.example.com:/bup/pronto /mnt/bup nfs soft 0 0
EDIT 2
Informações relevantes de /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
No servidor aumentando RPCNFSDCOUNT
number em /etc/default/nfs-kernel-server
pode ajudar;
no (s) cliente (s), pode valer a pena tentar valores menores de rsize
e wsize
...
Tags performance nfs raid mdadm linux