httpd рабочие становятся процессом зомби - PullRequest
0 голосов
/ 10 ноября 2018

Я запускаю службу php в контейнере докера через apache + mod_php. По какой-то причине рано или поздно я получаю «Служба недоступна» на обратном прокси. Осматривая контейнер, я всегда обнаруживаю, что все работники httpd стали зомби и больше не пожинаются мастер-процессом. Я предположил, что это произошло из-за проблем со зомби, которые были получены в докер-контейнерах, и попытался решить их, добавив tini как pid 1. К сожалению, это не помогло решить проблему, я полагаю, поскольку основной процесс httpd все еще выполняется, поэтому работники на самом деле не являются сиротами. быть пожатым pid 1. На данный момент у меня нет идей о том, как подойти к этой проблеме и, следовательно, попросить вашей помощи.

Кто-нибудь знает, как отладить такого рода проблемы?

Ниже приведен результат выполнения команды top в контейнере. Я использую простой альпийский как базовый образ с php7, установленным через 'apk'.

    9     1 root     S     169m   1%   3   0% /usr/sbin/httpd -D FOREGROUND
 5493     0 root     S     1592   0%   1   0% sh
 5501  5493 root     R     1524   0%   2   0% top
    1     0 root     S      760   0%   0   0% /sbin/tini -- /usr/sbin/httpd -D F
 5484     9 apache   Z        0   0%   3   0% [httpd]
 5492     9 apache   Z        0   0%   0   0% [httpd]
 5485     9 apache   Z        0   0%   0   0% [httpd]
 5490     9 apache   Z        0   0%   3   0% [httpd]
 5486     9 apache   Z        0   0%   0   0% [httpd]
 5487     9 apache   Z        0   0%   1   0% [httpd]
 5483     9 apache   Z        0   0%   3   0% [httpd]
 5482     9 apache   Z        0   0%   1   0% [httpd]
 5489     9 apache   Z        0   0%   1   0% [httpd]
 5491     9 apache   Z        0   0%   3   0% [httpd]
 5488     9 apache   Z        0   0%   0   0% [httpd]
...