ドメインやObjectSpinnerサービスの起動に失敗する場合の対処

事象説明

Windows 2000/2003 において、まれにWebOTXドメインやObjectSpinnerサービスが起動に失敗する場合があります。

WebOTXで起動する名前サーバのポート番号(既定値2809)がすでに他のアプリケーションで利用されてしまっているために発生します。
Windows 2000/2003においては自動で割り当てられる一時ポート番号として1024〜5000の範囲が利用されるためにこのような事象が発生することがあります。

状況の確認方法

下記のようなログが出力されます。

イベントログ(アプリケーション)

OTX06000010 ObjectBroker Lifecycle Ready でエラーが発生しました (com.nec.webotx.enterprise.system.objectbroker) Error: org.omg.CORBA.NO_RESPONSE: Initial reference for NameService not found. (XX) jp.co.nec.orb.Ob.OadPackage.NotFound: IDL:Ob/Oad/NotFound:1.0 vmcid: 0x1000 minor code: 996 completed: No

(WebOTXインストールフォルダ)\domains\(ドメイン名)\logs\ObjectBroker\namesv.log

Thu Aug 3 07:33:33 2006:Error:ORB::run failed. exception="CORBA::INV_OBJREF"

(WebOTXインストールフォルダ)\ObjectBroker\log\ObjectBroker\namesv.log
(ドメイン外動作の場合)

Thu Aug 3 07:33:33 2006:Error:ORB::run failed. exception="CORBA::INV_OBJREF"


採取資料
回避方法
  1. WebOTXで利用するポートをOSの一時ポートの割り当て対象から外す

    ポート番号1024〜5000の範囲でWebOTXが既定値として使用するのは、上記の名前サーバのポート(2809)となります。
    具体的な設定方法としてはレジストリエディタを利用して以下の設定を行ってください。設定変更後はマシンの再起動が必要です。

    レジストリキー
    HKEY_LOCAL_MACHINE\SYSTEM\
    CurrentControlSet\Services\Tcpip\Parameters配下
    に以下の項目を追加します。

    • 名前:ReservedPorts
    • 種類:REG_MULTI_SZ(複数行文字列値)
    • 値:以下を入力してください
      2809-2809


  2. WebOTXで利用するポートをOSの一時ポートの割り当て範囲外に変更する

    Windows Server 2003において一時ポート番号を払い出す範囲を変更していない場合には1024〜5000の範囲になっていますので、5000番より大きい値に設定することで対処可能です。 このデフォルトの範囲でポートがぶつかる可能性があるものとして、名前サーバポート(2809)があります。 ただし、設定で一時ポートの払い出しの範囲を変更している場合はこの限りではありません。
    ※ 運用開始後のポート番号の変更には注意してください。

復旧方法
  1. OSの再起動
  2. WebOTXの再起動
※ 一時ポートの使用状況によっては再度失敗する可能性もあるため、レジストリ設定で一時ポートの割り当て対象から外すことをお勧めします。
予防のための対策

WebOTXで利用するポートをOSの一時ポートの割り当て対象から外してください。


関連情報