Existe uma maneira de descobrir porque meu servidor tinha uma carga alta

5

Neste momento, fui forçado a reiniciar remotamente o meu sistema CentOS 6.3 devido a uma carga ultra alta (75!) que paralisou o sistema. Este é um servidor web / mail que serve um blog wordpress (mySQL + PHP).

Existe algum log que eu possa analisar e tentar descobrir qual é a causa disso?

Este é o email que recebi agora do sistema sobre o evento de ontem:

This is an automated message notifying you that the 5 minute load average on your system is 75.91.
This has exceeded the 10 threshold.

One Minute      - 83.24
Five Minutes    - 75.91
Fifteen Minutes - 39.35

top - 22:25:30 up 122 days,  7:28,  0 users,  load average: 99.14, 80.70, 42.31
Tasks: 298 total,   1 running, 297 sleeping,   0 stopped,   0 zombie
Cpu(s):  1.2%us,  0.5%sy,  0.0%ni, 98.1%id,  0.3%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   1020176k total,   956828k used,    63348k free,     2788k buffers
Swap:  4194296k total,  1391900k used,  2802396k free,    25164k cached

 PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            
   1 root      20   0 19352  448  444 S  0.0  0.0   0:08.27 /sbin/init                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
   2 root      20   0     0    0    0 S  0.0  0.0   0:00.00 [kthreadd]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
   3 root      RT   0     0    0    0 S  0.0  0.0   0:09.43 [migration/0]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
   4 root      20   0     0    0    0 S  0.0  0.0   1884:48 [ksoftirqd/0]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
   5 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 [migration/0]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
   6 root      RT   0     0    0    0 S  0.0  0.0   0:06.06 [watchdog/0]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       
   7 root      RT   0     0    0    0 S  0.0  0.0   0:07.81 [migration/1]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
   8 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 [migration/1]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
   9 root      20   0     0    0    0 S  0.0  0.0   7:25.62 [ksoftirqd/1]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
  10 root      RT   0     0    0    0 S  0.0  0.0   0:04.58 [watchdog/1]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       
  11 root      20   0     0    0    0 S  0.0  0.0   4:48.95 [events/0]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
  12 root      20   0     0    0    0 S  0.0  0.0   9:13.85 [events/1]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
  13 root      20   0     0    0    0 S  0.0  0.0   0:00.00 [cgroup]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           
  14 root      20   0     0    0    0 S  0.0  0.0   0:08.21 [khelper]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
  15 root      20   0     0    0    0 S  0.0  0.0   0:00.00 [netns]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            
  16 root      20   0     0    0    0 S  0.0  0.0   0:00.00 [async/mgr]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
  17 root      20   0     0    0    0 S  0.0  0.0   0:00.00 [pm]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               
  18 root      20   0     0    0    0 S  0.0  0.0   0:21.72 [sync_supers]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
  19 root      20   0     0    0    0 S  0.0  0.0   0:20.65 [bdi-default]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
  20 root      20   0     0    0    0 S  0.0  0.0   0:00.00 [kintegrityd/0]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
  21 root      20   0     0    0    0 S  0.0  0.0   0:00.00 [kintegrityd/1]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
  22 root      20   0     0    0    0 S  0.0  0.0   5:26.09 [kblockd/0]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
  23 root      20   0     0    0    0 S  0.0  0.0   0:22.90 [kblockd/1] 

Não tenho certeza se isso pode ajudar.

Tudo parece estar usando 0% da CPU ...

este é outro email ...

This is an automated message notifying you that the 5 minute load average on your system is 70.53.
This has exceeded the 10 threshold.

One Minute      - 94.79
Five Minutes    - 70.53
Fifteen Minutes - 32.68

top - 22:23:34 up 122 days,  7:26,  0 users,  load average: 96.88, 74.74, 35.91
Tasks: 283 total,   2 running, 281 sleeping,   0 stopped,   0 zombie
Cpu(s):  1.2%us,  0.5%sy,  0.0%ni, 98.1%id,  0.3%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   1020176k total,   970440k used,    49736k free,     3196k buffers
Swap:  4194296k total,  1249404k used,  2944892k free,    29836k cached

 PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            
6715 apache    20   0  217m 7804 3252 D  1.9  0.8   0:00.28 /usr/sbin/httpd -k start -DSSL                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     
6770 apache    20   0  218m 8772 3368 D  1.9  0.9   0:00.28 /usr/sbin/httpd -k start -DSSL                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     
6799 apache    20   0  301m 8088 3184 D  1.9  0.8   0:00.14 /usr/sbin/httpd -k start -DSSL                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     
7265 root      20   0 15160 1220  808 R  1.9  0.1   0:00.02 /usr/bin/top -c -b -n 1                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            
7266 root      20   0 15160 1220  808 R  1.9  0.1   0:00.02 /usr/bin/top -c -b -n 1                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            
   1 root      20   0 19352  448  444 S  0.0  0.0   0:08.27 /sbin/init                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
   2 root      20   0     0    0    0 S  0.0  0.0   0:00.00 [kthreadd]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
   3 root      RT   0     0    0    0 S  0.0  0.0   0:09.43 [migration/0]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
   4 root      20   0     0    0    0 S  0.0  0.0   1884:48 [ksoftirqd/0]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
   5 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 [migration/0]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
   6 root      RT   0     0    0    0 S  0.0  0.0   0:06.06 [watchdog/0]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       
   7 root      RT   0     0    0    0 S  0.0  0.0   0:07.81 [migration/1]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
   8 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 [migration/1]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
   9 root      20   0     0    0    0 S  0.0  0.0   7:22.58 [ksoftirqd/1]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
  10 root      RT   0     0    0    0 S  0.0  0.0   0:04.58 [watchdog/1]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       
  11 root      20   0     0    0    0 S  0.0  0.0   4:48.95 [events/0]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
  12 root      20   0     0    0    0 S  0.0  0.0   9:13.85 [events/1]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
  13 root      20   0     0    0    0 S  0.0  0.0   0:00.00 [cgroup]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           
  14 root      20   0     0    0    0 S  0.0  0.0   0:08.21 [khelper]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
  15 root      20   0     0    0    0 S  0.0  0.0   0:00.00 [netns]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            
  16 root      20   0     0    0    0 S  0.0  0.0   0:00.00 [async/mgr]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
  17 root      20   0     0    0    0 S  0.0  0.0   0:00.00 [pm]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               
  18 root      20   0     0    0    0 S  0.0  0.0   0:21.72 [sync_supers]                       

