Como solucionar problemas de carga alta quando o módulo do kernel é suspeito?

2

Eu notei um bug no Ubuntu 14.04.4 LTS; se o cliente NFS perder a conexão com o servidor NFS, a carga nesse sistema aumentará para mais de 30.

A única maneira que eu notei para trazer a carga para baixo é desmontar o compartilhamento NFS: umount -l /path/to/share

O problema é; Todas as ferramentas convencionais para me informar sobre o uso de recursos do sistema não são úteis: top , htop , iotop , perf top , sar , mpstat indicam que não há nada errado com o sistema; nenhum processo ou thread único está sendo executado, o que poderia explicar por que a carga é tão alta.

Minha suposição é que, como o NFS é implementado no kernel no Linux, essas ferramentas simplesmente não podem ver o que está acontecendo; Existe uma maneira de solucionar melhor esse problema? Como as ferramentas convencionais parecem não funcionar. Existe uma maneira de monitorar a fila de execução no Linux?

    
por user1529891 25.03.2016 / 16:34

1 resposta

2

A média de carga computada pela contagem do número de processos que são:

  1. atualmente em execução
  2. estão prontos para serem executados, mas aguardando para serem agendados (a CPU é ocupada por algum outro processo)
  3. bloqueado aguardando E / S (suspensão ininterrupta, mostrada como 'D' em top / ps )

e alimentando isso através de uma média ponderada (ao longo do tempo, para obter os valores de 1, 5 e 15 minutos).

Portanto, sua média de carga alta não significa que a CPU esteja sobrecarregada (veja o% Cpu em top , etc. para verificar isso); isso provavelmente significa que você tem um monte de processos bloqueados tentando acessar o servidor NFS (baixo).

    
por 25.03.2016 / 17:01

Tags