付録A.2 ORB機能使用時の設定
ここでは,ORB機能を使用する場合の設定について説明します。
この設定は,Windows Server Failover Clusterを起動するホスト上で次のプロセスを起動する場合に設定してください。
-
スマートエージェント
-
CORBAネーミングサービス
また,スマートエージェントをフェイルオーバの対象とする場合は,Windows Server Failover Clusterに「汎用アプリケーション」として登録してください。
- 〈この項の構成〉
(1) スマートエージェントのlocaladdrファイルおよびhtc.clienthandleraddrファイルの設定
クラスタソフトウェア上でスマートエージェントを起動する場合,各ノードのlocaladdrファイルおよびhtc.clienthandleraddrファイルを設定してください。なお,設定内容は,マルチホームドホスト環境の場合とそれ以外の場合で異なります。
マルチホームドホスト環境,またはマルチホームドホストでないホスト環境上でクラスタ環境を構築する場合の,スマートエージェントのlocaladdrファイルの設定内容を次の表に示します。
次に,環境ごとの設定内容の詳細について説明します。また,htc.clienthandleraddrファイルについても説明します。
(a) マルチホームドホスト環境
-
スマートエージェントをフェイルオーバの対象にする場合
localaddrファイルには,ステーショナリIPアドレス(プライマリIPアドレス),スマートエージェントに明示的に指定したいIPアドレス※,およびスマートエージェントが使用するクラスタIPアドレスを必ず設定してください。
また,スマートエージェントに接続するプロセスに対して,クラスタIPアドレスを返却するようにhtc.clienthandleraddrファイルを定義してください。
-
スマートエージェントをフェイルオーバの対象にしない場合
localaddrファイルには,ステーショナリIPアドレス(プライマリIPアドレス),およびスマートエージェントに明示的に指定したいIPアドレス※を必ず設定してください。クラスタIPアドレスは設定しないでください。
また,スマートエージェントに接続するプロセスに対して,ステーショナリIPアドレスを返却するようにhtc.clienthandleraddrファイルを定義してください。
- 注※
-
localaddrファイルを設定すると,スマートエージェントは,localaddrファイルに設定されたIPアドレスだけを認識します。localaddrファイルを設定しない場合,スマートエージェントはデフォルトでgethostbyname()から取得できるIPアドレスを認識します。
(b) マルチホームドホストではないホスト環境
-
スマートエージェントをフェイルオーバの対象にする場合
localaddrファイルには,ステーショナリIPアドレス(プライマリIPアドレス)およびスマートエージェントが使用するクラスタIPアドレスを必ず設定してください。
また,スマートエージェントに接続するプロセスに対して,クラスタIPアドレスを返却するようにhtc.clienthandleraddrを定義してください。
-
スマートエージェントをフェイルオーバの対象にしない場合
localaddrファイルには,ステーショナリIPアドレス(プライマリIPアドレス)を必ず設定してください。クラスタIPアドレスは設定しないでください。
また,スマートエージェントに接続するプロセスに対して,ステーショナリIPアドレスを返却するようにhtc.clienthandleraddrファイルを定義してください。
(2) スマートエージェントまたはスマートエージェントに接続するプロセスのagentaddrファイル,vbroker.agent.addrプロパティ,および環境変数「OSAGENT_ADDR」の設定
異なるネットワークドメイン上にあるスマートエージェント間で通信をする場合,または異なるネットワークドメイン上にあるスマートエージェントとスマートエージェントに接続するプロセス間の通信をする場合は,スマートエージェントまたはスマートエージェントに接続するプロセスの設定が必要です。設定は,各ノードのagentaddrファイル,vbroker.agent.addrプロパティ,環境変数「OSAGENT_ADDR」に設定します。
(a) スマートエージェントへの設定
異なるネットワークドメイン上のスマートエージェント間で通信していて,スマートエージェントをフェイルオーバの対象とする場合,対象のスマートエージェントと通信をするスマートエージェントのagentaddrファイルに,クラスタIPアドレスを必ず設定してください。
(b) スマートエージェントに接続するプロセスへの設定
スマートエージェントとスマートエージェントに接続するプロセスとを異なるネットワークドメイン上で起動し,かつスマートエージェントをフェイルオーバの対象とする場合,スマートエージェントに接続するプロセスのagentaddrファイル,vbroker.agent.addrプロパティ,環境変数「OSAGENT_ADDR」のどれかに,フェイルオーバの対象となるスマートエージェントのクラスタIPアドレスを必ず設定してください。
(3) CORBAネーミングサービスの設定
CORBAネーミングサービスをフェイルオーバの対象とする場合は,CORBAネーミングサービスの起動プロパティを設定します。
nameservコマンドに次の起動プロパティを設定してCORBAネーミングサービスを起動してください。
-J-Dvbroker.se.iiop_tp.host=クラスタIPアドレスまたはクラスタのネットワーク名
また,このプロパティに設定したクラスタIPアドレスまたはクラスタのネットワークを,usrconf.properties(J2EEサーバ用ユーザプロパティファイル)の次のキーの設定内容に反映してください。
-
ejbserver.naming.hostキーに設定するIPアドレスまたはホスト名称
-
ejbserver.jndi.namingservice.group.<Specify group name>.providerurlsキーに設定するプロバイダURL
usrconf.propertiesの詳細については,マニュアル「アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「2.2.3 usrconf.properties(J2EEサーバ用ユーザプロパティファイル)」を参照してください。nameservコマンドを使用したCORBAネーミングサービスの起動については,マニュアル「アプリケーションサーバ リファレンス コマンド編」の「付録C.2 システムの起動方法」を参照してください。
(4) J2EEサーバのvbroker.se.iiop_tp.hostキー,およびvbroker.se.iiop_tp.scm.iiop_tp.listener.portキーの設定
J2EEサーバをフェイルオーバの対象とする場合は,vbroker.se.iiop_tp.hostキーには,クラスタIPアドレスを指定してJ2EEサーバを起動してください。また,J2EEサーバが使用するポート番号は,すべての系で同じポート番号が使用できるように,usrconf.propertiesファイルのvbroker.se.iiop_tp.scm.iiop_tp.listener.portキーを使用して管理してください。
(5) 環境変数およびオプションの設定
クラスタ環境でスマートエージェントを起動する場合,スマートエージェントに次の環境変数およびオプションの設定が必要です。
オプションは,スマートエージェントをフェイルオーバの対象とする場合だけ指定してください。
-
環境変数名:OSAGENT_CLIENT_HANDLER_PORT
-
オプション:-m
なお,環境変数の設定方法については,マニュアル「Borland(R) Enterprise Server VisiBroker(R) デベロッパーズガイド」のVisiBroker ORBドメイン内の作業についての説明を参照してください。
(6) 設定例
IPアドレスの設定例を次に示します。
設定例1
図中の1.〜5.について説明します。
-
hostAのlocaladdrファイルに「hostAのステーショナリIPアドレス(A.A.A.A) subnet broadcast」,「クラスタIPアドレス(C.C.C.C) subnet broadcast」を記述します。
-
hostBのlocaladdrファイルに「hostBのステーショナリIPアドレス(B.B.B.B) subnet broadcast」,「クラスタIPアドレス(C.C.C.C) subnet broadcast」を記述します。
-
hostA,hostBのhtc.clienthandleraddrファイルに「クライアントのステーショナリIPアドレス(F.F.F.F) subnet クラスタIPアドレス(C.C.C.C)」を記述します。
-
hostAおよびhostBで起動するスマートエージェントに環境変数「OSAGENT_CLIENT_HANDLER_PORT」および-mオプションを設定します。
-
hostCのagentaddrファイルにクラスタIPアドレス(C.C.C.C)を記述します。
設定例2
図中の1.〜6.について説明します。
-
hostAのlocaladdrファイルに「hostAのステーショナリIPアドレス(A.A.A.A) subnet broadcast」を記述します。
-
hostBのlocaladdrファイルに「hostBのステーショナリIPアドレス(B.B.B.B) subnet broadcast」を記述します。
-
hostAのhtc.clienthandleraddrファイルに「クライアントのステーショナリIPアドレス(F.F.F.F) subnet hostAのステーショナリIPアドレス(A.A.A.A)」を記述します。
-
hostBのhtc.clienthandleraddrファイルに「クライアントのステーショナリIPアドレス(F.F.F.F) subnet hostBのステーショナリIPアドレス(B.B.B.B)」を記述します。
-
hostCのagentaddrファイルにA.A.A.AおよびB.B.B.Bを記述します。
-
hostAおよびhostBで起動するスマートエージェントに環境変数「OSAGENT_CLIENT_HANDLER_PORT」を設定します。