問題の概要:あるノード上で HTTP サーバーが強制終了されたとき、当該ノード上で PID ファイルが残る。HTTP サーバーは次回起動されるとき、PID ファイルが存在しているかどうかをチェックし、その PID を持つプロセスが動作しているかどうかをチェックする (kill -0)。PID は再利用されるので、最後の HTTP サーバーの PID と同じ PID を持つ別のプロセスが存在する可能性がある。すると、HTTP サーバーが起動に失敗する。
回避方法:HTTP サーバーが次のようなエラーで起動に失敗した場合、HTTP サーバー用の PID ファイルを手動で削除すると、正常に再起動できます。
Mar 27 17:47:58 ppups4 uxwdog[939]: could not log PID to PidLog /app/iws/https-schost-5.example.com/logs/pid, server already running (No such file or directory) |