静的コンテンツ用に nginx を実行するサーバーがあり、その背後には Apache があり、php と python コードを実行しています。
1 日に 1 回程度、Apache が終了し、Nginx が 502 Bad Gateway エラーを返すようになります。ログで確認できるのは、Apache が SIGTERM を受信したということだけで、その他の詳細はわかりません。
[mpm_prefork:notice] [pid 11811] AH00169: SIGTERM をキャッチしました。シャットダウンします
ディスク容量が不足した以外はメンテナンスなしで、しばらく正常に動作しています。数か月前に SSL プロキシの設定を行いました。Debian Jessie を実行しています
答え1
すべてのkillシステムコールを -S kill
audit.rulesファイルに記録するには、auditdを使用します。監査を使用して特定の SYSCALL を監視するにはどうすればよいでしょうか?ログ エントリには、すべての kill の pid、uid、および exe が含まれます。httpd がシャットダウンする直前のエントリを見つけます。
これは、正しく再起動されていないログローテーション スクリプトであると推測します。
答え2
SIGTERM をキャッチしました
これは、システムが Apache に終了コマンドを送信していることを意味します。Apache を停止/再起動する不正な cron ジョブを探すか、sar
ログを調べてリソースの問題が発生していないか確認します。メモリの問題が発生すると、サーバーは自動的にプロセスを強制終了して、サーバー自体を存続させます。Apache は、通常、メモリの問題でこのように強制終了されるものの 1 つです。