iostat
pode relatar estatísticas como essa. Geralmente incluído em sua distro no pacote sysstat.
dstat também pode valer a pena, é um substituto moderno.
Às vezes, meus servidores mostrarão uma média de carga alta no programa "top" (por exemplo, load é ~ 10 em uma máquina de 4 núcleos), mas o uso real da CPU não é particularmente alto.
Suponho que o problema é que há muitas tarefas com I / O intenso em execução. Existe alguma maneira fácil de identificar esses trabalhos que estão causando a carga, se os valores de "% CPU" no topo não são tão altos?
iostat
pode relatar estatísticas como essa. Geralmente incluído em sua distro no pacote sysstat.
dstat também pode valer a pena, é um substituto moderno.
Se você tiver contabilidade de IO em seu kernel, poderá usar iotop
para dar informações como essa. Além disso, ferramentas de monitoramento como collectd podem gravar e relatar os dados.
Para descobrir o que está causando carga alta, você pode verificar algumas coisas.
vmstat -w
irá mostrar-lhe ovierwiem (processos, swap, mem, cpu, io, sistema) pmstat -P ALL
fornecerá estatísticas (com% iowait) por núcleo de cpu iostat -x
procura alta% util ou longa espera ou grande tamanho médio da fila
iotop
ps -ax
procura estado D que é ininterrompível (normalmente IO), execute-o mais uma vez, verifique se eles ainda estão no estado D
sar -b
- atividades globais do io sar -d
- atividades io do dispositivo de bloco individual Tags linux