Como medir e monitorar o desempenho de E / S

0

Temos um cluster Linux com nós de trabalho compartilhando um sistema de arquivos remoto comum. Queremos otimizar o I / O, em particular quando os trabalhadores leem a partir do fs remoto.

O ponto de partida é medir o desempenho de E / S. O cluster é usado por muitos usuários e seus trabalhos estão fazendo uma leitura intensiva.

Eu gostaria de monitorar o desempenho muitas vezes durante o dia para ver como elas mudam (noite / dia / dias úteis / antes e depois da atualização do hardware, ...).

A questão é como medir o desempenho. Se possível, gostaria de desacoplar o desempenho da rede do desempenho do disco. Eu quero testar muitos tipos diferentes de leitura, arquivos grandes, pequenos, sequenciais, aleatórios, de acesso, ... evitar o cache, ...

Você tem experiência com esse tipo de teste? Você conhece algumas ferramentas gratuitas, biblioteca, fácil de interface com outros utilitários (visualização, ...)

Até agora, a coisa mais inteligente que posso fazer é usar dd

    
por wiso 17.05.2013 / 15:57

1 resposta

0

Eu usei iozone no passado para testar discos. Ele tem muitas opções para configurar exatamente a maneira como sua carga de trabalho ao vivo vai se parecer. Para ser mais específico, seria necessário saber exatamente que tipo de carga você terá. Eu sugiro dar uma olhada na página do manual do iozone .

A rede é praticamente o mesmo problema. Diferentes tipos de cargas de trabalho exigem testes diferentes. Dependendo do protocolo, você pode ter que usar abordagens radicalmente diferentes. Se você quiser apenas testar o desempenho bruto da rede, poderá usar hping para inundar sua rede com pacotes.

Se, por exemplo, você quiser testar um servidor HTTP, pode usar cerco ou jMeter para fazer isso.

Se, por outro lado, você desejar monitorar o servidor enquanto estiver em produção, precisará empregar algum tipo de medição. As ferramentas mais populares de medição do Linux provavelmente são munin , Cactos e collectd , mas há uma tonelada de ferramentas por aí. A maioria deles pega plugins que são facilmente escritos em um shell script ou em sua linguagem de programação favorita, mas eles também contêm vários plugins para monitorar a carga de trabalho IO, etc.

    
por 17.05.2013 / 16:05