iostat, normalmente fornecido pelo pacote sysstat, informa a atividade da CPU e dos dispositivos de bloco. Use amostras repetidas junto com a latência da aplicação: o throughput ou a utilização, sozinhos, não comprovam que o armazenamento esteja causando um problema perceptível ao usuário.
Utilização de Processos · Lição 5
Monitoramento de E/S
Aprenda a usar amostras de iostat para investigar a atividade da CPU e dos dispositivos de bloco.
Coleta de Amostras Úteis
Execute estatísticas detalhadas dos dispositivos em intervalos de um segundo:
$ iostat -xz 1
Nas implementações comuns, o primeiro relatório contém médias desde o boot, e os relatórios posteriores abrangem cada intervalo. A opção -x acrescenta campos detalhados, enquanto -z omite dispositivos inativos. Aguarde vários intervalos para capturar períodos normais e problemáticos.
O que o primeiro relatório de iostat normalmente representa?
Leitura dos Campos da CPU
A seção da CPU normalmente inclui os tempos de usuário (%user), sistema (%system), ocioso (%idle), espera por E/S (%iowait) e tomado pela máquina virtual (%steal). A espera por E/S é o tempo ocioso da CPU durante o qual o sistema possui uma solicitação de E/S pendente; não é a porcentagem de ocupação de um disco.
O que %iowait descreve?
Leitura dos Campos dos Dispositivos
Os nomes dos campos variam conforme a versão do sysstat, mas alguns conceitos úteis são:
- As operações ou os dados de leitura e escrita por segundo mostram a taxa da carga de trabalho.
awaitinforma a latência média das solicitações, incluindo o tempo na fila e de atendimento.- Os campos de tamanho médio da fila mostram as solicitações aguardando ou sendo atendidas.
%utilinforma a porcentagem do tempo decorrido durante o qual o dispositivo possuía E/S em andamento.
Um %util alto pode indicar saturação em um dispositivo serial simples, mas não se traduz diretamente na capacidade de desempenho de um armazenamento paralelo, arranjo ou dispositivo virtual. Compare a latência com o projeto do dispositivo, o padrão da carga de trabalho e o objetivo de serviço.
Qual campo está mais diretamente associado à latência média das solicitações de E/S?
Relação entre as Evidências
Mapeie os nomes dos dispositivos para as montagens e os dispositivos subjacentes antes de tirar conclusões:
$ lsblk -o NAME,TYPE,SIZE,FSTYPE,MOUNTPOINTS
$ findmnt
Depois, relacione os intervalos de iostat ao tempo de resposta da aplicação, às métricas do banco de dados ou sistema de arquivos e à E/S no nível dos processos. Device mapper, RAID, contêineres e armazenamento apoiado por rede podem acrescentar camadas que exigem suas próprias ferramentas.
O que você deve fazer depois de observar um %util alto em um dispositivo?
Lição concluída
Você concluiu Monitoramento de E/S
Agora você sabe usar iostat como evidência em uma investigação de E/S.
Colete vários intervalos de estatísticas detalhadas.
Diferencie a espera da CPU por E/S do tempo de ocupação do dispositivo.
Interprete juntos a latência, o enfileiramento, o throughput e a utilização.
Mapeie os dispositivos para as cargas de trabalho e verifique o impacto na aplicação.
Salve seu progresso
Crie uma conta gratuita para salvar esta lição e continuar em qualquer dispositivo.
Criar uma conta gratuita