弁財天

ゴフマン「専門家を信じるのではなく、自分自身で考えて判断せよ」

[libopmnohs] Process Ping Failed: HTTP_Server~HTTP_Server~HTTP_Server~1 [Connection refused]

久しぶりにディスカバラを導入する機会があって面白いトラブルが起きた。 Biのhttpdが定期的に再起動するのだ。

--------
14/02/28 17:26:45 Stop process
--------
/opt/oracle/BiHome_1/Apache/Apache/bin/apachectl stop: httpd stopped

--------
14/02/28 17:26:47 Start process
--------
/opt/oracle/BiHome_1/Apache/Apache/bin/apachectl start: execing httpd

==> ipm.log <==
14/03/04 11:23:21 [4] [libopmnohs] Process Ping Failed: HTTP_Server~HTTP_Server~HTTP_Server~1 (918487136:19466) [Connection refused]
14/03/04 11:33:21 [4] [libopmnohs] Process Ping Failed: HTTP_Server~HTTP_Server~HTTP_Server~1 (918487136:19466) [Connection refused]
こんなかんじで1分置きにApache HTTPServerが再起動されてしまう。その間ブラウザには Internal Error 500 が返る。

Oracle Metalink Note 338805.1, solved it for me
ファイルサイズが2Gを超えたとか、ファイルシステムがパンクしてるとか。ちょっと違う。

Slow or No Response of Reports 10g/10gR2 Ping URL Causes OPMN To Restart OC4J_BI_FORMS (ドキュメントID 261867.1)
過去にONSのポートの競合が原因だったりしたけど、ちょっと違う。

OPMN Continuously Restarts OHS/Webcache 11g ( OHS-2079 / OHS-2171 ) When The HTTP Listen Port Is Disabled (ドキュメントID 1349498.1)

AS 10.1.2 OPMN Intermittently Restarts Processes - Logs Show " Process Ping Failed: " , " header RCV failed (Bad file descriptor)"(840257.1)
あ、ulimit -u 16384 -n 65536 が原因になるのか。

iasconsoleを止めて $ORACLE_HOME/opmn/conf/opmn.xml を手メンテするとか。
$ORACLE_HOME/dcm/bin/dcmctl updateConfig -ct opmn
こんなコマンドは初めて見た。

OPMN Fails to Start Oracle HTTP Server 10g On Solaris - "Time Out While Waiting For a Managed Process to Start" (ドキュメントID 412835.1)
OAS 10.1.2 Forms server restart problem support.oracle.com/epmos/faces/Se…

OPMN Frequently Restarts HTTP_Server After Ping Failed (ドキュメントID 553564.1)

$ORACLE_HOME/opmn/conf/opmn.xml file.
<process-set id="HTTP_Server" numprocs="1"/>
の部分を
<process-set id="HTTP_Server" restart-on-death="true" numprocs="1">
<start timeout="300" retry="3"/>
<stop timeout="300"/>
<restart timeout="300" retry="3"/>
<ping timeout="60" interval="600"/>
</process-set>

<module-data>...</module-data>の間に書き換えるとか。

<category id="ping-parameters">
<data id="ping-url" value="/"/>
</category>
<category id="restart-parameters">
<data id="reverseping-timeout" value="345"/>
<data id="no-reverseping-failed-ping-limit" value="3"/>
<data id="reverseping-failed-ping-limit" value="6"/>
</category>

opmnctl reload
または
opmnctl stopall
opmnctl startall
するとか。
どうもBiHome_1/Apache/Apache/conf/dms.confの7200番ポートが機能してないので httpdプロセスは起動してるのにopmnが落ちてると勘違いし再起動してるようだ。

目先の問題を解決するには再起動しないようにしてしまうとかw

<process-set id="HTTP_Server" restart-on-death="true" numprocs="1">
を
<process-set id="HTTP_Server" restart-on-death="false" numprocs="1">
に変更
しかし問題をもみ消す方法なのでこれはちょっと。

HTTP Server Fails to Start After Configuration Changes in dms.conf (ドキュメントID 462021.1)

Listen 127.0.0.1:7200
LoadModule dms_module libexec/mod_dms.so
<IfModule mod_oc4j.c>

 <Location /transtrace>
 SetHandler oc4j-handler
 </Location>

</IfModule>

# proxy to DMS AggreSpy
Redirect /dms0/AggreSpy http://127.0.0.1:7200/dmsoc4j/AggreSpy
# DMS VirtualHost for access and logging control
Listen 127.0.0.1:7200
OpmnHostPort http://127.0.0.1:7200

よく見るとdms.confに
Listen 127.0.0.1:7200
が見当たらない。w

/opt/oracle/BiHome_1/Apache/Apache/conf/dms.confを手メンテ
Listen 127.0.0.1:7200 を追加するという。

dcmctl updateConfig
opmnctl restartproc ias-component=HTTP_Server
かくして7200番の監視ポートは起動
14/03/04 11:23:21 [4] [libopmnohs] Process Ping Failed: HTTP_Server~HTTP_Server~HTTP_Server~1 (918487136:19466) [Connection refused]
のエラーは消えた。

もみ消し用の設定も戻しておく。
<process-set id="HTTP_Server" restart-on-death="true" numprocs="1">

投稿されたコメント:

コメント
コメントは無効になっています。