Número excessivo de processos adormecidos no CentOS - como diagnosticar? [fechadas]

6

Eu tenho um grande número de processos para dormir, cerca de 600, a maioria dos quais são processos do Apache.

Devo matar todos esses processos de suspensão ou isso fará com que o Apache falhe completamente?

Por que esses processos estão dormindo em primeiro lugar?

O servidor está executando o CentOS 6 com o Apache 2.2.

    
por mr.soroush 25.11.2014 / 08:13

1 resposta

21

Matar todos os processos de suspensão do seu sistema não resolverá nenhum problema e muito menos o problema que você está tendo.

Ser estruturado e metódico em sua abordagem é muito melhor do que se movimentar loucamente.

Pessoalmente, eu acho Método Científico (outros chamam de algo diferente ) uma ferramenta maravilhosa para sair do kit de administração do sistema ao diagnosticar problemas.

  1. Qual é o problema real que você está tentando resolver?

A service stops responding.1

  1. Então, agora sabemos qual é o problema real que estamos resolvendo, temos alguma direção. Vamos reunir algumas informações para nos ajudar a descobrir uma solução.

    • O tempo do problema está relacionado? Isso acontece regularmente ou aleatoriamente?
    • Verifique seus logs, todos eles, não apenas os logs dos serviços em particular, pois algo pode estar causando o problema. As entradas de registro geralmente têm registros de data e hora, isto é para ajudá-lo a correlacionar eventos em vários aplicativos e serviços - use-os. Se necessário, aumente a verbosidade do log também.
    • Veja o que seu sistema está fazendo. Use ferramentas como top, vmstat, iostat, sar, ps, tcpdump ou até mesmo completas sistemas de monitoramento .

  2. Analise as informações coletadas. O que realmente está acontecendo no sistema quando o serviço pára de responder? Qual é o estado dos recursos do sistema?

  3. Tome as medidas adequadas para remediar. Espero que seja bastante óbvio o que está acontecendo, você está ficando sem memória e o assassino da OOM sai para jogar, sua atividade de swap é muito alta, sua fila de execução é muito longa, você é iobound, etc. provavelmente não está reunindo os dados corretos - você sabe o que fazer, volte para 2.

  4. Monitore o que as alterações introduzidas em 4. fazem.

  5. As alterações corrigiram o problema? É melhor? Isso é pior? Não há diferença? Aonde você vai daqui depende do que você encontra. Você pode precisar voltar para 2. e reunir mais dados pertinentes ou 3. para analisar novamente os dados que possui ou 4. porque identificou várias soluções em potencial.

  6. Documente suas descobertas e as alterações realizadas.

  7. Volte para a cama / lar do trabalho / para o pub.

1 Isso pode ser qualquer coisa que 'Meu servidor está lento', 'Meu servidor está usando muita memória' ...

    
por 25.11.2014 / 10:59