Oracle® Fusion Middleware Oracle SOA Suiteエンタープライズ・デプロイメント・ガイド 11g リリース1 (11.1.1.7.0) B55899-09 |
|
前 |
次 |
この章では、SOAエンタープライズ・トポロジで必要なネットワーク環境の事前構成について説明します。この章を使用して、仮想サーバー名、ロード・バランサ、IPと仮想IP、ファイアウォールおよびポートの構成を計画してください。
この章の内容は次のとおりです。
様々な種類のネットワーク・トラフィックや監視に対応するように、仮想サーバーや関連するポートをロード・バランサに構成する必要があります。これらの仮想サーバーは、サービスを実行するために適切な実際のホストおよびポートに対して構成する必要があります。また、ロード・バランサは、可用性を確保するために実際のホストおよびポートを監視するように構成し、サービスがダウンしたときにこれらのホストおよびポートへのトラフィックをできるだけ早く停止できるようにする必要があります。これによって、特定の仮想ホストの着信トラフィックが他の層の使用不可のサービスに送信されることがなくなります。
後でWeb層の構成および様々なソフトウェア・コンポーネントのインストールを行うときに、仮想ホストおよび関連するポートを構成します。この章を読んだ後、この環境で使用する仮想ホストの名前およびVIPのリストを準備してください。
SOAエンタープライズ・トポロジでは、次の仮想サーバー名を使用します。
仮想サーバー名がIPアドレスと関連付けられており、DNSの一部になっていることを確認してください。Oracle Fusion Middlewareを実行するノードは、これらの仮想サーバー名を解決できるようになっている必要があります。
第3.3項「ロード・バランサの構成」の手順に従って、ロード・バランサで仮想サーバー名を定義します。
soa.mycompany.com
は、soa-infra、ワークフロー、B2BなどのランタイムSOAコンポーネントへのすべてのHTTPトラフィックのアクセス・ポイントとして動作する仮想サーバー名です。SSLへのトラフィックが構成されます。クライアントはsoa.mycompany.com:443
のアドレスを使用してこのサービスにアクセスします。
admin.mycompany.com
は、WebLogic管理サーバー・コンソールやOracle Enterprise Managerなどの管理サービスに転送されるすべての内部HTTPトラフィックのアクセス・ポイントとして動作する仮想サーバー名です。
クライアントからの入力トラフィックは、SSL対応ではありません。クライアントはadmin.mycompany.com:80
のアドレスを使用してこのサービスにアクセスします。そして、リクエストは、WEBHOST1とWEBHOST2のポート7777に転送されます。
osb.mycompany.com
は、ランタイムOracle Service Busリソースおよびプロキシ・サービスに向かうすべてのHTTPトラフィックのアクセス・ポイントとして動作する仮想サーバー名です。SSLへのトラフィックが構成されます。クライアントはosb.mycompany.com:443
のアドレスを使用してこのサービスにアクセスします。
soainternal.mycompany.com
は、SOAサービスの内部起動に使用される仮想サーバー名です。このURLはインターネットに公開されずに、イントラネットからのみアクセスできます。SOAシステムの場合、実行時に適切なEM/MBeansやコンポジットをモデリングしているときにユーザーはこれを設定できます。URLはサービスの内部起動に使用されます。
クライアントからの入力トラフィックは、SSL対応ではありません。クライアントはsoainternal.mycompany.com:80
のアドレスを使用してこのサービスにアクセスします。そして、リクエストは、WEBHOST1とWEBHOST2のポート7777に転送されます。
ロード・バランサ上には、各種のネットワーク・トラフィックおよび監視用に、いくつかの仮想サーバーおよびそれらに関連付けられたポートを構成する必要があります。これらは、実際のホストおよびポートに対して適切に構成し、サービスが継続されるようにする必要があります。また、ロード・バランサは、可用性を確保するために実際のホストおよびポートを監視するように構成し、サービスがダウンしたときにこれらのホストおよびポートへのトラフィックをできるだけ早く停止できるようにする必要があります。これによって、特定の仮想ホストの着信トラフィックが他の層の使用不可のサービスに送信されることがなくなります。
推奨トポロジ内には、2つのロード・バランサ・デバイスがあります。一方のロード・バランサは外部HTTPトラフィック用に設定し、もう一方のロード・バランサは内部LDAPトラフィック用に設定します。様々な理由から、デプロイメントで使用されるロード・バランサ・デバイスが1つになる場合があります。このような構成もサポートされていますが、これに伴うセキュリティへの影響を考慮する必要があります。その構成が適切であることがわかったら、様々なDMZ間のトラフィックを許可するように、関連するファイアウォール・ポートを開いてください。いずれの場合も、特定のロード・バランサ・デバイスをフォルト・トレラント・モードでデプロイすることを強くお薦めします。
エンタープライズ・トポロジでは、外部のロード・バランサを使用します。この外部ロード・バランサは次の機能を備えている必要があります。
仮想ホスト名を使用してトラフィックを実際のサーバーのプールにロード・バランシングする機能: クライアントは仮想ホスト名を使用してサービスにアクセスします(実際のホスト名は使用しない)。これにより、ロード・バランサは、プール内のサーバーに対するリクエストをロード・バランシングできます。
ポート変換の構成。
ポート(HTTPおよびHTTPS)の監視。
仮想サーバーとポートの構成: 外部ロード・バランサの仮想サーバー名とポートを構成する機能。さらに、仮想サーバー名とポートは次の要件を満たしている必要があります。
ロード・バランサは複数の仮想サーバーの構成が可能である必要がある。各仮想サーバーに対し、ロード・バランサには2つ以上のポートでトラフィック管理を構成できることが必要です。たとえば、Oracle WebLogicクラスタの場合は、1つの仮想サーバーとHTTPおよびHTTPSの両トラフィック用のポートを指定してロード・バランサを構成する必要があります。
仮想サーバー名をIPアドレスに関連付け、DNSに含める必要があります。クライアントは仮想サーバー名を使用して外部ロード・バランサにアクセスできる必要があります。
ノード障害を検出し、障害が発生したノードへのトラフィックのルーティングを即座に停止する機能。
リソースの監視/ポートの監視/プロセス障害の検出: ロード・バランサは、サービス障害およびノード障害を(通知またはその他の方法によって)検出し、障害のあるノードへの非Oracleネット・トラフィックの転送を停止する必要があります。ご使用の外部ロード・バランサに障害の自動検出機能がある場合、これを使用する必要があります。
フォルト・トレラント・モード: ロード・バランサはフォルト・トレラント・モードで構成することを強くお薦めします。
その他: トラフィックの転送先となるバックエンド・サービスが使用できない場合、コール元のクライアントに即座に戻るようにロード・バランサの仮想サーバーを構成することを強くお薦めします。この構成は、クライアント・マシンのTCP/IP設定に基づいてタイムアウト後にクライアント側で接続を切断する構成よりも推奨されます。
SSLアクセラレーション(この機能はお薦めしますが必須ではありません)。
TCP接続の接続タイムアウトに大きい値を使用したディレクトリ層に対するロード・バランサの仮想サーバーの構成。この値は、Oracle Access Management Access Managerとディレクトリ層の間でトラフィックがない場合に、その予想される最大時間より大きい必要があります。
クライアントIPアドレスを保持する機能: ロード・バランサには、リクエストの元のクライアントIPアドレスをX-Forwarded-For HTTPヘッダーに挿入し、クライアントIPアドレスを保持する機能がある必要があります。
ロード・バランサを構成する手順は、ロード・バランサの特定の種類によって異なります。実際の手順については、ベンダーが提供するマニュアルを参照してください。次の手順では、一般的な構成フローを示します。
サーバーのプールを作成します。このプールには、ロード・バランシングの定義に含まれているサーバーとポートのリストが格納されます。たとえば、Webホスト間のロード・バランシングの場合、リクエストをポート7777でWEBHOST1およびWEBHOST2のホストに送信するサーバーのプールを作成します。
特定のホストとサービスが使用可能かどうかを決定するルールを作成し、手順1で説明したサーバーのプールに割り当てます。
ロード・バランサ上に仮想サーバーを作成します。これは、アプリケーションが使用するリクエストを受信するアドレスとポートです。たとえば、Web層のリクエストをロード・バランシングするには、sso.mycompany.com:80
に対する仮想ホストを作成します。
ロード・バランサがこれをサポートする場合は、その仮想サーバーが内部、外部またはその両方で使用可能かどうかを指定します。内部アドレスはネットワーク内からのみ解決できることを確認します。
仮想サーバーに対してSSL終端(適用可能な場合)を構成します。
手順1で作成したサーバーのプールを、仮想サーバーに割り当てます。
表3-4「使用されるポート」に示されているように、タイム・アウトの設定を調整します。これには、サービスがダウンするかどうかを検出する時間が含まれます。
Oracle SOAデプロイメントの場合、表3-1に示すようにロード・バランサを構成します。
表3-1 ロード・バランサの構成
仮想ホスト | サーバー・プール | プロトコル | SSL終端 | 外部 | その他の必要な構成/コメント |
---|---|---|---|---|---|
|
|
HTTP |
いいえ |
いいえ |
|
|
|
HTTP |
いいえ |
はい |
|
|
|
HTTP |
いいえ |
いいえ |
|
|
|
HTTP |
いいえ |
いいえ |
HTTPをプロトコルとして指定します。 |
図3-1に示すように、異なる仮想IPと物理IPでリスニングするように、管理サーバーと管理対象サーバーを構成してください。図に示すように、各仮想IPとIPは、使用するWebLogic Serverに割り当てられます。VIP1は手動でフェイルオーバーされ、管理サーバーがSOAHOST2で再起動されます。Oracle WebLogic Serverの移行機能により、VIP2とVIP3がそれぞれ、SOAHOST1からSOAHOST2にフェイルオーバーし、SOAHOST2からSOAHOST1にフェイルオーバーします。またWLS_BAM1でもサーバー移行機能が使用されて、VIP4をBAMHOST1からBAMHOST2にフェイルオーバーします。
WebLogic Serverの移行機能の詳細は、『Oracle Fusion Middleware高可用性ガイド』を参照してください。
物理IP(仮想IPでない)が各ノードに固定的に割り当てられます。IP1はSOAHOST1の物理IPで、WLS_WSM1 WebServicesポリシー・マネージャのサーバーで使用されます。IP2はSOAHOST2の物理IPで、WLS_WSM2 WebServicesポリシー・マネージャのサーバーで使用されます。IP3はBAMHOST2の物理IPで、WLS_BAM2サーバーによりリスニング・アドレスとして使用されます。
表3-2には、様々な仮想ホストの説明が記載されています。
表3-2 仮想ホスト
仮想IP | VIPのマップ先 | 説明 |
---|---|---|
VIP1 |
ADMINVHN |
ADMINVHNは、管理サーバーのリスニング・アドレスである仮想ホスト名であり、管理サーバーの手動フェイルオーバーによりフェイルオーバーします。管理サーバーのプロセスが実行されているノード(デフォルトはSOAHOST1)で有効にされます。 |
VIP2 |
SOAHOST1VHN1 |
SOAHOST1VHN1は、WLS_SOA1のリスニング・アドレスにマップし、この管理対象サーバーのサーバー移行によりフェイルオーバーする、仮想ホストの名前です。これは、WLS_SOA1プロセスが実行されているノード(デフォルトはSOAHOST1)で有効化されます。 |
VIP3 |
SOAHOST2VHN1 |
SOAHOST2VHN1は、WLS_SOA2のリスニング・アドレスにマップし、この管理対象サーバーのサーバー移行によりフェイルオーバーする、仮想ホストの名前です。これは、WLS_SOA2プロセスが実行されているノード(デフォルトはSOAHOST2)で有効化されます。 |
VIP4 |
BAMHOST1VHN1 |
BAMHOST1VHN1は、WLS_BAM1のリスニング・アドレスにマップし、この管理対象サーバーのサーバー移行によりフェイルオーバーする、仮想ホストの名前です。これは、WLS_BAM1プロセスが実行されているノード(デフォルトはBAMHOST1)で有効化されます。 |
VIP5 |
SOAHOST1VHN2 |
SOAHOST1VHN2は、WLS_OSB1サーバーのリスニング・アドレスにマップし、このサーバーのサーバー移行によりフェイルオーバーする、仮想ホストの名前です。これは、WLS_OSB1プロセスが実行されているノード(デフォルトはSOAHOST1)で有効化されます。 |
VIP6 |
SOAHOST2VHN2 |
SOAHOST2VHN2は、WLS_OSB2サーバーのリスニング・アドレスにマップし、このサーバーのサーバー移行によりフェイルオーバーする、仮想ホストの名前です。これは、WLS_OSB2プロセスが実行されているノード(デフォルトはSOAHOST2)で有効化されます。 |
他のOracle Fusion Middlewareコンポーネントを後でインストールするかしないかに関係なく、WebLogic管理サーバーのフェイルオーバーを行うにはこの手順が必要であることに注意してください。
管理サーバーを仮想IPアドレスと関連付けます。これにより、プライマリ・ホストに障害が発生した場合でも、別のホストで管理サーバーを起動することができます。
仮想ホストが次のように有効化されていることを確認します。
表3-3 仮想ホスト
VIP | 有効化されるホスト |
---|---|
ADMINVHN.mycompany.com |
SOAHOST1 |
SOAHOST1VHN1.mycompany.com |
SOAHOST1 |
SOAHOST2VHN1.mycompany.com |
SOAHOST2 |
BAMHOST1VHN1.mycompany.com |
BAMHOST1 |
SOAHOST1VHN2.mycompany.com |
SOAHOST1 |
SOAHOST2VHN2.mycompany.com |
SOAHOST2 |
注意: これは、浮動IPアドレスに関連付けられているDNS名です。ロード・バランサで構成された仮想ホストのDNS名ではありません。 |
Linux
仮想IPアドレスを有効にするには、root
として次のコマンドを実行します。
/sbin/ifconfig interface:index IPAddress netmask netmask /sbin/arping -q -U -c 3 -I interface IPAddress
ここで、interface
はeth0
またはeth1
、index
は0
、1
または2
です。
例:
/sbin/ifconfig eth0:1 100.200.140.206 netmask 255.255.255.0
ネットワークを有効化し、仮想IPアドレスの新しい場所を登録します。
/sbin/arping -q -U -c 3 -I eth0 100.200.140.206
別のノードからping
を行って、アドレスが使用可能であることを検証します。次に例を示します。
/bin/ping 100.200.140.206
Windows
仮想IPアドレスを有効にするには、次のコマンドを実行します。
netsh interface ip add address interface IP_Address netmask
ここで、IP_Address
は仮想IPアドレスで、netmask
は関連付けられたネットマスクです。
次の例では、IPアドレスはインタフェースLocal Area Connection
上で有効になります。
netsh interface ip add address "Local Area connection" 100.200.140.206 255.255.255.0
多くのOracle Fusion Middlewareコンポーネントおよびサービスはポートを使用します。管理者は、これらのサービスが使用するポート番号を把握し、同じポート番号が1つのホスト上の2つのサービスによって使用されないようにする必要があります。
ほとんどのポート番号はインストール中に割り当てられます。
表3-4にはSOAトポロジで使用されるポートの一覧が記載されています。トポロジにあるファイアウォールで開く必要のあるポートも記載されています。
ファイアウォール表記法:
FW0は外側のファイアウォールを示します。
FW1は、Web層とアプリケーション層との間におけるファイアウォールを示します。
FW2は、アプリケーション層とデータ層との間におけるファイアウォールを示します。
表3-4 使用されるポート
タイプ | ファイアウォール | ポートとポート範囲 | プロトコル/アプリケーション | インバウンド/アウトバウンド | その他の考慮事項とタイムアウトのガイドライン |
---|---|---|---|---|---|
ブラウザによるリクエスト |
FW0 |
80 |
HTTP/ロード・バランサ |
インバウンド |
タイムアウトは、SOAによって使用されるプロセス・モデルのタイプとすべてのHTMLコンテンツによって異なります。 |
ブラウザによるリクエスト |
FW0 |
443 |
HTTPS/ロード・バランサ |
インバウンド |
タイムアウトは、SOAによって使用されるプロセス・モデルのタイプとすべてのHTMLコンテンツによって異なります。 |
ブラウザによるリクエスト |
FW1 |
80 |
HTTPS/ロード・バランサ |
アウトバウンド(イントラネット・クライアント) |
タイムアウトは、SOAによって使用されるプロセス・モデルのタイプとすべてのHTMLコンテンツによって異なります。 |
ブラウザによるリクエスト |
FW1 |
443 |
HTTPS/ロード・バランサ |
アウトバウンド(イントラネット・クライアント) |
タイムアウトは、SOAによって使用されるプロセス・モデルのタイプとすべてのHTMLコンテンツによって異なります。 |
コールバックおよびアウトバウンド呼出し |
FW1 |
80 |
HTTPS/ロード・バランサ |
アウトバウンド |
タイムアウトは、SOAによって使用されるプロセス・モデルのタイプとすべてのHTMLコンテンツによって異なります。 |
コールバックおよびアウトバウンド呼出し |
FW1 |
443 |
HTTPS/ロード・バランサ |
アウトバウンド |
タイムアウトは、SOAによって使用されるプロセス・モデルのタイプとすべてのHTMLコンテンツによって異なります。 |
Oracle HTTP Serverへのロード・バランサ |
なし |
7777 |
HTTP |
なし |
第3.3項「ロード・バランサの構成」を参照してください。 |
管理サーバーによるOHS登録 |
FW1 |
7001 |
HTTP/t3 |
インバウンド |
タイムアウトを短い時間(5から10秒)に設定します。 |
管理サーバーによるOHS管理 |
FW1 |
OPMNポート(6701)とOHS管理ポート(7779) |
それぞれTCPとHTTP |
アウトバウンド |
タイムアウトを短い時間(5から10秒)に設定します。 |
WSM-PMのアクセス |
FW1 |
7010 範囲: 7010から7999 |
HTTP / WLS_WSM-PMn |
インバウンド |
タイムアウトを60秒に設定します。 |
SOAサーバーのアクセス |
FW1 |
8001 範囲: 8000から8010 |
HTTP / WLS_SOAn |
インバウンド |
タイムアウトは、SOAによって使用されるプロセス・モデルのタイプによって異なります。 |
Oracle Service Busのアクセス |
FW1 |
8011 範囲: 8011から8021 |
HTTP / WLS_OSBn |
インバウンド/ |
タイムアウトを短い時間(5から10秒)に設定します。 |
BAMのアクセス |
FW1 |
9001 範囲: 9000から9080 |
HTTP / WLS_BAMn |
インバウンド |
レポートやブラウザが閉じられるまでBAM WebAppsへの接続は開いたまま維持されます。これによって、ユーザー・セッションの最長持続可能時間と同じ時間のタイムアウトを設定します。 |
複数のSOAクラスタ・メンバー間における通信 |
なし |
8001 |
TCP/IPユニキャスト |
なし |
デフォルトでは、サーバーのリスニング・アドレスのポートと同じポートがこの通信で使用されます。 |
複数のWSMクラスタ・メンバー間における通信 |
なし |
7010 |
TCP/IPユニキャスト |
なし |
デフォルトでは、サーバーのリスニング・アドレスのポートと同じポートがこの通信で使用されます。 |
WebLogic Serverクラスタ内におけるセッション・レプリケーション |
なし |
なし |
なし |
なし |
デフォルトでは、サーバーのリスニング・アドレスのポートと同じポートがこの通信で使用されます。 |
管理コンソールのアクセス |
FW1 |
7001 |
HTTP/管理サーバーとEnterprise Manager t3 |
両方 |
管理コンソールへのアクセスのタイプ(アプリケーション層のクライアントからOracle WebLogic Server管理コンソールを使用する予定があるか、またはアプリケーション層の外部のクライアントから使用する予定があるか)に基づいてこのタイムアウト時間をチューニングする必要があります。 |
ノード・マネージャ |
なし |
5556 |
TCP/IP |
なし |
なし 実際の値は、『Oracle Fusion Middleware Oracle Identity Managementエンタープライズ・デプロイメント・ガイド』のファイアウォールとポートに関する項を参照してください。 |
アクセス・サーバーのアクセス |
FW1 |
6021 (OAM 10g) 5575 (OAM 11g) |
OAP |
インバウンド |
実際の値は、『Oracle Fusion Middleware Oracle Identity Managementエンタープライズ・デプロイメント・ガイド』のファイアウォールとポートに関する項を参照してください。 |
アイデンティティ・サーバーへのアクセス(OAM 10g) |
FW1 |
6022 |
OAP |
インバウンド |
なし |
データベースのアクセス |
FW2 |
1521 |
SQL*Net |
両方 |
タイムアウトは、SOAによって使用されるプロセス・モデルのタイプとすべてのデータベース・コンテキストによって異なります。 |
デプロイメントの一貫性 |
なし |
8088 範囲: 8000から8090 |
なし |
なし |
|
Oracle Internet Directoryのアクセス |
FW2 |
389 |
LDAP |
インバウンド |
ロード・バランサに基づいてディレクトリ・サーバーのパラメータをチューニングする必要があります。それ以外の方法ではチューニングしないでください。 |
Oracle Internet Directoryのアクセス |
FW2 |
636 |
LDAP SSL |
インバウンド |
ロード・バランサに基づいてディレクトリ・サーバーのパラメータをチューニングする必要があります。それ以外の方法ではチューニングしないでください。 |
OWSM用JOC |
なし |
9991 |
TCP/IP |
なし |
なし |
Oracle Notification Server (ONS) |
FW2 |
6200 |
ONS |
両方 |
Gridlinkに必要。各データベース・サーバー上でONSサーバーが実行されます。 |
注意: B2BのTCP/IPポートは、ユーザーが構成するポートであり、事前定義されません。同様に、ファイアウォールのポートは、TCP/IPポートの定義によって異なります。 |