[LINUX] Die Geschichte, mit der ich mich befasst habe, weil Apache bei AH00144 war

Um Mitternacht wurde ich informiert, dass das Produktionssystem ausgefallen war. image.png Die BtoB-Service-Website konnte nicht geöffnet werden. Ich teilte die Informationen mit, weil ich mich dringend mit dem Fall befasste, dass ich sie bis zur Geschäftsstunde des nächsten Tages lösen musste, indem ich alleine kämpfte.

Umgebung

Eine Website, die unter Ubuntu 16.04 auf Amazon EC2 läuft.

$ cat /etc/os-release
NAME="Ubuntu"
VERSION="16.04.3 LTS (Xenial Xerus)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 16.04.3 LTS"
VERSION_ID="16.04"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"
VERSION_CODENAME=xenial
UBUNTU_CODENAME=xenial

$ apache2 -v
Server version: Apache/2.4.18 (Ubuntu)

Fehlerprotokoll

Als ich mich am Server anmeldete, war Apache mit einem Fehler tot. Wenn Sie die Zeichenfolge ** Schwerwiegender Fehler ** sehen, werden Sie sofort krank.

$ tail /var/log/apache2/error.log
[Tue Aug 25 20:51:54.215281 2020] [mpm_prefork:emerg] [pid 930](43)Identifier removed: AH00144: couldn't grab the accept mutex
[Tue Aug 25 20:51:54.215369 2020] [mpm_prefork:emerg] [pid 929](43)Identifier removed: AH00144: couldn't grab the accept mutex
[Tue Aug 25 20:51:54.216849 2020] [mpm_prefork:emerg] [pid 933](43)Identifier removed: AH00144: couldn't grab the accept mutex
[Tue Aug 25 20:51:54.217182 2020] [mpm_prefork:emerg] [pid 931](43)Identifier removed: AH00144: couldn't grab the accept mutex
[Tue Aug 25 20:51:54.218350 2020] [mpm_prefork:emerg] [pid 928](43)Identifier removed: AH00144: couldn't grab the accept mutex
[Tue Aug 25 20:51:54.218757 2020] [mpm_prefork:emerg] [pid 1336](43)Identifier removed: AH00144: couldn't grab the accept mutex
[Tue Aug 25 20:51:55.040404 2020] [core:alert] [pid 1287] AH00050: Child 928 returned a Fatal error... Apache is exiting!
[Tue Aug 25 20:58:05.444208 2020] [mpm_prefork:emerg] [pid 1333](22)Invalid argument: AH00146: couldn't release the accept mutex

AH00144: Konnte den Accept Mutex nicht greifen wird für die Anzahl der Prozesse ausgegeben.

Vorerst, als ich mit ** AH00144 ** gegoogelt habe, https://hirose31.hatenablog.jp/entry/2020/03/10/190010 Ich habe einen ausgezeichneten Blog gefunden! Selbst in dieser Umgebung wurde Apache aus verschiedenen Gründen als Nicht-Systembenutzer gestartet (UID ist 1000 oder mehr). Die Reproduktionsmethode passt auch perfekt zusammen.

Bewältigung

Das Verfahren ist einfach.

/etc/apache2/apache2.conf


#Mutex file:${APACHE_LOCK_DIR} default

Ich habe nur kommentiert und neu gestartet. Möglicherweise möchten Sie eine Datei wie "/ etc / apache2 / conf-available / mutex-file.conf" erstellen.

Warum bist du neugierig auf diese Zeit? Ich würde die Situation jedoch gerne für eine Weile sehen.

Recommended Posts

Die Geschichte, mit der ich mich befasst habe, weil Apache bei AH00144 war
Die Geschichte, die Japan ausgab, wurde mit Django verwechselt
Die Geschichte, dass XGBoost endlich installiert wurde
Die Geschichte, die zur Installation von Pip passt
Wenn ich das Webapi crawle, das beim Rendern angezeigt wird, wurde es mit CORS abgespielt
Eine Geschichte, von der ich bei np.where süchtig war
Die Geschichte, dass der Rückgabewert von tape.gradient () None war
Die Geschichte, dass meine Pull-Anfrage in Scipy aufgenommen wurde
Die Geschichte, dass die neue Zeichnungsbibliothek "HiPlot" ziemlich gut war
Die Geschichte, dass Python nicht mehr mit VS Code (Windows 10) arbeitet
Die Geschichte, den privaten Schlüssel mit chmod auf 600 zu setzen
Die Geschichte, dass die Homebrew-Umgebung bei der Installation von Anaconda umgehauen wurde
Die Geschichte, dass der Wachmann eingesperrt war, als das Labor auf IoT umgestellt wurde
Die Geschichte, ein Modul zu erstellen, das E-Mails mit Python überspringt
Selbst wenn ich jpg in png konvertiert habe, habe ich es geschafft, weil die Transparenz nicht manipuliert wurde