Por que o Apache recebe o SIGTERM e simplesmente para?

Por que o Apache recebe o SIGTERM e simplesmente para?

Eu tenho um servidor rodando nginx para conteúdo estático, com o apache por trás dele, rodando código php e python.

Cerca de uma vez por dia, o Apache simplesmente fecha, deixando o Nginx exibindo um erro 502 Bad Gateway. Tudo o que posso encontrar nos logs é que o Apache recebeu o SIGTERM, sem outros detalhes.

[mpm_prefork:notice] [pid 11811] AH00169: SIGTERM capturado, desligando

Ele está funcionando corretamente há algum tempo, sem nenhuma manutenção além de ficar sem espaço em disco. Fiz algumas configurações de proxy SSL há alguns meses. Executando o Debian Jessie

Responder1

Use auditd para registrar todas as syscalls de eliminação. -S kill em um arquivo audit.rules. VerComo usar a auditoria para monitorar um SYSCALL específico?. As entradas de log conterão o pid, uid e exe de cada kill, encontre aquele logo antes do encerramento do httpd.

Acho que este é um script de rotação de log que não está reiniciando corretamente.

Responder2

pego SIGTERM

Isso significa que um sistema está enviando um comando de encerramento para o Apache. Eu começaria a procurar cron jobs Rogue que parassem/reiniciassem o Apache ou começaria a examinar seus sarlogs para ver se você está tendo algum problema de recursos. Quando você está tendo problemas de memória, o servidor interrompe automaticamente os processos para se manter ativo. O Apache normalmente é uma das coisas que será eliminada assim em problemas de memória.

informação relacionada