[FUG-BR] Melhorar a performance do servidor de NFS

Francisco Cardoso fricardo em bsd.com.br
Terça Setembro 9 11:31:42 BRT 2008


2008/9/8 Ari Arantes Filho <ari em dd.com.br>

> Pessoal,
>
> Estamos com algumas dúvidas de como melhorar a performance do servidor de
> NFS.
>
> Seguem os testes feitos:
>
> - 2 servidores IBM x3550 com HD SAS
>
> Servidor 1: FreeBSD 7 atualizado como NFS Server
> Servidor 2: FreeBSD 7 atualizado como NFS client
>
> As placas de rede são gigabit e existe 1 switch também giga da 3COM
> utilizado nos testes.
>
> Vejam os tempos de gravação e iostats p/ a gravação local:
>
> [root em ibmx3550vm01 ~]# time mkfile 500m /hd/teste.tmp
>
> real    0m4.394s
> user    0m0.008s
> sys     0m0.854s
>
> /hd é uma partição exportada no NFS server.
>
> Resultado do iostat enquanto o comando acima era executado:
>
> [root em ibmx3550vm01 ~]# iostat -c 1000
>      tty           aacd0             cpu
>  tin tout  KB/t tps  MB/s  us ni sy in id
>   2   47  0.00   0  0.00   0  0  0  0 100
>   0  130  0.00   0  0.00   0  0  0  0 100
>   1   46 63.12 457 28.14   0  0  4  0 96
>   0   43 63.92 1887 117.80   0  0  6  0 94
>   0   45 63.87 1895 118.21   0  0  5  0 95
>   0   45 63.90 1875 117.01   0  0  7  1 92
>   0  114 63.86 1874 116.88   0  0  5  0 94
>   0   45 62.22   9  0.55   0  0  0  0 100
>   0   44 55.00  18  0.97   0  0  0  0 100
>   0   44  0.00   0  0.00   0  0  0  0 100
>
> via NFS
> =======
> resultado de:
> [root em ibmx3550vm02 ~]# time mkfile 500m /mnt/storage/teste.tmp
>
> real    0m17.661s
> user    0m0.000s
> sys     0m1.017s
>
> O /mnt/storage é o ponto de montagem do NFS do servidor 01 (/hd).
>
> Resultado da máquina NFS Server (01) enquanto era criado o arquivo pela
> rede:
>
> [root em ibmx3550vm01 ~]# iostat -c 1000
>      tty           aacd0             cpu
>  tin tout  KB/t tps  MB/s  us ni sy in id
>   0   44  0.00   0  0.00   0  0  0  0 100
>   0   44 16.00 292  4.56   0  0  4  0 96
>   0   43 16.00 1969 30.77   0  0  6  2 92
>   0   44 16.00 1857 29.02   0  0  5  2 93
>   0   44 16.00 1852 28.94   0  0  3  2 96
>   0   44 16.00 1851 28.92   0  0  3  2 95
>   0   44 16.00 1849 28.89   0  0  4  2 93
>   0   44 16.00 1855 28.99   0  0  4  2 95
>   0   44 16.00 1867 29.17   0  0  5  2 93
>   0   44 16.00 1965 30.70   0  0  5  2 94
>   0   44 16.00 1853 28.96   0  0  5  2 94
>   0   44 16.00 1884 29.44   0  0  5  3 92
>   0   44 16.00 1947 30.42   0  0  6  2 92
>   0   44 16.00 1852 28.94   0  0  6  2 92
>   0   44 16.00 1959 30.61   0  0  6  2 93
>   0   44 16.00 1877 29.33   0  0  5  2 93
>   0   44 16.00 1923 30.05   0  0  5  2 92
>   0  130 16.00 1911 29.86   0  0  6  2 92
>   0   44 16.00 1848 28.88   0  0  5  3 92
>   0   44 16.00 530  8.29   0  0  3  0 97
>   0   43 16.00   1  0.02   0  0  0  0 100
>
>
> Vejam que a taxa de IO pelo NFS não passa de 30 MB/s, enquanto localmente
> faz mais de 110 MB/s. O número de tps estão semelhantes.
>
> Como podemos fazer para melhorar a performance do NFS? Existem 4 daemons do
> NFS e está configurado usando UDP. A configuração está default.
>
> Alguma dica para melhorar os tempos de gravação pelo NFS? Sei que melhor
> que
> localmente não fica, mas a diferença é grande. Tem espaço de processamento
> de disco sobrando e não está sendo consumido, fazendo com que os tempos
> fiquem piores.
>
> Obrigado,
>
> Ari
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>

Só chutando ... não conheço a sua configuração, mas tente as dicas da seção
27.3.6 e ainda e veja se as do site abaixo servem para você:

http://freebsd.peon.net/quickies/5/

Talvez seja uma questão de testes até encontrar a melhor combinação de
rsize, wsize etc ... ou não ...

Francisco Ricardo

-- 
________________________________________
FreeBSD - The Power to Serve
www.freebsd.org


Mais detalhes sobre a lista de discussão freebsd