Sim, estou usando o Apache. 75 é a média de carga obtida no topo nos últimos 5 minutos.

    
por SpaceDog 23.10.2013 / 00:52

3 respostas

3

A quantidade de troca usada sugere que a troca pode ser a culpa. A saída do vmstat mostraria isso melhor durante o cenário do problema.

vmstat 1 30

No entanto, nem o top nem o vmstat são adequados para diagnosticar problemas após o fato.

Meu conselho geral seria instalar o pacote sysstat . Isso permitirá que as métricas do sistema sejam salvas periodicamente e as informações poderão ser recuperadas posteriormente por sar . O Sysstat pode ser configurado para detalhes substanciais, mas a configuração padrão fornecerá uma visão geral inicial sobre o uso da CPU, carga do sistema, paginação e troca.

yum install sysstat

sar 
sar -q
sar -B
sar -W

Se isso revelar pouco uso, talvez seja necessário analisar mais profundamente. Pode estar ocorrendo algo que não é imediatamente visível por meio das métricas de desempenho comuns, além da fila de processos (média de carregamento). Uma possibilidade é que a CPU esteja preocupada com solicitações de interrupção excessivas, fazendo com que os processos fiquem em fila pelo menor tempo de processamento disponível para o sistema.

Se for esse o caso, você pode encontrar algumas dicas em / proc / interrupts

cat /proc/interrupts

Talvez os adaptadores de rede ou o cronômetro local mostrem um número anormalmente alto de interrupções?

Pode se familiarizar com perf e aguardar a próxima ocorrência do problema. Comece a gravar assim que o problema começar ou automatize o processo com um script que é acionado em média de alta carga.

perf record -a

perf report

O Perf fornece uma visão incrivelmente detalhada das operações no sistema, mas também coleta muitos dados e gera uma sobrecarga significativa, tornando impraticável a execução contínua.

No caso do CentOS 6.3, há uma chance de que médias misteriosas de alta carga sejam eliminadas com uma atualização para o CentOS 6.4, que resolve um bug na fonte do kernel que se relaciona ao cronômetro local. No entanto, o problema também pode ser causado por qualquer driver que possa ter sido fornecido pelo fornecedor do hardware.

    
por 22.11.2014 / 07:27
1

A menos que você tenha algum monitoramento do sistema em andamento com o registro, é difícil dizer o que explica a alta carga do sistema.

Uma causa comum de queda de desempenho é a surra devido à exaustão da RAM.

Na maioria dos sistemas Unix, o thrashing não leva a uma carga alta, mas o Linux conta processos esperando por E / S nessa métrica, de modo que pode ser o caso aqui.

    
por 23.10.2013 / 05:12
0

Para descobrir quais processos são um problema:

Executar top -H (o -H permite mostrar segmentos)

Os atalhos de teclado variam por versão.

Com o topo mais antigo (antes de 3.3?):

Pressione Shift + o para abrir as opções de classificação.
Então w para classificar pelo status do processo.
Então Digite para voltar para a página principal.
Então Shift + R para reverter a classificação.

Com o topo mais recente (3.3? e depois):

Pressione f para exibir as opções de campo.
Use as teclas de seta para ir para S = Process Status e pressione s .
Pressione q para voltar à página principal.
Pressione Shift + R para inverter a classificação.

Em seguida, na coluna S , procure por processos que tenham D ou R (agora eles devem estar no topo). Estes serão processos que contribuem para o carregamento do sistema.

Se o processo mostrar um D , isso significa "ininterrupto sleep". Geralmente isso é causado quando o processo está esperando na E / S (disco, rede, etc).
Se o processo mostrar um R , isso significa que está apenas fazendo computação normal.

Para saber mais sobre o que esses processos estão fazendo:

Com o topo mais antigo:

Pressione f e y para ativar o campo WCHAN .

Com o topo mais recente:

Pressione f para exibir as opções de campo.
Use as teclas de seta para ir para WCHAN = Sleeping in Function e pressione d para ativá-lo.
Então q para voltar para a página principal.

Se o seu sistema tiver as opções de kernel necessárias e o arquivo wchan estiver presente em seu sistema (eu esqueci onde está e como é chamado) , o campo WCHAN deve mostrar o kernel função que o processo está executando atualmente (se o campo mostrar apenas - ou ? em tudo, você não tem suporte). Um pouco de google aqui e você deve estar no seu caminho.

Se você não tem suporte, você pode sempre tentar um strace nos processos para descobrir o que eles estão fazendo, mas essa é a maneira difícil.

    
por 23.10.2013 / 06:05