TP モニタプロセス異常終了(実行中の運用ユーザ変更)

事象説明

    UNIX版において、WebOTX起動時に運用ユーザを変更してしまう(otxown.shを実行してしまう) と、TPモニタ・マネージャが正常動作しなくなる可能性があります。

    WebOTX配下のディレクトリやファイルは変更されるのに、起動中のプロセスのオーナ・グループ は変更されずに残るため、起動中のプロセスがアクセスしているファイルや作成するファイルが 前の運用ユーザのままになり、思わぬ権限不足を引き起こしたり読み込み・書き込みエラーを引 き起こしたりする可能性があります。

    この場合、クライアントからのユーザアクセスは、プロセスグループが動作している状態では エラーにはなりませんが、運用操作が正常に行えない可能性があります。

状況の確認方法

    WebOTX運用中にotxown.shを実行した場合、TPモニタ関連のプロセスが正常動作しなくなり、TPシステムのアライブチェックに失敗するようになります。このとき、syslogに以下のメッセージが出力されます。

      WebOTX_Agent: OTX01180012:is not alive :tpmmgr:category=monitor,type=alive-check-monitor,server=server,name=tpsystem-state (com.nec.webotx.enterprise.system.notification)
      WebOTX_Agent: OTX01130050: Exception occurred while stopping domain:{0} (com.nec.webotx.enterprise.system.tools.admin)com.nec.webotx.enterprise.admin.servermgmt.DomainException: No write permission: /opt/WebOTX/domains
      WebOTX_Agent: OTX01130019: The domain domain1 is not stopped or has failed in stopping. (com.nec.webotx.enterprise.system.tools.admin)
      WebOTX_Agent: domainsconfigwriter.backup.io_error (com.nec.webotx.enterprise.system.util)
      WebOTX_Agent: OTX01509120: File domains-config.xml is not found. Path : /opt/WebOTX/domains/admin/config/domains-config.xml (com.nec.webotx.enterprise.system.util)
      WebOTX_Agent: server.failedtoflush (com.nec.webotx.enterprise.system.core)com.nec.webotx.enterprise.config.ConfigException: Error Flushing ConfigContext com.nec.webotx.enterprise.config.ConfigContext: Url=/opt/WebOTX/domains/admin/config/domain.xml, ReadOnly=false, ResolvePath=false, LastModified Timestamp=1148618603000, isChanged=false, Autocommit=false, isConfigBeanNull=false
      WebOTX[25287]: WOMutex::Close(line:573) unlink error. mutex = WO_ORBWPR_NAMING_MySystem_ejbp1, errno = 13
      WebOTX_Agent: OTX07140001 TPA access error. (com.nec.webotx.enterprise.system.TPMonitorManager)java.net.SocketException: Broken pipe (errno:32)
      

    また、ps -ef の結果と、ls -laR ${AS_INSTALL}の結果を比べ、プロセスがファイルやディレクトリと同じユーザで動作しているか確認することで異常状態の原因を確認することもできます。

問題の検出方法

    異常終了が発生した場合は、イベントログ・syslogやWebOTXのログにメッセージ出力されます。
    イベントログメッセージに関しては、前述のメッセージの他、[ リファレンス > メッセージ ]を参照してください。

採取資料
復旧方法

    通常はマシン再起動により復旧してください。
    マシン再起動がどうしても許されない場合は、以下の手順に従って、一旦以前の運用ユーザに戻してからWebOTXを停止し、WebOTX関連のプロセスがすべて停止したことを確認してから再度otxown.shを実行してWebOTX配下のオーナ・グループを統一してください。その後、WebOTXを起動してください。

    もしユーザを戻さずにWebOTXを停止した場合、プロセスや共有メモリが残ったままになってしまう可能性があります。

    1. rootユーザで以下のコマンドを実行し、現在起動しているプロセスの運用ユーザに戻してください。
      ${AS_INSTALL}/bin/otxown.sh

    2. 該当ドメインを停止してください。
      otxadmin> stop-domain <ドメイン名>

    3. WebOTX関連プロセスが残っていた場合は、以下のコマンドで終了させてください。
      otxadmin> stop-domain --force <ドメイン名>

    4. rootユーザで以下のコマンドを実行し、運用ユーザを再設定してください。
      ${AS_INSTALL}/bin/otxown.sh

    5. ドメインを起動してください。
      otxadmin> start-domain <ドメイン名>

予防のための対策

    運用ユーザを変更するときは、WebOTXを停止してから行ってください。


関連情報