Este tutorial cobrirá os fundamentos do uso da ferramenta vmstat para monitorar o desempenho do sistema usando exemplos simples e rápidos. Embora a distribuição Linux em uso não importe significativamente para este guia, é bom notar que a testamos em um Debian 10.06 sistema.
Introdução ao vmstat?
Vmstat é uma ferramenta de linha de comando usada para monitorar e relatar o uso de recursos em seu sistema. Ele monitora o uso de recursos do sistema, como memória do sistema, processador e swap.
Ele fornece relatórios de dados em tempo real que podem ajudar os administradores de sistema e solucionadores de problemas do Linux de forma rápida e fácil a determinar as causas dos problemas de desempenho e alto uso de memória em um sistema.
Como usar o vmstat
Para usar a ferramenta vmstat, execute o comando vmstat no terminal. Você obterá uma saída semelhante à mostrada abaixo:
Usar o comando vmstat sem argumentos resulta em uma visão média do uso de recursos do sistema desde a última reinicialização do sistema. Para filtrar informações precisas, use o comando:
vmstatDepois de usar a sintaxe acima, vmstat relata o sistema médio usado desde a última reinicialização subsequente até que o valor de contagem seja alcançado. Por exemplo, se o valor da contagem for 10, o vmstat exibirá o uso de informações do sistema 10 vezes. O comando também especifica que vmstat deve relatar dados a cada valor de intervalo (em segundos).
Uso de Vmstat
Dependendo das informações ou tipo de problema que você está diagnosticando, você frequentemente executará o vmstat com um pequeno valor de intervalo. Considere a seguinte saída vmstat. Reportar a cada 2 segundos por 15 vezes.
Você também pode executar o comando vmstat sem o argumento de contagem. Isso fornecerá relatórios de uso do sistema atual em tempo real para o intervalo especificado.
Por exemplo:
É uma opção melhor gerar o relatório do vmstat para um arquivo de log para ler e analisar mais tarde. Para interromper uma sessão vmstat em execução, pressione as teclas CTRL + C.
Por padrão, vmstat mostrará relatórios de memória em kilobytes com um único kilobyte equivalente a 1024 bytes. Para configurar o vmstat para usar 1 kilobyte como 1000 bytes, use o comando:
vmstat -S k 1 10
Onde você quiser usar megabytes para exibir o tamanho da memória, use o argumento -S m, e Vmstat relatará um megabyte como equivalente a 1000 kilobytes.
Compreendendo a saída do vmstat
Como mencionamos, vmstat relata o estado do sistema atualizado. Ele fornece informações úteis sobre a condição do sistema, o que é útil na solução de problemas de desempenho.
Diante disso, é importante entender o que a saída do vmstat representa.
Vmstat agrupa as informações de saída em colunas. Estas colunas contêm informações relacionadas, dependendo do comando especificado. A seguir estão algumas das colunas de uma saída vmstat.
1: Coluna Procs
A tabela procs representa o número de trabalhos na fila (trabalhos esperando para serem executados). Esta coluna pode ajudá-lo a determinar os processos que impedem o sistema de executar outras tarefas.
Dentro da coluna procs, você encontrará as colunas r e b. Eles exibem o número total de processos esperando para entrar no processador e o número total de funções em um estado de hibernação.
Na maioria dos casos, os valores na coluna b são 0.
2: Coluna de Memória
A coluna de memória exibe informações sobre a quantidade total de memória livre e usada no sistema. Esta saída é semelhante ao comando livre.
Na coluna Memória, existem quatro outras colunas:
- Swapd
- Livre
- Buff
- Cache
A aba swapd exibe a quantidade de memória já trocada (trocada) em um arquivo swap ou partição swap.
Na coluna livre, você encontrará informações sobre a quantidade de memória não utilizada. (memória não alocada).
A coluna de buffers exibe informações sobre a quantidade de memória em uso. (memória alocada).
Finalmente, na coluna do cache, você encontrará informações sobre a memória alocada que pode ser trocada para o disco se os recursos forem necessários.
3: Coluna de Troca
Em seguida, temos a coluna de troca usada para relatar a velocidade na qual a memória é trocada de e para o arquivo ou partição de troca.
Usando o swapd e a atividade total do disco, o vmstat permite que você calcule a relação da atividade do disco com o sistema de troca.
Na coluna swap, você também encontrará o si e as colunas usadas para mostrar a quantidade de memória transferida do swap para a memória principal a cada segundo e a quantidade de memória movida para swap da memória principal a cada segundo.
4: Coluna I / O
Na próxima coluna, você encontrará informações sobre ações de entrada e saída do sistema, expressas em leitura e gravação por bloco. Na coluna I / O estão as colunas bi e bo, que representam o número de blocos recebidos do disco por segundo e o número de blocos enviados para o disco por segundo, respectivamente.
5: Coluna do Sistema
A coluna do sistema exibe informações sobre o número total de processos do sistema por segundo. A coluna do sistema tem mais duas colunas, i.e., em e cs. A primeira coluna mostra as interrupções do sistema (inclui interrupções do relógio do sistema) por segundo. A coluna cs indica o número de mudanças de contexto feitas pelo sistema para processar todas as tarefas com sucesso.
6: Coluna CPU
A última coluna é a CPU. Esta coluna exibe o uso de recursos da CPU. A coluna CPU tem quatro colunas principais embaixo dela.
- nós
- sv
- eu ia
- wa
A primeira coluna (us) representa a quantidade total de tempo usado pelo processador em tarefas criadas pelo usuário.
A próxima coluna (sv) exibe informações relacionadas ao tempo que o processador usa nos processos do kernel.
A coluna id mostra a quantidade de tempo que o processador gastou em modo inativo.
Finalmente, a coluna (wa) mostra a quantidade total de tempo usado pelo processador nas operações de I / O de espera.
Adicionar todos os valores nas colunas da CPU soma 100, representando uma porcentagem de tempo disponível.
Conclusão
Neste tutorial, aprendemos como usar o vmstat, uma ferramenta usada para relatar o uso de recursos do sistema. Também cobrimos como funciona e como podemos consultar informações específicas. Também discutimos como entender a saída do vmstat e usá-la para solucionar problemas de recursos do sistema.