異なるサーバー上のサービス・コンポーネントが通信できるようにするには、サーバーを同じように構成する必要があります。このトピックでは、異なるサーバー上のサービスを非同期に起動するアプリケーションの通信を可能にするために実行する構成について説明します。
始める前に
このタスクでは、通信を構成するシステム上に既に
WebSphere® Process Server をインストールしているが、関係するアプリケーションをまだインストールしていないことを前提としています。関係する両方のサーバーの構成を検査して変更することのできる管理コンソールを使用します。
このタスクを実行する理由と時期
別のシステム上にインストールされたサービス・コンポーネントのサービスを必要とするアプリケーションをインストールする前に、要求をやりとりできるようにシステムを構成する必要があります。非同期呼び出しを使用するサービス・モジュールの場合、処理には外部バスおよび Service Integration Bus (SIBus) のメディエーションが含まれます。
注: このタスクでは、呼び出し側サービス・モジュールはシステム A に存在し、ターゲットはシステム B に存在しています。
このタスクで、構成に使用する情報を
図 1 に示しています。
図 1. 異なるシステム上のサービスの呼び出し
注: 説明を簡潔にするため、各セル内にはこの通信に関係するサーバーのみが示され、各サーバーは異なる物理マシン上にあります。
このタスクのステップ
- 通信に関係する各サーバーに関する情報を収集します。 オリジネーターおよびターゲット・サーバーの両方について、以下の情報が必要になります。
- ホスト IP アドレス
- セル
- ノード
- サーバー
- バス名
- メッセージング・エンジン
- 失敗イベント・キュー名
- アプリケーションをインストールします。
- それぞれのサーバーで、他方のサーバーを指す外部バスを作成し、ルーティング定義タイプを Direct, service integration
bus link に設定します。
詳しくは、WebSphere Application Server Network Deployment バージョン 6 インフォメーション・センターの『外部バスの追加』を参照してください。
例では、システム A の外部バスは SCA.SYSTEM.SRIKANTHCNode01Cell.Bus になります。システム B の外部バスは SCA.SYSTEM.WBIDev-BGMNode01Cell.Bus となります。
- それぞれのサーバーで、他方のサーバー上のメッセージング・エンジンを指す SIB メディエーション・リンクをセットアップします。
詳しくは、WebSphere Application Server Network Deployment バージョン 6 インフォメーション・センターの『サービス統合バス・リンクの追加』を参照してください。
例では、システム A の SIB メディエーション・リンクは以下のようになります。
SIB Link: TestCrossCell
Remote ME: SRIKANTHCNode01.server1-SCA.SYSTEM.SRIKANTHCNode01Cell.Bus
Bootstrap: 9.26.237.144:7277:BootstrapBasicMessaging
システム B の SIB メディエーション・リンクは以下のようになります。
SIB Link: TestCrossCell
Remote ME: WPSNode.server1.SCA.SYSTEM.WBIDev-BGMNode01.Cell.Bus
Bootstrap: 9.26.237.118.7276:BootstrapBasicMessaging
重要: ブートストラップ内のポート番号は、SIB エンドポイント・アドレス・ポートです。セキュリティーを使用可能にした場合、セキュア SIB エンドポイント・アドレス・ポートを使用する必要があります。
- サーバーを再始動して、SIB メディエーション・リンクを同期します。
次のようなメッセージが表示されます。[8/24/05 11:00:09:741
PDT] 00000086 SibMessage I [SCA.SYSTEM.WBIDev-BGMNode01Cell.Bus:WPSNode.server1-
SCA.SYSTEM.WBIDev-BGMNode01Cell.Bus] CWSIP0382I: messaging engine 2D7333574B0CD70B responded to subscription request,
Publish Subscribe topology now consistent.
- 各サービス・モジュールの宛先を表示します。
- 他のシステム上のターゲットに関連付ける必要のある呼び出し側サービス・モジュールの、出力宛先の転送パスを変更します。
関連付ける宛先の宛先名には
importlink が含まれます。例えばシステム A では、宛先は
sca/SimpleBoCrsmA/importlink/test/sca/cros/simple/custinfo/CustomerInfo のようになります。外部バス名を宛先名にプレフィックス変換して、パスを変更します。
例では、2 番目のシステムの外部バス名は
SCA.SYSTEM.SRIKANTHCNode01Cell.Bus になります。
結果は以下のようになります。
SCA.SYSTEM.SRIKANTHCNode01Cell.Bus:sca/SimpleBoCrsmA/importlink/
test/sca/cros/simple/custinfo/CustomerInfo
- ターゲット・サーバー上に 2 つの宛先を作成し、もう一方のサーバー上の呼び出し側サービス・モジュールを指すように、それらを構成します。
例では、システム B に以下を作成します。
sca/SimpleBOCrsmA/import/test/sca/cros/simple/custinfo/CustomerInfo
sca/SimpleBOCrsmA/component/test/sca/cros/simple/cust/Customer
次に転送パスを、呼び出し側サーバー上の対応するパスを指すように設定します。
This would look like:
SCA.SYSTEM.WBIDev-BGMNode01Cell.Bus:
sca/SimpleBOCrsmA/import/test/sca/cros/simple/custinfo/CustomerInfo
SCA.SYSTEM.WBIDev-BGMNode01Cell.Bus:
sca/SimpleBOCrsmA/component/test/sca/cros/simple/cust/Customer
- 例外宛先を、作成した両方の宛先用の失敗イベント・キューに設定します。
例では、値は WBI.FailedEventSRIKANTHCNode01.server1 です。
- オプション: システムでセキュリティーを使用可能にした場合、送信者のロールを外部バスに追加します。 オペレーティング・システムのコマンド・プロンプトから、両方のシステムで各アプリケーションが使用するユーザーを必ず定義してください。 ロールを追加するコマンドは以下のとおりです。
wsadmin $AdminTask addUserToForeignBusRole -bus busName
-foreignBus foreignBusName -role roleName -user userName
各部の意味は、次のとおりです。
- busName
- コマンドを入力するシステム上のバスの名前。
- foreignBusName
- ユーザーを追加する外部バス。
- userName
- 外部バスに追加するユーザー ID。
次に実行する作業
アプリケーションを始動します。