TP モニタプロセス起動失敗(事前共有メモリ未作成)

事象説明

    UNIXにおいて、インストール直後もしくは、以下のコマンドを実行して、マシン再起動せずにWebOTXを起動した場合WebOTXを起動した場合、TPモニタ・マネージャの起動に失敗します。

    HP-UXの場合:
    /sbin/init.d/WebOTXinit start
    
    Linuxの場合:
    /etc/init.d/WebOTXinit start
    
    また、この状態ではプロセスグループが起動しないため、クライアントからのユーザアクセスはエラー(ユーザ実装による)となります。

状況の確認方法

    TPモニタの起動に失敗した場合、統合運用管理ツールからTPシステムを確認すると、停止状態になっています。また、TPモニタが起動失敗したという事象については、以下に説明するイベントログ・syslogから確認することが可能です。

      OTX01180012:監視対象は起動していません。:domain1:category=monitor,type=alive-check-monitor,server=server,name=tpsystem-state
      

    共有メモリが作成されていない状態でWebOTXを起動した場合、syslogに以下のようなエラーメッセージが出力されます。

      WebOTX_AS[20238]: WOMutex::Create(line:159) can't get GlobalLock. mutex = refmng_mutex_MySystem, e.m_file = , e.m_nLine = 197, m_dwErrono = 2
      WebOTX_AS[20238]: WOMutex::Create(line:159) can't get GlobalLock. mutex = oms_mutex_MySystem, e.m_file = , e.m_nLine = 197, m_dwErrono = 2
      WebOTX_AS[23219]: E:1:TPS15-01018 Users Exit2 function error end. FunctionName=[TpmStartExit2],RetCode=[-1].
      WebOTX_AS[23219]: W:4:TPS15-01102 TP monitor abnormal end.
      WebOTX_Agent: OTX07200004 TPMonitorManager Lifecycle Startup Error. (com.nec.webotx.enterprise.system.TPMonitorManager)com.nec.webotx.enterprise.TPMonitorManager.TPMonitorManagerException: startSystem timeout :120000
      WebOTX_Agent: OTX01205104: Service [TPMonitorManagerService] cannot be started! : TPMonitorManagerService is not started or fails to start!! (com.nec.webotx.enterprise.system.core)
      

問題の検出方法

    WebOTXinit start を実行すると/opt/WebOTX/Trnsv/conf/CommAPI/lock_ctl 配下に以下の3つの共有メモリファイルが作成されます。

      WO_GL_EVTFILE
      WO_GL_SHMFILE
      WO_GL_SEMFILE

    以下のコマンドで確認可能です。
    ls -l /opt/WebOTX/Trnsv/conf/CommAPI/lock_ctl
    
これらがないときに上記エラーになります。これらのファイルが削除されてしまったときは、WebOTXinit stopを行って一旦削除状態にし、 WebOTXinit startを実行して共有メモリを作成しなおしてください。

採取資料
復旧方法

    1. 該当ドメインを停止してください。
      otxadmin> stop-domain <ドメイン名>
    2. WebOTX関連プロセスが残っていた場合は、以下のコマンドで終了させてください。
      otxadmin>stop-domain --force <ドメイン名>
    3. WebOTXinit startを実行して共有メモリの作成を行ってください。

    4. ドメインを起動してください。
      otxadmin> start-domain <ドメイン名>
    なお、本shellはインストール時とアンインストール時にのみ手動で実行する必要があります。それ以外の通常運用中はマシンの起動時と停止時に自動的に実行されるので手動での実行はしないようにして下さい。

予防のための対策

    WebOTXinitはインストール時(マシンを再起動しないでWebOTXを利用するとき)とアンインストール時にのみ手動で実行する必要があります。それ以外の通常運用中はマシンの起動時と停止時に自動的に実行されるので手動での実行はしないようにして下さい。

    WebOTX関連のスクリプトを自動起動しない設定にする場合も、WebOTXinitは変更しないようにしてください。


関連情報