この章では、Oracle Web Services Manager(Oracle WSM)デプロイメントの概要を説明します。個々のコンポーネントをデプロイする前に、この章の概念を理解する必要があります。この章は、次の項で構成されています。
デフォルトのパスを使用してOracle WSMをインストールする場合、インストーラにより次のディレクトリが作成されます。
ORACLE_HOME/owsm/config/: このディレクトリには、Oracle WSMインストール用のソース構成ファイルが格納されます。このディレクトリにある構成ファイルに加えた変更は、アプリケーションを再デプロイすると有効になります。
ORACLE_HOME/j2ee/instance/applications: 変数instanceは、Oracle WSMがインストールされているOC4Jインスタンスの名前です。このディレクトリには、インストール用のランタイム・ファイルが格納されます。このディレクトリ内には、Oracle WSMアプリケーションごとにサブディレクトリがあります。構成ファイルに加えた変更は、ローカルのランタイム・アプリケーションにのみ影響を与えます。
ORACLE_HOME/owsm/config/ディレクトリにあるソース構成ファイルを編集し、これらのファイルを使用して、コンポーネントやアプリケーションをデプロイすることをお薦めします。変更は保存され、アプリケーションのデプロイ時に、ランタイム・ディレクトリに伝播されます。その逆は無効です。ランタイム・ディレクトリにある構成ファイルに加えた変更は、元のソース・ディレクトリ内の構成ファイルには伝播されません。
次の項では、アプリケーションおよびコンポーネントのデプロイに推奨されるプロセスを説明します。
Oracle WSMシステムのトポロジを計画した後で、wsmadminコマンドライン・ツールを使用して、アプリケーションおよびコンポーネントをデプロイする必要があります。多くの場合、wsmadmin deployコマンドのみを使用して、アプリケーションおよびコンポーネントをデプロイできます。このコマンドは、すべてのOracle WSMコンポーネントまたは指定したコンポーネントを作成し、1つのOC4Jアプリケーション・エンジンにデプロイおよびバインドします。
アプリケーションまたはコンポーネントの作成とデプロイを分ける必要がある場合があります。この場合、wsmadmin buildAppsコマンドを使用した後、wsmadmin deployAppsコマンドを使用します。wsmadminコマンドの詳細は、付録B「Oracle Web Services Manager WSMADMINコマンド」を参照してください。
Oracle WSMは、デフォルト言語の英語以外に、9つの言語でローカライズされます。これらの言語は、製品インストール時に、自動的にインストールされます。インストール時に、Oracle Universal Installerによりロケールが検出されます。ロケールがサポートされているロケールの1つであれば、インストーラはOracle WSMをそのロケールでインストールします。ロケールがサポートされていない場合、Oracle Universal InstallerはOracle WSMをデフォルト・ロケールの英語でインストールします。
コンポーネント(Oracle WSM Policy Manager、Oracle WSM Monitor、Web Services Manager Controlなど)のオンライン・ヘルプも、サポートされている9つのロケールで使用可能です。
Oracle WSMでは、実行中のアプリケーションごとにログ・ファイルを生成します。これらのログ・ファイルは、ORACLE_HOME /j2ee/instance/logの下のランタイム・ディレクトリにあります。instance変数は、Oracle WSMがインストールされるOC4Jインスタンスの名前です。同じアプリケーションで同時に実行中のインスタンスが複数ある場合、インスタンスごとに別々のログ・ファイルを作成することをお薦めします。
各アプリケーションは別のカテゴリに分類され、カテゴリごとにログ・レベルが異なります。
ログ・ファイルの構成パラメータは実行時にロードされるため、ランタイム・レベルでロギングを調整することをお薦めします。これにより、エラーが発生している特定のアプリケーションのトラブルシューティングができます。
ロギング・レベルの設定の詳細は、『Oracle Web Services Manager管理者ガイド』を参照してください。
本番環境では、プロキシ・サーバーの内側にOracle WSMをデプロイすることが必要になる場合があります。プロキシ・サーバーにより、別のマシン上のサービス(この場合は、Oracle WSMシステム内のアプリケーション)に間接的にアクセスできます。プロキシ・サーバーは、Oracle WSMアプリケーションに対する以前のリクエストをキャッシュできるため、アプリケーションの応答は速くなります。キャッシュされていないか期限切れになったアプリケーション・リクエストの場合、プロキシ・サーバーはその情報を取得し、それをリクエスト側のマシンに転送します。Oracle WSMをプロキシ・サーバーの内側に設定すると、次のような利点があります。
パフォーマンスが向上します。
Oracle WSMに対してもう1つのセキュリティ層を追加する集中型リクエスト・キューを作成できます。
特定のURLへのアクセスを制限できます。
Oracle WSMは、スタンドアロン・インストールとしても、あるいはOracle Application Server 10gリリース3(10.1.3.1)の一部(Oracle SOA Suiteという)としてもインストールできます。スタンドアロン・インストールの詳細は『Oracle Web Services Managerインストレーション・ガイド』を、Oracle SOA Suiteインストールの詳細はOracle Application Serverのインストレーション・ガイドを参照してください。次の手順では、それぞれのタイプのプロキシ設定を構成する方法を説明しています。
スタンドアロンのOracle WSMインストールをプロキシ・サーバーの内側で構成する手順
次のファイルを開きます。
ORACLE_HOME/owsm/bin/coresv.properties
次のパラメータを編集します。
proxy.host = proxy_server
proxy.port = listen_port
noproxy.hosts = localhost *domain.com
Oracle SOA Suiteの一部としてインストールされているOracle WSMをプロキシ・サーバーの内側で構成する手順
次のファイルを開きます。
ORACLE_HOME/opmn/conf/opmn.xml
Oracle Web Services Managerがインストールされているインスタンス名が値になっているprocess-type idを探します。これは"home"の場合や、別のインスタンス名の場合があります。たとえば、次のようになります。
... <ias-component id="default_group"> <process-type id="home" module-id="OC4J" status="enabled"> ...
ファイルのcategory id="start-parameters"セクションでdata id="java-options"を探します。
... <category id="start-parameters"> <data id="java-options" value="-server -XX:MaxPermSize=128M .../> </category> ...
次のパラメータをjavaオプションの下に追加します。
Dhttp.proxySet = true
Dhttp.proxyHost = proxy_server
Dhttp.proxyPort = listen_port
Dhttp.nonproxyHost = *localhost|*domain.com
表2-2 Oracle SOA Suiteの一部としてインストールされているOracle WSM用のパラメータ設定
| パラメータ | 説明 |
|---|---|
|
|
プロキシ・サーバーを有効にするには、値をtrueに設定します。 |
|
|
プロキシ・サーバー名。たとえば、 |
|
|
接続を希望するプロキシ・サーバー上のポート番号。たとえば、80。 |
|
|
プロキシ・サーバーの介入なしに直接接続するホスト。この値は、縦線( |
Oracle WSMサーバーを再起動して、構成の変更を有効にします。
次の図は、クラスタ環境におけるOracle WSMの例です。それぞれ異なる仮想ホストにインストールされたOracle WSMインスタンスが3つあります。4つ目の仮想ホストは、ロード・バランサとして機能します。図2-1を参照してください。
インスタンス1およびインスタンス2は、次のコンポーネントを持つアクティブ・インスタンスです。
Oracle WSM Policy Manager
Oracle WSM Gateway
インスタンス1とインスタンス2は、vhost1とvhost2にインストールされています。
インスタンス3には、次のコンポーネントが含まれています。
Oracle WSM Monitor
Web Services Manager Control
インスタンス3は、vhost3にインストールされています。
4つ目の仮想ホストは、ロード・バランサ(lbrhost)です。
Oracle WSMのコンポーネントは、互いに単一のエンドポイントURLを介して通信します。したがって、1つのOracle WSMコンポーネントの複数のインスタンス(たとえば、Oracle WSM Policy Managerの複数のインスタンス)がある場合、Oracle WSMコンポーネントとWebサービス・クライアントとの間で、ロード・バランサを使用する必要があります。図2-1では、ロード・バランサが、クライアント・リクエストが到達する単一のエンドポイントURLとなっています。
すべてのOracle WSMコンポーネントの構成は静的です。そのため、コンピュータは、自身が存在するコンピュータや、通信相手である他のコンポーネントのコンピュータを含め、どのコンピュータのホスト名やポートも動的に決定できません。マシン・アドレスは常に存在する仮想エンドポイントを参照するように構成する必要があり、それにはコンポーネント間でのロード・バランサの使用が必要になります。
後続の項では、この例の設定に必要な手順について説明します。
Oracle WSMの3つのインスタンスをすべてインストールするには、『Oracle Web Services Managerインストレーション・ガイド』の手順に従ってください。
インスタンス1にすべてのOracle WSMコンポーネントをインストールし、lbrhostをホストとして指定します。
インスタンス2にすべてのOracle WSMコンポーネントをインストールし、lbrhostをホストとして指定します。
インスタンス3にすべてのOracle WSMコンポーネントをインストールし、vhost3をホストとして指定します。
Oracle WSMコンポーネントは、デフォルトでは一緒にバンドルされています。したがって、すべてのコンポーネントがインストールされます。インストールが完了してから、不要なコンポーネントを削除します。
次の手順で、Web Services Manager Control(vhost3上)を、ロード・バランサ(lbrhost)を経由することで、Oracle WSM Policy Manager(vhost1とvhost2上)と通信できるように設定します。
vhost3上で、ORACLE_HOME/owsm/config/ccore/ui-config-installer.propertiesファイルを編集します。
次のプロパティを設定します。
| プロパティ名 | 値 |
|---|---|
ui.pm.server.httpScheme |
httpまたはhttps。 |
ui.pm.server.httpHost |
Oracle WSM Policy Managerホスト名。この例では、ロード・バランサのlbrhostです。 |
ui.pm.server.httpPort |
Oracle WSM Policy Manager HTTPSポート。この例では、lbrhostポートです。 |
wsmadmin deploy controlコマンドを使用して、アプリケーションをデプロイします。
このコマンドの詳細は、付録B「Oracle Web Services Manager WSMADMINコマンド」の「deploy」を参照してください。
|
注意: ログ・ファイルでのエラーを避けるため、Oracle WSMコンポーネントを無効にする前に、常にこの手順を最初に実行してください。 |
Oracle WSMをインストールすると、デフォルトでは、すべてのコンポーネントがインストールされます。Oracle WSM Policy ManagerとOracle Web Services Manager Gatewayの両コンポーネントを、vhost3から削除する必要があります。次の手順に移る前に、まずWeb Services Manager Controlが設定されていることを確認します。
vhost3で、wsmadmin undeploy policymanagerコマンドを使用して、Oracle WSM Policy Managerコンポーネントを無効にします。
vhost3で、wsmadmin undeploy gatewayコマンドを使用して、Oracle Web Services Manager Gatewayコンポーネントを無効にします。
このコマンドの詳細は、付録B「Oracle Web Services Manager WSMADMINコマンド」の「undeploy」を参照してください。
Oracle WSM Gatewayを設定するには、Web Services Manager Controlからゲートウェイを登録する必要があります。ゲートウェイを登録することにより、ポリシーを持つ論理コンポーネントを作成します。Webサービスは、すべてのリクエストを通過させる必要のある仮想エンドポイントを作成することで保護されます。ゲートウェイを設定するには、次の作業を完了します。
ゲートウェイをvhost3上のOracle WSM Monitorに接続します。
ゲートウェイをそのコンポーネントIDで構成します。
ゲートウェイを再デプロイします。
次の手順は、これらの作業の完了方法を説明しています。
Oracle WSM Gatewayを設定する手順
|
注意: 論理ゲートウェイごとに、手順1〜3を1回実行します。 |
vhost3上のWeb Services Manager Controlにログインします。
Oracle WSM Gatewayを登録します。
ナビゲーション・ペインで、「ポリシー管理」をクリックし、「ポリシーの管理」をクリックします。
「新規コンポーネントの追加」をクリックします。
「コンポーネント・タイプ」リストから、「ゲートウェイ」を選択します。
「コンポーネントURL」ボックスに、ロード・バランサ(lbrhost)のURLを入力します。
「登録」をクリックします。
コンポーネントIDを書き留めておくことを忘れないでください。このIDは、手順4で使用します。
ゲートウェイ登録の詳細は、「Oracle WSM Gatewayの登録に関する前提条件と一般情報」を参照してください。
Oracle WSM Gatewayをvhost3上のOracle WSM Monitorと接続します。
Web Services Manager Controlのナビゲーション・ペインで、「ポリシー管理」をクリックし、「ポリシーの管理」をクリックします。
「コンポーネントのリスト」でゲートウェイを探し、そのゲートウェイの「編集」アイコンをクリックします。
Oracle WSM Monitorの次のプロパティを設定し、「保存」をクリックします。
| プロパティ名 | 値 |
|---|---|
cfluent.monitor.rmi.host |
Oracle WSM Monitorが存在するホスト。この例では、vhost3です。 |
cfluent.monitor.rmi.port |
Oracle WSM Monitor RMIポート。 |
|
注意: 物理ゲートウェイごとに、手順4および5を1回実行します。 |
Oracle WSM GatewayをコンポーネントIDで構成します。
vhost1で次のファイルを開きます。
ORACLE_HOME/owsm/config/gateway/gateway-config-installer.properties
次の行で、コンポーネントIDを手順2で書き留めたものに置き換えます。
gateway.component.id=C0003001
wsmadmin deploy gatewayコマンドを使用して、vhost1上にOracle WSM Gatewayを再デプロイします。
このコマンドの詳細は、付録B「Oracle Web Services Manager WSMADMINコマンド」の「deploy」を参照してください。
各Oracle Web Services Managerインストールでは、すべてのコンポーネント(Oracle WSM Policy Manager、Oracle WSM Monitor、Oracle WSM GatewayおよびWeb Services Manager Control)が実行中です。ただし、Oracle Web Services環境全体で、Oracle WSM Monitorのインスタンスは1つしか設定できません。そのため、vhost1およびvhost2上のOracle WSM Monitorを無効にする必要があります。
vhost1上で、wsmadmin undeploy monitorコマンドを実行して、Oracle WSM Monitorを無効にします。
vhost1上で、wsmadmin undeploy controlコマンドを実行して、Web Services Manager Controlを無効にします。
このコマンドの詳細は、付録B「Oracle Web Services Manager WSMADMINコマンド」の「undeploy」を参照してください。
Webサービスに対するリクエストは、ロード・バランサを通過します。ロード・バランサでは、リクエストをvhost1またはvhost2に送ります。ロード・バランサ(lbrhost)を通ってWSDLにアクセスできるかどうかを確認してください。
WebサービスをOracle WSM Gatewayに登録します。
ナビゲーション・ペインで、「ポリシー管理」をクリックし、「サービスの登録」をクリックします。
「新規サービスの追加」をクリックします。
保護するサービスのWSDLを登録します。
「終了」をクリックしてから「OK」をクリックします。
ゲートウェイへのWebサービス登録の詳細は、『Oracle Web Services Manager管理者ガイド』を参照してください。
WSDLのURLを取得します。
Web Services Manager Controlのナビゲーション・ペインで、「ポリシー管理」をクリックし、「サービスの登録」をクリックします。
ゲートウェイの「サービス」リンクをクリックします。
Webサービスの「詳細の表示」アイコンをクリックします。
「サービスのWSDL URL」フィールドに、URLをコピーします。
保護されたURLを使用して、Webサービスにアクセスできるかどうかをテストします。
Web Services Manager Controlのナビゲーション・ペインで、「ツール」をクリックし、「テスト・ページ」をクリックします。
コピーしたURLを「WSDL URLを入力してください」ボックスに貼り付け、「問合せの発行」をクリックします。ページがリフレッシュされ、設定できるその他のパラメータが表示されます。
「起動」をクリックします。「テスト結果」ページが表示されます。
テスト・ページの使用方法の詳細は、『Oracle Web Services Manager管理者ガイド』を参照してください。
この章の概念を読んで理解したら、個々のOracle WSMコンポーネントを構成し、デプロイできます。Oracle WSMコンポーネントの構成については、第3章「Oracle Web Services Managerコンポーネントの構成」を参照してください。