Olá, eu sou linuxdicas
Ver o meu perfil


Novembro 2007

SMTW TFS
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30

Tag

Últimos comentários

Últimos artigos

Os meus links favoritos

    Divulga os conteúdos

    Juntar a MyDada

    Juntar a MyDada

    Partilha os teus conteúdos

    De.licio.us
    Tag ferramenta

    Efetuando stress-test em servidores Unix.

    by linuxdicas (21/11/2007 - 02:37)

    Efetuando stress-test em servidores Unix.

    Colaboração: Rodrigo Pace de Barros

    Stress é uma ferramenta que pode ser configurada para realizar um testes de stress de CPU, I/O, memória e disco em sistemas *nix. Sua licença é GPL.

    Esta ferramenta foi desenvolvida para vários sistemas operacionais, como dito acima. Assim, existem compilações específicas para determinados sistemas e, também, existe o source code disponível para compilação local.

    O download pode ser feito na seguinte URL:

    http://weather.ou.edu/~apw/projects/stress/#Download

    IMPORTANTE: Antes de realizar os testes, tenha no mínimo dois terminais abertos no servidor sobre teste. Assim, caso a ferramenta consuma muitos recursos da máquina, você terá a oportunidade de matar seu processo sem ter que esperar que o teste acabe.

    Abaixo seguem alguns exemplos práticos de como testar o seu servidor com esta ferramenta:

    1. Testando a CPU do servidor

     # stress --cpu 1k 

     

    Explicação: Este comando faz um fork de 1024 processos a serem processados pela CPU.

     # stress --cpu 12 --timeout 10s 

     

    Explicação: Este comando faz um fork de 12 processos a serem processados pela CPU e o tempo do teste deverá ser de 10 segundos.

    2. Testando a Memória do servidor

     # stress --vm 2 

     

    Explicação: Faz um fork de 2 processos que alocarão memória do servidor

     # stress --vm 2 --vm-bytes 128M 

     

    Explicação: Faz um fork de 2 processos que alocarão 128M cada durante o processo de stress test.

     # stress --vm 2 --vm-bytes 128M --vm-hang --timeout 1h 

     

    Explicação: Durante o teste serão alocados 256Mb de memória do servidor que somente serão liberados ao término do processo (após uma hora, segundo o parâmetro "--timeout 1h")

    3. Testando o I/O do servidor

     # stress --io 4 

     

    Explicação: Durante o teste, 4 processos farão múltiplas chamadas da função sync() (chamada de sistema que faz um flush do que existe na memória para o disco).

     # stress --io 4 --timeout 10s 

     

    Explicação: Faz exatamente o que o teste acima faz, porém, durante apenas 10 segundos.

    4. Testando o Disco do servidor

     # stress --hdd 6 

     

    Explicação: Faz com que 6 processos utilizem a chamada de sistema write(), responsável pela escrita em disco no sistema operacional.

     # stress --hdd 10 --hdd-bytes 2g --timeout 50s 

     

    Explicação: Faz com que 10 processos utilizem a chamada de sistema write() para escrever arquivos de 2Gb de dados em disco, durante 50 segundos. O padrão para o parâmetro --hdd-bytes é de arquivos de 1Gb.

     # stress --hdd 3 --hdd-noclean 

     

    Explicação: Faz com que 3 processos criem arquivos de 1Gb (default do stress) no ambiente e não façam o unlink destes processos. Para maiores detalhes a respeito do unlink, por favor, utilize "man unlink" em ambientes Unix.

    5. Utilizando vários comandos agregados


     

    O utilitário stress permite o uso de vários tipos de teste em uma única linha de comando. Segue um exemplo:

     # stress --cpu 8 --io 4 --vm 2 --vm-bytes 128M --timeout 10s 

     

    6. Referência

    Em http://weather.ou.edu/~apw/projects/stress/ podem ser encontrados mais detalhes a respeito do stress e suas formas de uso.




    Fonte: http://www.dicas-l.com.br/print/20060710.html

    Vota este artigo