Como usar o comando iostat no linux

Como usar o comando iostat no linux

Para avaliar o desempenho dos dispositivos de E/S, sua eficiência em relação ao tempo é calculada. No Linux, usamos o comando iostat para descobrir seu uso da CPU e outros dispositivos de entrada/saída conectados em relação ao tempo. Com base nesses relatórios, as configurações dos dispositivos de E/S podem ser alteradas para otimizar a carga na CPU.

O comando iostat é útil para monitorar a CPU e outros dispositivos de E/S conectados a ele, neste artigo, descobriremos mais sobre o comando iostat.

Instalação do comando iostat no Linux

O comando iostat não é pré-instalado em distribuições Linux, mas vem com o pacote padrão, portanto, pode ser instalado no Linux usando o gerenciador de pacotes da distribuição específica. Para instalar o comando iostat no redhat/centros/fedora, use o comando:

$ yum install sysstat

Enquanto no Ubuntu/Debian/Linuxmint Distribuições do Linux, ele pode ser instalado usando o comando:

$ sudo apt install sysstat

Uso do comando iostat no Linux

O comando iostat é simples e pode ser executado no terminal do Linux para exibir o relatório de monitoramento:

$ iostat

Na saída acima, podemos ver que o relatório é dividido em duas partes; Relatório de utilização da CPU e relatório de utilização de dispositivos.

Relatório de utilização da CPU: O relatório de utilização da CPU está exibindo o desempenho da CPU por diferentes parâmetros, a explicação para esses parâmetros é:

Parâmetro Explicação
%do utilizador O uso da CPU é exibido em %
%legal Ele mostra o uso da CPU em porcentagem no nível do usuário quando é usado com o comando "bela prioridade"
%sistema Ele mostra o uso da CPU em porcentagem no nível do sistema, que também é conhecido como nível de kernel
%Iowait É o tempo (tempo em %) em que a CPU era inerte e o sistema (kernel) recebe a solicitação de dispositivos de E/S
%roubar Ele mostra o tempo em porcentagem em que a CPU virtual esperou involuntariamente porque o hipervisor foi atendido por qualquer outro processador
%parado É o tempo (tempo em %) em que a CPU era inerte e o sistema (kernel) recebe a solicitação de dispositivos de E/S no

Relatório de utilização de dispositivos: O relatório de utilização de dispositivos exibe o desempenho dos dispositivos de E/S com base nos seguintes parâmetros:

Parâmetros Explicação
Dispositivo Ele mostra o nome do dispositivo de E/S cujo relatório está sendo exibido
tps Ele mostra as transferências por segundo (TPS), onde uma transferência é uma solicitação feita pelos dispositivos de E/S para a CPU e maior o TPS significa que a CPU é mais ocupada
kb_read/s Ele exibe a quantidade de dados lidos pela CPU por segundo, isso pode ser em diferentes unidades em kilobytes (kb) ou megabytes (MB), dependendo do tamanho
kb_wrtn/s Ele exibe a quantidade de dados escritos pela CPU por segundo, semelhante ao kb_read/s, isso pode ser em diferentes unidades em kilobytes (kb) ou megabytes (MB), dependendo do tamanho
KB_DSCD/S Ele exibe a taxa de dados descartados pela CPU por segundo, semelhante ao kb_read/s, isso pode ser em diferentes unidades em kilobytes (kb) ou megabytes (MB), dependendo do tamanho
kb_read Ele exibe o número total de blocos ou quantidade de dados lidos pela CPU
kb_wrtn Ele exibe o número total de blocos ou quantidade de dados escritos pela CPU

O iostat coleta todos esses dados da CPU e os dispositivos de E/S dos seguintes diretórios:

/proc/stat: Ele contém os detalhes das estatísticas do sistema

/Proc/Uptime: O tempo de atividade do sistema é extraído daqui

/proc/diskstats: As estatísticas de discos são extraídas daqui

/sys: Ele contém as estatísticas para dispositivos de bloco (dispositivos com tamanho fixo como harddisk)

/proc/self/MountStats: Ele contém os dados para sistemas de arquivos de rede

/dev/disk: Os nomes persistentes de dispositivos anexados ao sistema são extraídos daqui

A sintaxe geral do comando iostat

A sintaxe geral do uso do comando iostat no Linux é:

$ iostat [Opção] [nome do dispositivo]

Para exibir o relatório resumido da CPU e dispositivos de E/S

Se apenas o comando "iostat" for executado, ele exibirá o relatório resumido de ambos; CPU e dispositivos de E/S, mas também podem ser usados ​​com diferentes opções, que exibirão o resumo detalhado do dispositivo específico. Por exemplo, se quisermos exibir o relatório de utilização da CPU, usaremos o sinalizador "-C" com o comando iostat:

$ iostat -C

Para exibir o relatório de dispositivos de E/S apenas

Da mesma forma, podemos exibir apenas o relatório de dispositivos de E/S usando o sinalizador "-d":

$ iostat -d

Pode ser observado na saída, os detalhes dos dispositivos foram exibidos.

Para exibir relatório detalhado

Podemos usar o “-x”Flag, que é usado para exibir o relatório detalhado:

$ iostat -x

Na saída acima, alguns novos parâmetros são exibidos, a explicação de parâmetros importantes é mencionada na tabela abaixo:

Parâmetros Explicação
r/s O número total das solicitações de leitura concluídas por segundo
rrqm/s O número total das solicitações de leitura mescladas por segundo que são na fila do sistema
WRQM/S O número total de solicitações de gravação mescladas por segundo que são na fila do sistema
r_await É o tempo médio gasto pelas solicitações de leitura dos dispositivos de esperar na fila até a solicitação de tempo aceita pelo sistema
w_await É o tempo médio gasto pelas solicitações de gravação dos dispositivos de esperar na fila até a solicitação de tempo aceita pelo sistema
c/s O número total de solicitações de gravação concluídas por segundo
%util A duração do tempo da CPU em que os pedidos dos dispositivos de E/S foram enviados

Para exibir o relatório usando unidades diferentes

Opções “-k" e "-m”São usados ​​para exibir os resultados em Kilobytes e megabytes, Para entender, usaremos o “-mSinalizador para converter nossos resultados (que estão em KB) em megabytes:

$ iostat -m

Para exibir o relatório de dispositivos de bloco

Para obter o relatório de monitoramento dos dispositivos de bloco, o sinalizador “-P” é usado:

$ iostat -p
$ iostat -pdm

No comando acima, usamos três bandeiras "-P", "-d" e "-m" No total, para obter os detalhes dos dispositivos de bloco em megabytes.

Para exibir o relatório em formato legível por humanos e JSON

Também podemos exibir este relatório no formato legível pelo homem usando "-h":

$ iostat -h


Ou no formato JSON usando o “-Ó JSON”Opção:

$ iostat -o json

Conclusão

O comando iostat é usado no Linux para monitorar o desempenho da CPU e dos dispositivos de E/S, que é útil na distribuição da carga em diferentes dispositivos de armazenamento para obter a eficiência máxima da CPU. Neste artigo, explicamos a instalação do comando iostat e também os parâmetros do relatório gerado pelo comando iostat. O comando iostat também pode ser usado com sinalizadores diferentes; As bandeiras importantes e mais usadas também estão sendo discutidas.