ヘッダーをスキップ
Oracle Application Serverエンタープライズ・デプロイメント・ガイド
10gリリース3(10.1.3.5.0)
B57230-01
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

3 mySOACompanyのWeb層とアプリケーション層のインストールと構成

この章では、図1-1で示したmySOACompany構成のWeb層およびアプリケーション層の完全なインストール手順について説明します。

3.1 Web層およびアプリケーション層の構成プロセス

アプリケーション層(APPHOST1およびAPPHOST2)は、中間層のOracle Application Serverインスタンスをホスティングする複数のコンピュータで構成されます。各Oracleホームには、複数のOracle Containers for J2EE(OC4J)インスタンスを含めて、そこにアプリケーションをデプロイできます。完全な構成では、リクエストがアプリケーション層コンピュータ上のOC4Jインスタンス間でロード・バランシングされ、高性能でフォルト・トレラントなアプリケーション環境が実現されます。Web層(WEBHOST1およびWEBHOST2)は、複数のOracle HTTP Serverで構成されます。

表3-1 MySOACompanyトポロジのネーミング規則

名前 説明

WEBHOST1、WEBHOST2

Webサーバー・ノードのホスト

APPHOST1、APPHOST2

アプリケーション・サーバー・ノードのホスト

ORA_HOME1

APPHOST1およびAPPHOST2のOC4Jインスタンス(OC4J_SOA、OC4J_ESBDT、OC4J_WSMおよびAdmin)用Oracleホーム

ORA_HOME2

APPHOST1およびAPPHOST2のOC4J_GTWYインスタンス用Oracleホーム


この項では、Web層およびアプリケーション層の完全なインストールおよび構成プロセスについて説明します。

  1. 10gリリース3(10.1.3.1.0)のOracle Universal Installerを使用し、同じOPMNクラスタを指定してWeb層のOracle HTTP Serverをインストールします。

    1. WEBHOST1にOracle HTTP Serverをインストールします。

    2. WEBHOST2にOracle HTTP Serverをインストールします。

  2. 10gリリース3(10.1.3.1.0)のOracle Universal Installerを使用して、アプリケーション・サーバー層(ORA_HOME1)をインストールします。

    1. APPHOST1にOracle Application Serverインスタンスをインストールします(ORA_HOME1、デフォルトのOC4Jインスタンス名はADMINとします)。

    2. APPHOST2にOracle Application Serverインスタンスをインストールします(ORA_HOME1、デフォルトのOC4Jインスタンス名はADMINとします)。

    3. APPHOST2(ORA_HOME1)のADMIN OC4Jインスタンスを無効化します。

  3. 10gリリース3(10.1.3.1.0)のOracle Universal Installerを使用して、アプリケーション・サーバー層(ORA_HOME2)をインストールします。

    1. APPHOST1にOracle Application Serverインスタンスをインストールします(ORA_HOME2、デフォルトのOC4Jインスタンス名はOC4J_GTWYとします)。

    2. APPHOST2にOracle Application Serverインスタンスをインストールします(ORA_HOME2、デフォルトのOC4Jインスタンス名はOC4J_GTWYとします)。

  4. Oracle Enterprise Manager 10g Grid Controlコンソールを使用して次のOC4JグループおよびOC4Jインスタンスを作成し、これらのインスタンスが同じOPMNクラスタに属するようにします。

    1. APPHOST1のアプリケーション・サーバー・インスタンスのORA_HOME1:

      • SOA_GROUP(OC4J_SOAインスタンス用)

      • ESBDT_GROUP(OC4J_ESBDTインスタンス用)

      • WSM_GROUP(OC4J_WSMインスタンス用)

      • OC4J_SOA

      • OC4J_ESBDT

      • OC4J_WSM

    2. APPHOST2のアプリケーション・サーバー・インスタンスのORA_HOME1:

      • OC4J_SOA

      • OC4J_ESBDT

      • OC4J_WSM

    3. アプリケーション・サーバー・インスタンスORA_HOME1のデフォルトのADMIN OC4Jインスタンスはデフォルト・グループのままにしておきます。

    4. アプリケーション・サーバー・インスタンスORA_HOME2のデフォルトのOC4J_GTWY OC4Jインスタンスはデフォルト・グループのままにしておきます。

  5. Oracle HTTP ServerインスタンスおよびOracle Application Serverインスタンスをクラスタ化します。

    1. マルチキャストが問題になる場合は、クラスタの静的検出を構成します。

    2. インスタンスが同じサブネット上にない場合は、インスタンスの検出用にゲートウェイを作成します。

    3. opmnctl status @clusterコマンドを実行して、クラスタの状態を検証および検出します。

  6. ロード・バランサ用にWebサーバーを構成します。

    1. WEBHOST1およびWEBHOST2のOracle HTTP Serverに仮想ホスト(soa.mycompany.comおよびsoainternal.mycompany.com:7777)を追加します。

  7. soa.mycompany.comおよびsoainternal.mycompany.com:7777のロード・バランサを構成します。

    1. soa.mycompany.com/em/*に対する外部アクセスをフィルタ制限します。

    2. soa.mycompnay.com/esb/*に対する外部アクセスをフィルタ制限します。

    3. soainternal.mycompany.com:7777の内部トラフィックにNATを設定します。

  8. Companion CDで利用可能なスタンドアロンのインストーラを使用して、Oracle BPEL Process Managerをインストールします。

    1. APPHOST1のアプリケーション・サーバー・インスタンスのORA_HOME1で、OC4J_SOAインスタンスにOracle BPEL Process Managerをインストールします。

    2. APPHOST2のアプリケーション・サーバー・インスタンスのORA_HOME1で、OC4J_SOAインスタンスにOracle BPEL Process Managerをインストールします。

    3. インストール後の構成手順を実行します。

  9. Companion CDで利用可能なスタンドアロンのインストーラを使用して、Oracle Enterprise Service Busランタイム・インスタンスをインストールします。

    1. APPHOST1のアプリケーション・サーバー・インスタンスのORA_HOME1で、OC4J_SOAインスタンスにOracle Enterprise Service Busランタイム・インスタンスをインストールします。

    2. APPHOST2のアプリケーション・サーバー・インスタンスのORA_HOME1で、OC4J_SOAインスタンスにOracle Enterprise Service Busランタイム・インスタンスをインストールします。

    3. インストール後の構成手順を実行します。

  10. Companion CDで利用可能なスタンドアロンのインストーラを使用して、Oracle Web Services Managerをインストールします。

    1. APPHOST1のアプリケーション・サーバー・インスタンスのORA_HOME1で、OC4J_WSMインスタンスにOracle WSMをインストールします。

    2. APPHOST2のアプリケーション・サーバー・インスタンスのORA_HOME1で、OC4J_WSMインスタンスにOracle WSMをインストールします。

    3. インストール後の構成手順を実行します。必要に応じてアプリケーションのアンデプロイも行います。

    4. APPHOST1のアプリケーション・サーバー・インスタンスのORA_HOME2で、OC4J_GTWYインスタンスにOracle WSMをインストールします。

    5. APPHOST2のアプリケーション・サーバー・インスタンスのORA_HOME2で、OC4J_GTWYインスタンスにOWSMをインストールします。

    6. インストール後の構成手順を実行します。必要に応じてアプリケーションのアンデプロイも行います。

  11. 10.1.3.5のパッチ・セットをすべてのOracleホームにインストールします。

  12. Oracle Enterprise Service Busリポジトリ・インスタンスのデプロイメントを行います。

    1. 10.1.3.5用の手順を使用して、Oracle Enterprise Service BusデザインタイムをAPPHOST1のリポジトリ・インスタンスにデプロイします。

    2. 10.1.3.5用の手順を使用して、Oracle Enterprise Service BusデザインタイムをAPPHOST2のリポジトリ・インスタンスにデプロイします。

    3. インストール後の構成手順を実行します。

  13. 必要に応じてアダプタをインストールおよび構成します。

  14. Identity Management層に対する残りの構成を実行します。

3.2 Oracle HTTP ServerのWEBHOST1およびWEBHOST2へのインストール

Oracle Universal Installerの「拡張インストール」オプションを使用して、Oracle HTTP Serverインスタンスをインストールします。

  1. 使用しているプラットフォームに対応したOracle Application Serverのインストレーション・ガイドで説明されているとおり、システム、パッチ、カーネルの要件、およびその他の要件が満たされていることを確認します。このマニュアルは、ご使用のプラットフォームおよびリリースのOracle Application Serverドキュメント・ライブラリで参照できます。

  2. Disk1/stage/Responseディレクトリのstaticports.iniファイルを、TMPなどのローカル・ディレクトリにコピーします。インストール中に、このファイルへのパスを設定します。

  3. staticport.iniファイルを編集し、次のカスタム・ポートを割り当てます。

    Oracle HTTP Server port = 7777
    

    注意:

    コンピュータ上の他のサービスが、このポートをすでに使用していないことを確認してください。静的ポート機能を使用してApplication Server層をインストールすると、ファイル内でのポートの指定が適切で、そのポートがすでに使用されていないかぎり、常に同じポートが割り当てられます。ポートの指定が適切でない場合、Oracle Universal Installerによってデフォルト・ポートが割り当てられます。ポートがすでに使用されている場合は、次に割当て可能なポートが選択されます。

  4. 次のように、Oracle Universal Installerを起動します。

    UNIXでは、runInstallerコマンドを発行します。

    Windowsでは、setup.exeをダブルクリックします。

    Oracle Application Server SOA Suite 10.1.3.0.1インストール」画面が表示されます。

  5. インスタンスのインストール・ディレクトリを指定します。

  6. 拡張インストール・モード」を選択します。

  7. インストール」をクリックします。

    インストール・タイプの選択」画面が表示されます。

  8. Webサーバー」を選択し、「次へ」をクリックします。

    ポート構成オプションの指定」画面が表示されます。

  9. 手動」を選択してstaticports.iniファイルの場所を指定してから、「次へ」をクリックします。

    インスタンス名の指定」画面が表示されます。

  10. インスタンス名を指定し、「次へ」をクリックします。

    クラスタ・トポロジ構成」画面が表示されます。

  11. チェック・ボックスを選択し、インスタンスをOracle Application Serverクラスタの一部として構成します。

    マルチキャスト・アドレスとポートを指定します。


    注意:

    たとえば、マルチキャスト・アドレスに225.0.0.20、ポートに8001を指定します。このアドレスとポートはファーム内のすべてのコンピュータで同じにする必要があります。ファーム外のネットワーク上のアプリケーションまたはOracle ASインスタンスで使用されているマルチキャスト・アドレスを指定することはできません。

  12. 次へ」をクリックします。

    サマリー」画面が表示されます。

  13. インストール」をクリックします。

    コンフィギュレーション・アシスタント」画面が表示されます。構成プロセスが終了すると、「インストールの終了」画面が表示されます。

  14. 終了」をクリックしてから、その選択を確認します。

  15. Oracle HTTP Serverインスタンスを表示して、インストールが成功したことを確認します。ブラウザを起動し、次のURLにアクセスします。

    http://WEBHOST1.mycompany.com:7777および

    http://WEBHOST2.mycompany.com:7777


    注意:

    インストールの正常終了を確認するためのインストールURLとコマンドは、ORACLE_HOME/install/readme.txtファイルに記載されています。

3.2.1 WEBHOST1およびWEBHOST2でのApache 2.0 Webサーバー・インスタンスの名前の変更

Apache 2.0ベースのOracle HTTP ServerをCompanion CDからWEBHOST1およびWEBHOST2にインストールした場合、両方のコンピュータ上のインスタンス名は、インストーラによって割り当てられたデフォルト名になります。クラスタでは、opmnctl @cluster statusコマンドで各インスタンスを表示するとき、インスタンス名が一意である必要があります。インスタンスの名前を変更する手順は次のとおりです。

  1. 次のコマンドを発行して、インスタンスを停止します。

    opmnctl stopall

  2. ORACLE_HOME/opmn/conf/opmn.xmlファイルを編集し、instance idとnameを変更します。

    <ias-instance id="AS-1
      name="AS-1">
    
  3. 既存のインスタンス名(この例ではAS-1)が指定されている両方の箇所を、一意のインスタンス名で置換します。

  4. ファイルを保存して閉じます。

  5. 次のコマンドを発行して、インスタンスを再起動します。

    opmnctl startall

3.3 Application ServerインスタンスのAPPHOST1およびAPPHOST2へのインストール(ORA_HOME1)

Oracle Universal Installerの「拡張インストール」オプションを使用して、1つのOC4Jインスタンスのみで構成されるOracle Application Serverインスタンスをインストールします。アプリケーション・サーバーをインストールしてAPPHOST1およびAPPHOST2にORA_HOME1を作成する手順は次のとおりです。

  1. Oracle Application Serverのインストレーション・ガイドで説明されているとおり、システム、パッチ、カーネルの要件、およびその他の要件が満たされていることを確認します。このマニュアルは、ご使用のプラットフォームおよびリリースのOracle Application Serverドキュメント・ライブラリで参照できます。

  2. 次のいずれかのコマンドを使用して、Oracle Universal Installerを起動します。

    UNIXでは、runInstallerコマンドを発行します。

    Windowsでは、setup.exeをダブルクリックします。

    Oracle Application Server SOA Suite 10.1.3.0.1インストール」画面が、「基本インストール・モード」と「統合されたWebサーバー、J2EEサーバーおよびプロセス管理」インストール・タイプが選択された状態で表示されます。

  3. インスタンスのインストール・ディレクトリを指定します。または、デフォルトのままにします。

  4. 拡張インストール」を選択し、「次へ」をクリックします。

    確認ダイアログ・ボックスが表示されます。

  5. はい」をクリックします。

    進行状況ダイアログに続いて、「インストール・タイプの選択」画面が表示されます。

  6. J2EEサーバー」を選択し、「次へ」をクリックします。

    ポート構成オプションの指定」画面が表示されます。

  7. 自動」を選択し、「次へ」をクリックします。

    管理(Administration)設定」画面が表示されます。

  8. アプリケーション・サーバー・インスタンスのインスタンス名を指定します。


    注意:

    指定するインスタンス名は、ホスト名の前に付加されます。たとえば、ホスト名がserver1.mycompany.comのときにインスタンス名としてJ2EEを指定した場合、インスタンス名はJ2EE.server1.mycompany.comとなります。

  9. デフォルトOC4Jインスタンスの管理者パスワードを指定および確認します。

  10. インストーラによって作成されたデフォルトOC4Jインスタンスに対して、Application Server Control用のインスタンスであることを示すAdminなどの名前を指定します(デフォルトはhome)。


    注意:

    Admin OC4Jインスタンスにはアプリケーションをデプロイしません。このインスタンスは、アプリケーションのデプロイ先となる、ユーザーが作成するOC4Jインスタンスとクラスタ化されません。

  11. 管理用のOC4Jインスタンス(Application Server Controlコンソールが動作するインスタンス)としてインストールされたインスタンスであることを示すチェック・ボックスを選択します。

  12. 次へ」をクリックします。

    クラスタ・トポロジ構成」画面が表示されます。

  13. マルチキャスト・アドレスとポートを指定します。

    この手順により、同じOracle Notification Service(ONS)トポロジ内に複数のインスタンスが構成されます。トポロジ内のインスタンス間で可用性通知が共有され、Oracle HTTP ServerからOC4Jへの動的ルーティング、インスタンスの動的検出およびOC4Jグループの作成が可能になります。このマルチキャスト・アドレスの目的は、第3.12項「APPHOST1およびAPPHOST2のBPELインスタンスのクラスタ構成」で説明しているマルチキャスト・アドレスとは異なります。


    注意:

    たとえば、マルチキャスト・アドレスに225.0.0.20、ポートに8001を指定します。このアドレスとポートはファーム内のすべてのコンピュータで同じにする必要があります。ファーム外のネットワーク上のアプリケーションまたはOracle Application Serverインスタンスで使用されているマルチキャスト・アドレスを指定することはできません。

  14. このOC4Jインスタンスに別のOracle HTTP Serverからアクセス」チェック・ボックスを選択します。

  15. 「次へ」をクリックします。

    「サマリー」画面が表示されます。

  16. 「インストール」をクリックします。

    「インストールの準備中」ダイアログに続いて、「インストール」画面が表示されます。

  17. 「コンフィギュレーション・アシスタント」画面が表示されます。構成プロセスが終了すると、「インストールの終了」画面が表示されます。

  18. 「終了」をクリックしてから、その選択を確認します。

    ここまでの手順で、第1章の図にORA-HOME1と示されている最初のOracleホームがAPPHOST1およびAPPHOST2上にインストールされ、Admin OC4Jインスタンスが作成されます。

  19. Oracle Enterprise Manager 10gにインスタンスを表示して、インストールが成功したことを確認します。ブラウザを起動し、Application Server Controlコンソールにログインしてアプリケーション・サーバー・インスタンスを表示します。

    http://WEBHOST1.mycompany.com:7777/emおよび

    http://WEBHOST2.mycompany.com:7777/em


    注意:

    Windowsでは、「スタート」メニューからインスタンスを選択し、「Oracle Application Server Control」オプションを選択できます。

    インストールの正常終了を確認するためのインストールURLとコマンドは、ORACLE_HOME/install/readme.txtファイルに記載されています。

    デフォルトでは、アプリケーション層のすべてのコンポーネントが1つのJVMで起動されます。OC4J_SOAインスタンス(Oracle BPEL Process ManagerおよびOracle Enterprise Service Bus)用にJVMの数を増やすことができます。10gリリース3(10.1.3.1)ドキュメント・ライブラリの『Oracle Application Server管理者ガイド』で「Application Serverインスタンスの再構成」を参照してください。


3.4 APPHOST2のApplication Server Controlコンソールの無効化(オプション)

Application Server Controlコンソールには、別のアクティブなApplication Server Controlコンソールにレプリケートされない、ローカルな状態情報も格納されます。JMX通知サブスクリプションおよび受信済通知などの情報が、これに該当します。JMX通知を使用する場合は、Oracle HTTP Serverによってリクエストがルーティングされないように、APPHOST1以外のApplication Server Controlコンソールを無効化する必要があります。これによって、リクエストを受信したインスタンス上で、通知サブスクリプションが変更されたり削除されることがなくなります(2つのインスタンスが非同期化されます)。Application Server Controlコンソールへのルーティングを無効化するには、次に示すように、Application Server Controlコンソールに対応付けられたdefault-web-site.xmlファイルで、ohs-routingタグをfalseに設定します。

<web-app application="ascontrol" load-on-startup="true"
name="ascontrol"
ohs-routing="false" root="/em"/>

フェイルオーバー目的で2番目のApplication Server Controlコンソールを使用する必要がある場合は、ohs-routingtrueに設定します。通知サブスクリプションおよび受信済通知の状態をプライマリなApplication Server ControlコンソールからセカンダリなApplication Server Controlコンソールにリストアするには、バックアップおよびリカバリ手順を使用する必要があります。

複数のApplication Server Controlコンソールをアクティブにする場合は、次の点に注意してください。

3.5 占有ポートの特定

次のnetstatコマンドを使用して、占有されているポートを調べます。

netstat -an

OC4Jインスタンスに割り当てられるのは、netstatコマンドによって出力されないAJPポート範囲内(12501〜12600)のポート番号です。

3.6 Application ServerインスタンスのAPPHOST1およびAPPHOST2へのインストール(ORA_HOME2)

Oracle Universal Installerの「拡張インストール」オプションを使用して、1つのOC4Jインスタンスのみで構成されるOracle Application Serverインスタンスをインストールします。アプリケーション・サーバーをインストールしてAPPHOST1およびAPPHOST2にORA-HOME2を作成する手順は次のとおりです。

  1. Oracle Application Serverのインストレーション・ガイドで説明されているとおり、システム、パッチ、カーネルの要件、およびその他の要件が満たされていることを確認します。このマニュアルは、ご使用のプラットフォームおよびリリースのOracle Application Serverドキュメント・ライブラリで参照できます。

  2. 次のいずれかのコマンドを使用して、Oracle Universal Installerを起動します。

    UNIXでは、runInstallerコマンドを発行します。

    Windowsでは、setup.exeをダブルクリックします。

    Oracle Application Server SOA Suite 10.1.3.0.1インストール」画面が、「基本インストール・モード」と「統合されたWebサーバー、J2EEサーバーおよびプロセス管理」インストール・タイプが選択された状態で表示されます。

  3. インスタンスのインストール・ディレクトリを指定します。または、デフォルトのままにします。

  4. 拡張インストール」を選択し、「次へ」をクリックします。

    確認ダイアログ・ボックスが表示されます。

  5. はい」をクリックします。

    進行状況ダイアログに続いて、「インストール・タイプの選択」画面が表示されます。

  6. J2EEサーバー」を選択し、「次へ」をクリックします。

    ポート構成オプションの指定」画面が表示されます。

  7. 自動」を選択し、「次へ」をクリックします。

    管理(Administration)設定」画面が表示されます。

  8. アプリケーション・サーバー・インスタンスのインスタンス名を指定します。


    注意:

    指定するインスタンス名は、ホスト名の前に付加されます。たとえば、ホスト名がserver1.mycompany.comのときにインスタンス名としてJ2EEを指定した場合、インスタンス名はJ2EE.server1.mycompany.comとなります。

  9. デフォルトOC4Jインスタンスの管理者パスワードを指定および確認します。

  10. インストーラによって作成されたデフォルトOC4Jインスタンスに対して、ゲートウェイ用のインスタンスであることを示すOC4J_GTWYなどの名前を指定します(デフォルトはhome)。

  11. 管理用のOC4Jインスタンス(Application Server Controlコンソールが動作するインスタンス)としてインストールされたインスタンスであることを示すチェック・ボックスは選択しません。

  12. 次へ」をクリックします。

    クラスタ・トポロジ構成」画面が表示されます。

  13. マルチキャスト・アドレスとポートを指定します。


    注意:

    たとえば、マルチキャスト・アドレスに225.0.0.20、ポートに8001を指定します。このアドレスとポートはファーム内のすべてのコンピュータで同じにする必要があります。ファーム外のネットワーク上のアプリケーションまたはOracle Application Serverインスタンスで使用されているマルチキャスト・アドレスを指定することはできません。

  14. このOC4Jインスタンスに別のOracle HTTP Serverからアクセス」チェック・ボックスを選択します。

  15. 「次へ」をクリックします。

    「サマリー」画面が表示されます。

  16. 「インストール」をクリックします。

    「インストールの準備中」ダイアログに続いて、「インストール」画面が表示されます。

  17. 「コンフィギュレーション・アシスタント」画面が表示されます。構成プロセスが終了すると、「インストールの終了」画面が表示されます。

  18. 「終了」をクリックしてから、その選択を確認します。

    ここまでの手順で、第1章の図にORA-HOME2と示されている2番目のOracleホームがAPPHOST1およびAPPHOST2上にインストールされ、OC4J_GTWYインスタンスが作成されます。

  19. Oracle Enterprise Manager 10gにインスタンスを表示して、インストールが成功したことを確認します。ブラウザを起動し、Application Server Controlコンソールにログインしてアプリケーション・サーバー・インスタンスを表示します。

    http://WEBHOST1.mycompany.com:7777/em


    注意:

    Windowsでは、「スタート」メニューからインスタンスを選択し、「Oracle Application Server Control」オプションを選択できます。

    インストールの正常終了を確認するためのインストールURLとコマンドは、ORACLE_HOME/install/readme.txtファイルに記載されています。


3.7 APPHOST1およびAPPHOST2のOC4JインスタンスおよびOC4Jグループの作成

第1章の図に示したOC4JインスタンスとOC4Jグループを作成する必要があります。OC4Jグループでは、グループ内のOC4Jインスタンスの構成が同期化されます。たとえば、この手順で作成されるSOA_GROUPでは、データ・ソースやJMSなどに関連する構成が、グループに属する複数のOC4Jコンテナ間で同期化されます。Oracle BPEL Process Managerのデプロイメントは、第3.11項で説明しているように各インスタンス・ベースで実行されます。次に、BPELプロセスがデハイドレーション・ストアにデプロイされます。BPELクラスタ内のOracle BPEL Process Managerインスタンスは同じデハイドレーション・ストアを共有するため、デプロイする必要のあるBPELプロセスは1つのみです。

インスタンス:

グループ:

  1. インストール時に設定したパスワードで、Application Server Controlコンソールにログインします。

    「クラスタ・トポロジ」ページが表示されます。

  2. アプリケーション・サーバー・インスタンスのリンク(「メンバー」リストにあるAPPHOST1またはAPPHOST2)をクリックします。インスタンスはORA-HOME1にのみ作成します。

    インスタンスの「アプリケーション・サーバー」ページが表示され、「システム・コンポーネント」リストにAdmin OC4Jインスタンスが表示されます。

  3. 「OC4Jインスタンスの作成」をクリックします。

    「OC4Jインスタンスの作成」ページが表示されます。

  4. 「OC4Jインスタンス名」フィールドに「OC4J_SOA」と入力します。

  5. 「名前を指定して新規グループに追加」を選択し、「新規グループ名」フィールドに「SOA_GROUP」と入力して、インスタンスを起動するチェック・ボックスを選択します。

  6. 「作成」をクリックします。

    「処理中:」画面がメッセージとともに表示され、「アプリケーション・サーバー」ページに、新しいインスタンスと、インスタンスが作成されグループに追加されたことを示す構成メッセージが表示されます。

  7. OC4J_SOAインスタンスをクリックします。

    「OC4J」ページが表示されます。

  8. 「管理」をクリックします。

    「管理タスク」表が表示されます。

  9. 「プロパティ」リストの「サーバー・プロパティ」に対応付けられた「タスクに移動」アイコンをクリックします。

    「サーバー・プロパティ」ページが表示されます。

  10. default-web-siteに未使用のAJPポート(第3.5項「占有ポートの特定」を参照)を指定し、「適用」をクリックします。

    「処理中」画面がステータス・メッセージとともに表示され、次に確認メッセージが表示されます。

  11. OC4J_ESBDTインスタンスおよびOC4J_WSMインスタンスについて手順1から9までを繰り返し、それぞれのグループ名にESBDT_GROUPおよびWSM_GROUPを指定します。各インスタンスには、AJPポート範囲内の異なる一意のポートを割り当てます。

  12. ORACLE_HOME/opmn/binにある次のコマンドを発行します。

    opmnctl stopall

    opmnctl startall

3.8 WEBHOST1、2およびAPPHOST1、2のクラスタ・ゲートウェイの構成(オプション)

第1章のアーキテクチャ図に示しているように、各層はファイアウォールによって区切られています。ファイアウォールによって区切られた各層上のクラスタ間の通信を可能にするには、トポロジ間ゲートウェイを構成する必要があります。トポロジ間ゲートウェイでは、ファイアウォールのそれぞれの側にある1つ以上のノードがクラスタへのエントリ・ポイントとして指定されます。

このマニュアルで説明しているエンタープライズ・デプロイメントでは、WEBHOST1およびWEBHOST2がWebサーバー層(DMZ1)でクラスタ化され、APPHOST1およびAPPHOST2がアプリケーション・サーバー層(DMZ2)でクラスタ化されています。最大の冗長性を実現するため、各層に1つ以上のノードをゲートウェイとして構成します(たとえば、DMZ1ではWEBHOST1およびWEBHOST2、DMZ2ではAPPHOST1およびAPPHOST2をゲートウェイ・サーバーとして構成します)。ゲートウェイ・サーバー間の通信には、各インスタンスのOracle Notification Service(ONS)リモート・ポートが使用されます。

ゲートウェイ構成を導入する手順は次のとおりです。

  1. APPHOST1でORACLE_HOME/opmn/conf/opmn.xmlファイルを開きます。

  2. 次の例に示すように、<gateway>サブ要素を作成します。

    <notification-server>
    
      <port local="6101" remote="6200" request="60041"/>
    
      <ssl enabled="true" wallet-file="$ORACLE_HOME\opmn\conf\ssl.wlt\default"/>
    
       <topology>
    
       <discover list="*225.0.0.20:8001"/>
       <gateway list="apphost1.mycompany.com:6200&amp;apphost2.mycompany.com:6200&amp;apphost1.mycompany.com:6300&amp;apphost2.mycompany.com:6300/webhost1.mycompany.com:6200&amp;webhost2.mycompany.com:6200"/>
       <gateway  list="webhost1.mycompany.com:6200&amp;webhost2.mycompany.com:6200/apphost1.mycompany.com:6200&amp;apphost2.mycompany.com:6200&amp;apphost1.mycompany.com:6300&amp;apphost2.mycompany.com:6300"/>
       </topology>
    </notification-server>
    ...
    
     

    注意:

    6200は、APPHOST1のORA_HOME1、APPHOST2のORA_HOME1、WEBHOST1およびWEBHOST2用のOPMNリモート・ポートです。6300は、APPHOST1およびAPPHOST2のORA_HOME2用のOPMNリモート・ポートです構成に必要なポート値を決めるには、すべてのサーバーのopmn.xmlファイルを参照する必要があります。

  3. APPHOST1でORACLE_HOME/opmn/binにある次のコマンドを発行します。

    opmnctl reload

  4. <gateway>サブ要素をAPPHOST2のopmn.xmlファイルにコピーします。

  5. APPHOST2でORACLE_HOME/opmn/binにある次のコマンドを発行します。

    opmnctl reload

  6. <gateway>サブ要素をWEBHOST1のORACLE_ HOME/opmn/conf/opmn.xmlファイルにコピーして、ホスト名をWEBHOSTに変更します。

  7. WEBHOST1でORACLE_HOME/opmn/binにある次のコマンドを発行します。

    opmnctl reload

  8. <gateway>サブ要素をWEBHOST2のopmn.xmlファイルにコピーします。

  9. WEBHOST2でORACLE_HOME/opmn/binにある次のコマンドを発行します。

    opmnctl reload


  10. 注意:

    詳細は、『Oracle Containers for J2EE構成および管理ガイド』の「トポロジ間ゲートウェイの構成」を参照してください。

3.9 ロード・バランシング・ルーターを使用したWEBHOST1およびWEBHOST2のOracle HTTP Serverの構成

ロード・バランシング・ルーターは、クライアント・リクエストを受信し、それらをWeb層上の2つのOracle HTTP Serverインスタンス間でロード・バランシングします。これは、soa.mycompany.com(外部アクセス用)およびsoainternal.mycompany(内部アクセス用)の2つの仮想ホストを使用して実行されます。外部アクセスURLのみSSLを有効化します。

仮想ホストをリスニングするようにOracle HTTP Serverインスタンスを構成する手順は次のとおりです。

  1. 次のOracle HTTP Server構成ファイルを開きます。

    Apache 1.3:

    ORACLE_HOME/Apache/Apache/conf/httpd.conf

    Apache 2.0:

    ORACLE_HOME/ohs/conf/httpd.conf

  2. 次の手順を実行します。

    1. 使用するプラットフォームに対して、適切なLoadModule certheaders_moduleディレクティブを追加します。

      UNIX Apache 1.3:

      LoadModule certheaders_module libexec/mod_certheaders.so

      UNIX Apache 2.0(UNIXでApache 2.0を使用する場合は次のディレクティブを使用):

      LoadModule certheaders_module modules/mod_certheaders.so

      Windows:

      LoadModule certheaders_module modules/ApacheModuleCertHeaders.dll

    2. 使用しているApacheバージョンに対して次の行を追加し、NameVirtualHostディレクティブ、およびsoa.mycompany.comとポート443用のVirtualHostコンテナを作成します。

      Apache 1.3:

      NameVirtualHost *:7777
      <VirtualHost *:7777>
        ServerName soa.mycompany.com
        Port 443
        ServerAdmin you@your.address
        RewriteEngine On
        RewriteOptions inherit
        SimulateHttps On
      </VirtualHost>
      
      <VirtualHost *:7777>
        ServerName soainternal.mycompany.com
        Port 7777
        ServerAdmin you@your.address
        RewriteEngine On
        RewriteOptions inherit
      </VirtualHost>
      

      Apache 2.0(UNIX):

      NameVirtualHost *:7777
      <VirtualHost *:7777>
        ServerName soa.mycompany.com:443
        ServerAdmin you@your.address
        RewriteEngine On
        RewriteOptions inherit
        SimulateHttps On
      </VirtualHost>
      
      <VirtualHost *:7777>
        ServerName soainternal.mycompany.com:7777
        ServerAdmin you@your.address
        RewriteEngine On
        RewriteOptions inherit
      </VirtualHost>
      

      注意:

      LoadModuleディレクティブ(特にLoadModule rewrite_moduleディレクティブ)は、httpd.confファイル内のVirtualHostディレクティブの前に配置する必要があります。サーバーでは、VirtualHostコンテナ内のディレクティブが実行される前に、すべてのモジュールがロードされている必要があります。

      VirtualHostディレクティブは、httpd.confファイルの最後に作成することをお薦めします。

      LoadModule rewrite_moduleディレクティブは、LoadModule certheaders_moduleディレクティブよりも前にする必要があります。


  3. httpd.confファイルを保存します。

  4. ORACLE_HOME/opmn/binにある次のコマンドを発行して、コンポーネントを再起動します。

    opmnctl stopall

    opmnctl startall

  5. 次のURLにアクセスできることを確認します。

    http://soainternal.mycompany.com:7777/j2ee

    https://soa.mycompany.com/j2ee

3.10 ロード・バランシング・ルーターの構成

  1. WEBHOST1およびWEBHOST2間で仮想ホストhttps://soa.mycompany.comおよびhttp://soainternal.mycompany.com:7777に対してリクエストをバランシングするようにロード・バランサを構成します。

  2. WEBHOST1およびWEBHOST2でOracle HTTP Serverインスタンスの監視を有効化します。

  3. フィルタリングを有効にして、次に対する外部アクセスを制限します。

    https://soa.mycompany.com/em/*

    https://soa.mycompany.com/esbdt/*

    https://soa.mycompany.com/BPELConsole/*

    https://soa.mycompany.com/ccore/*

  4. ネットワーク・アドレス変換(NAT)ステートメントを含めて、soainternal.mycompany.comを外部から見えないように指定します。

  5. soa.mycompany.comおよびsoainternal.mycompany.comに対して永続性が設定されていないことを確認してください。

3.11 Oracle BPEL Process Manager(10.1.3.1.0)CDからのOracle BPEL Process ManagerインスタンスのAPPHOST1およびAPPHOST2へのインストール

APPHOST1およびAPPHOST2のOC4J_SOAインスタンスに、Oracle BPEL Process Managerインスタンスをインストールする必要があります。


注意:

各コンポーネントのインストールにはそれぞれのコンポーネントCD-ROM(たとえば、Oracle BPEL Process Manager CD-ROMやOracle Enterprise Service Bus CD-ROM)を使用します。各コンポーネントは、第3.3項「Application ServerインスタンスのAPPHOST1およびAPPHOST2へのインストール(ORA_HOME1)」で実行したように、J2EEサーバー・インストールとして同じOracleホームにインストールします。

  1. 使用しているプラットフォームに対応したOracle Application Serverのインストレーション・ガイドで説明されているとおり、システム、パッチ、カーネルの要件、およびその他の要件が満たされていることを確認します。このマニュアルは、ご使用のプラットフォームおよびリリースのOracle Application Serverドキュメント・ライブラリで参照できます。

  2. Oracle BPEL Process Manager(10.1.3.1.0)CDを挿入します。

  3. Oracle Universal Installerを起動します。

    UNIXでは、runInstallerコマンドを発行します。

    Windowsでは、setup.exeをダブルクリックします。

    ようこそ」画面が表示されます。

  4. 次へ」をクリックします。

    ファイルの場所の指定」画面が表示されます。

  5. インストール・ディレクトリにORA_HOME1を指定します(Admin OC4Jインスタンスと同じOracleホーム)。

  6. 次へ」をクリックします。

    インストール・タイプの選択」画面が表示されます。

  7. BPEL Process Manager for OracleAS Middle Tier」オプションを選択し、「次へ」をクリックします。

    送信HTTPプロキシ情報の指定」画面が表示されます。

  8. ホスト、ポートおよびバイパス・プロキシを指定し、「次へ」をクリックします。

    データベースの指定」画面が表示されます。

  9. データベース情報を指定します。

    データベース・タイプ: Oracle Database

    ホスト名とポート: INFRADBHOST1-V.mycompany.com:1521^INFRADBHOST2-V.mycompany.com:1521

    サービス名: ORCLSVC.mycompany.com

    ORABPELスキーマ・パスワード: (BPEL Process Managerスキーマのパスワード)

  10. 次へ」をクリックします。

    管理(Administration)設定」画面が表示されます。

  11. 管理設定を指定します。

    AS管理者のパスワード: (インストール時に設定されたOracle Application Serverの管理者パスワード)

    OC4Jインスタンス名: OC4J_SOA

    HTTPホスト:ポート: soainternal.mycompany.com:7777

  12. 次へ」をクリックします。

    サマリー」画面が表示されます。

  13. インストール」をクリックします。

    インストールが実行され完了します。

  14. 終了」をクリックしてから、その選択を確認します。

  15. 次のURLにアクセスして、インストールが正しく実行されたことを確認します。

    http://soainternal.mycompany.com:7777/BPELConsole

3.12 APPHOST1およびAPPHOST2のBPELインスタンスのクラスタの構成

この項では、エンタープライズ・デプロイメント用にBPELインスタンスをクラスタ化する方法について簡単に説明します。クラスタ内のBPELインスタンスは同じデハイドレーション・ストアを共有します。1つのBPELインスタンスに障害が発生すると、クラスタ内で稼動している他のインスタンスが所有権を引き継いでフローを再開できます。リカバリは手動またはスクリプトによって実行します。さらにデハイドレーション・ストアにはBPELプロセス・スーツケースが1つ格納されます。これにより、デハイドレーション・ストアにBPELプロセスを1度デプロイするだけで、ローカル・デプロイの実行時、BPELクラスタ内の個々のOracle BPEL Process Managerインスタンスがそのプロセスを使用できるようになります。これには、JGroupを構成する必要があります。詳細は、『Oracle BPEL Process Managerインストレーション・ガイド』の「Oracle BPEL Process Managerクラスタの作成」を参照してください。

  1. サーバー・サイドの次のプロパティを構成します(次の手順は、APPHOST1およびAPPHOST2が同じサブネット上にあることを想定しています。同じサブネット上にない場合は、10gリリース3の『Oracle BPEL Process Managerインストレーション・ガイド』の手順を参照してください)。

    enableClustertrueに設定し、ORACLE_HOME/bpel/system/config/collaxa-config.xmlclusterNameプロパティに名前を割り当てます。clusterNameによってBPELクラスタ内のOracle BPEL Process Managerインスタンスが構成されます。この名前はAPPHOST1とAPPHOST2で同じにする必要があります。

    ORACLE_HOME/bpel/system/config/jgroups-protocol.xmlmcast-addrおよびmcast-portを設定します。これにより、Oracle BPEL Process Managerおよび単独のアダプタ(FTPアダプタやファイル・アダプタなど)によって使用されるJGroup構成が作成されます。mcast-addrプロパティおよびmcast-portプロパティの値は次のように設定します。

    • クラスタ内のすべてのOracle BPEL Process Managerノードに同じ値を設定する

    • クラスタ内のすべてのOracle BPEL Process Managerノードに同じ値を設定する

    • ファーム外のネットワーク上のアプリケーションまたはインスタンスで使用されている値は設定しない


    注意:

    この手順は、アダプタの状態の管理(アクティブまたはパッシブ)、およびBPELクラスタ内でのプロセス配布通知の伝播に必要になります。BPELでのJGroupの構成とOracle Application ServerでのONSトポロジの構成の目的は異なります。ネットワークの競合を回避するために、それぞれ異なるマルチキャスト・アドレスを使用する必要があります。

  2. 各APPHOST上のBPELADMINコンソールを使用して、soapServerURLにロード・バランサの内部URLと同じ値を設定し、soapCallbackUrlにロード・バランサの外部URLと同じ値を設定します。

    1. oc4jadminユーザーとしてOracle BPEL Adminコンソール(http://hostname:port/BPELAdmin)にログインします。

    2. 「構成」タブで次の値を設定します。

      soapServerURL: http://soainternal.mycompany.com:7777

      soapCallbackURL: https://soa.mycompany.com

    3. BPELプロセスのセキュア化の詳細は、『Oracle BPEL Process Manager管理者ガイド』を参照してください。

  3. クラスタ内のすべてのコンピュータについて、クライアント・サイドの次のプロパティを構成します。

    ORACLE_HOME/bpel/utilities/ant-orabpel.propertiesファイルで、clustertrueに設定します。

    oc4jinstancenameをSOA_GROUP(Oracle BPEL Process ManagerがデプロイされたOC4Jグループの名前)に設定します。

  4. 両方のコンピュータでOC4J_SOAインスタンスを再起動します。

3.13 Oracle Enterprise Service Bus(10.1.3.1.0)CDからのOracle Enterprise Service Busランタイム・インスタンスのAPPHOST1およびAPPHOST2へのインストール

APPHOST1およびAPPHOST2のOC4J_SOAインスタンスに、ESBランタイム・インスタンスをインストールする必要があります。


注意:

各コンポーネントのインストールにはそれぞれのコンポーネントCD-ROM(たとえば、Oracle BPEL Process Manager CD-ROMやOracle Enterprise Service Bus CD-ROM)を使用します。各コンポーネントは、第3.3項「Application ServerインスタンスのAPPHOST1およびAPPHOST2へのインストール(ORA_HOME1)」で実行したように、J2EEサーバー・インストールとして同じOracleホームにインストールします。

  1. 使用しているプラットフォームに対応したOracle Application Serverのインストレーション・ガイドで説明されているとおり、システム、パッチ、カーネルの要件、およびその他の要件が満たされていることを確認します。このマニュアルは、ご使用のプラットフォームおよびリリースのOracle Application Serverドキュメント・ライブラリで参照できます。

  2. Oracle Enterprise Service Bus(10.1.3.1.0)CDを挿入します。

  3. Oracle Universal Installerを起動します。

    UNIXでは、runInstallerコマンドを発行します。

    Windowsでは、setup.exeをダブルクリックします。

    ようこそ」画面が表示されます。

  4. 次へ」をクリックします。

    ファイルの場所の指定」画面が表示されます。

  5. インストール・ディレクトリにORA_HOME1を指定します(OC4J_SOAインスタンスと同じOracleホーム)。

  6. 次へ」をクリックします。

    インストール・タイプの選択」画面が表示されます。

  7. Enterprise Service Bus for OracleAS Middle Tier」オプションを選択し、「次へ」をクリックします。

    送信HTTPプロキシ情報の指定」画面が表示されます。

  8. ホスト、ポートおよびバイパス・プロキシを指定し、「次へ」をクリックします。

    データベースの指定」画面が表示されます。

  9. データベース情報を指定します。

    データベース・タイプ: Oracle Database

    ホスト名とポート: INFRADBHOST1-V.mycompany.com:1521^INFRADBHOST2-V.mycompany.com:1521

    サービス名: ORCLSVC.mycompany.com

    ORAESBスキーマ・パスワード: (ESBスキーマ・パスワード)

  10. 次へ」をクリックします。

    管理(Administration)設定」画面が表示されます。

  11. 管理設定を指定します。

    AS管理者のパスワード: (インストール時に設定されたOracle Application Serverの管理者パスワード)

    OC4Jインスタンス名: OC4J_SOA

    HTTPホスト:ポート: soainternal.mycompany.com:7777

  12. 次へ」をクリックします。

    ESBタイプの選択」画面が表示されます。

  13. 「ランタイム」を選択し、「次へ」をクリックします。

    サマリー」画面が表示されます。

  14. インストール」をクリックします。

    インストールが実行され完了します。

  15. 終了」をクリックしてから、その選択を確認します。

3.14 Oracle Web Services Manager(10.1.3.1.0)CDからのOWSMインスタンスのAPPHOST1およびAPPHOST2へのインストール

次に示すOracleホームとOC4JインスタンスにOWSMインスタンスをインストールする必要があります。

APPHOST1のOracleホーム1: OC4J_WSM

APPHOST1のOracleホーム2: OC4J_GTWY

APPHOST2のOracleホーム1: OC4J_WSM

APPHOST2のOracleホーム2: OC4J_GTWY


注意:

各コンポーネントのインストールにはそれぞれのコンポーネントCD-ROM(たとえば、Oracle Web Services Manager CD-ROMやOracle Enterprise Service Bus CD-ROM)を使用します。各コンポーネントは、第3.6項「Application ServerインスタンスのAPPHOST1およびAPPHOST2へのインストール(ORA_HOME2)」で実行したように、J2EEサーバー・インストールとして同じOracleホームにインストールします。

  1. 使用しているプラットフォームに対応したOracle Application Serverのインストレーション・ガイドで説明されているとおり、システム、パッチ、カーネルの要件、およびその他の要件が満たされていることを確認します。このマニュアルは、ご使用のプラットフォームおよびリリースのOracle Application Serverドキュメント・ライブラリで参照できます。

  2. Oracle Web Services Manager(10.1.3.1.0)CDを挿入します。

  3. Oracle Universal Installerを起動します。

    UNIXでは、runInstallerコマンドを発行します。

    Windowsでは、setup.exeをダブルクリックします。

    Oracle Web Services Manager 10g(10.1.3.1.0)インストール画面が表示されます。

  4. J2EE ServerのOracle Application Serverインスタンスをインストールしたインストール・ディレクトリを指定します。

  5. アプリケーション・サーバーの詳細を次のように指定します。

    HTTPホスト:ポート: soainternal.mycompany.com:7777

    OC4Jインスタンス名: OC4J_WSMまたはOC4J_GTWY(この手順の最初に説明したとおり、該当するOracleホームのそれぞれのインスタンスに応じて)

    管理者のユーザー名: oc4jadmin

    管理者のパスワード: (インストール時に設定したパスワード)

  6. データベースの詳細を次のように指定します。

    データベース・タイプ: Oracle Database

    ドライバ・タイプ: Thin

    名前: ORCLSVC.mycompany.com

    データベース接続文字列: (SOAデータベース・リスナーのホスト名およびポート、host:port形式)INFRADBHOST1-V:1521^INFRADBHOST2-V:1521

    ユーザーID: ORAWSM

    パスワード: (Oracle Web Services Managerスキーマのパスワード)

  7. 次へ」をクリックします。

    サマリー」画面が表示されます。

  8. インストール」をクリックします。

    「インストール」→「Oracle Web Services Manager Configuration Assistant」→「インストールの終了」画面が表示されます。

  9. 終了」をクリックしてから、その選択を確認します。

3.15 OWSMクラスタの構成

  1. 次のOWSMコンソールにアクセスします(デフォルト・ユーザー名adminおよびデフォルト・パスワードoracleはセキュリティ上の理由から変更する必要があります)。

    http://soainternal.mycompany.com:7777/ccore

  2. 新規コンポーネントの追加」をクリックします。

  3. 次の値を使用して、クラスタ化されたゲートウェイを登録します。

    コンポーネント名: Gateway_Cluster

    コンポーネント・タイプ: ゲートウェイ

    コンテナ・タイプ: Oracle Web Services Manager

    コンポーネントURL: http://soainternal.mycompany.com:7777/gateway

    他のすべての値にはデフォルトを適用します。

  4. 単一の論理ゲートウェイをOWSMモニターに接続します。

    1. http://soainternal.mycompany.com:7777/ccoreにアクセスし、Oracle WSMコントロール・アプリケーションを起動します。

      強制ポイント」ページが表示されます。

    2. 構成対象のゲートウェイを選択し、その「編集」アイコンをクリックします。

    3. cfluent.monitor.rmi.hostプロパティをモニターのホスト名に設定します。たとえば、APPHOST1.mycompany.com(coremanはAPPHOST1で稼動し、APPHOST2で停止していると想定します)。

    4. cfluent.monitor.rmi.portプロパティをモニターのRMIポートに設定します。たとえば、3118(このポート番号は、ORACLE_HOME/owsm/bin/coresv.propertiesファイルのdataload.monitor.rmi.portの値)。

  5. 保存」をクリックします。

  6. 各OC4J_WSMインスタンスで次の手順を実行し、Oracle WSMコントロールをOracle WSMモニターに接続します。

    1. ORACLE_HOME/owsm/config/ccore/ui-config-installer.propertiesファイルを開きます。

    2. ui.om.server.rmiHostプロパティをモニターのホスト名に設定します。

    3. ui.om.server.rmiPortプロパティをモニターのRMIポートに設定します。

    4. ui-config-installer.propertiesファイルを保存して閉じます。

    5. 次のコマンドを使用して、アプリケーションを再デプロイします。

      (Windows)wsmadmin.bat deploy OC4J administrator_password_control

      (Linux)wsmadmin.sh deploy OC4J administrator_password_control

3.16 WEBHOST1およびWEBHOST2のOracleホームへのパッチの適用

10.1.3.5のOracle Universal Installerを使用して、WEBHOSTコンピュータ上のOracleホームにパッチを適用します。

3.17 APPHOST1およびAPPHOST2のORA-HOME1およびORA-HOME2へのパッチの適用

  1. APPHOST1およびAPPHOST2のすべてのコンポーネントを停止します。

  2. 第5.4項「BPELランタイム・コンソールでのメモリー不足エラーの解決」で説明しているように、MaxPermSizeパラメータの値を増やします。

  3. 10.1.3.5のOracle Universal Installerを使用して、APPHOST1およびAPPHOST2のORA-HOME1およびORA-HOME2にパッチを適用します。

3.18 APPHOST1およびAPPHOST2のOracle Web Services Managerアプリケーションのアンデプロイ

Application Server Controlコンソールを使用して、次に示すAPPHOST1およびAPPHOST2上のアプリケーションをアンデプロイします。

表3-2 アンデプロイするアプリケーション

アンデプロイするアプリケーション 対象のOC4Jインスタンス

ccore

両方のOC4J_GTWYインスタンス

coreman

両方のOC4J_GTWYインスタンス、一方のOC4J_WSMインスタンス

policymanager

両方のOC4J_GTWYインスタンス

gateway

両方のOC4J_WSMインスタンス


  1. インストール時に設定したパスワードで、Application Server Controlコンソールにログインします。

    「クラスタ・トポロジ」ページが表示されます。

  2. アプリケーション・サーバー・インスタンスの「メンバー」リストのリンク(APPHOST1またはAPPHOST2)をクリックします。

    インスタンスの「アプリケーション・サーバー」ページが表示され、「システム・コンポーネント」リストにOC4Jインスタンスが表示されます(たとえば、OC4J_WSM)。

  3. OC4Jインスタンスへのリンクをクリックします。

    「OC4Jインスタンス」ページが表示されます。

  4. 「アプリケーション」タブをクリックします。

    OC4Jインスタンスの「アプリケーション」ページが表示されます。「すべて開く」をクリックして、該当コンテナにデプロイされているアプリケーションを表示します。

  5. アプリケーションを選択して「アンデプロイ」をクリックします。

    「アプリケーションのアンデプロイ」ページが表示され、アンデプロイの対象として選択されたアプリケーションが表示されます。

  6. 「はい」を選択します。

3.19 APPHOST1およびAPPHOST2のOracle Enterprise Service Busリポジトリ・インスタンスのデプロイ

  1. 目的の構成に応じた値(Oracle Enterprise Service Busのスタンドアロンのインストール時に入力した値)を指定してORACLE_HOME/integration/esb/install/ant-tasks/esb_oc4j_install_props.xmlファイルを更新します。例3-1にファイルの内容を示します。

  2. ORACLE_HOME/integration/esb/binディレクトリにあるesbsetenv.shスクリプトを実行して環境を設定します。

  3. 次のコマンドを実行して、Oracle Enterprise Service Busリポジトリまたはランタイム・インスタンスをデプロイします。

    ant -f $ORACLE_HOME/integration/esb/install/ant-tasks/esboc4j.xml


    注意:

    antスクリプトでは、data-sources.xmlファイルでRAC構成が実行されません。antスクリプトの実行が終了したら、RACを構成するようにORACLE_HOME/j2ee/oc4j_esbdt/config/data-sources.xmlファイルを修正する必要があります。指定したパスでは、システムのOC4Jコンテナの名前でoc4j_esbdtを置換します。これは、antスクリプトを使用してESBリポジトリがデプロイされたディレクトリです。

    接続プールのESBPoolESBAQJMSPoolで、次の設定が含まれるように修正します。

    <connection-factory factory-class="oracle.jdbc.pool.OracleDataSource"
    url="jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(LOAD_BALANCE=on)(ADDRESS=(PROTOCOL=tcp)(HOST=infradbhost1-V.us.oracle.com) PORT=1521))(ADDRESS=(PROTOCOL=tcp)(HOST=infradbhost2-V)(PORT=1521))) (CONNECT_DATA=(SERVICE_NAME=ORCL.us.oracle.com)))"
    
    user="oraesb" password="->pwdforOraesb">
    

  4. 次のリポジトリ・インスタンス・コンソールにアクセスして、Oracle Enterprise Service Busリポジトリ・インスタンスのデプロイに成功したことを確認します。

    http://soainternal.mycompany.com:7777/esb

例3-1 esb_oc4j_install_props.xml

?xml version="1.0"?>
<!--  $Header: esb_oc4j_install_props.xml 28-apr-2007.02:07:30 apatel Exp $ --><!-- Copyright (c) 2007, Oracle.  All rights reserved.
   NAME     esb_oc4j_install_props.xml - Values to be used for deploying ESB on OC4J container   DESCRIPTION     esb_oc4j_install_props.xml is imported in esboc4j.xml build file to deploy
     ESB (either repository or runtime) on OC4J container. Change the values of
     the properties in this file per your environment and then run ant -f ORACLE
     _HOME/integration/esb/install/ant-tasks/esboc4j.xml.
     The values of the properties you enter here are the ones you enter
     on Oracle Universal Installer (OUI) while installing Enterprise
     Service Bus (ESB) on OracleAS midtier using Advanced option.
   NOTES     <other useful comments, qualifications, etc.>
   MODIFIED   (MM/DD/YY)
   apatel     03/05/07 - Creation
-->
<project name="ESB Installation Properties" default="">
<!--
        OC4J container in which you want to deploy ESB
-->
<property name="home_container_v" value="OC4J_ESBDT"/>
<!--
        ESB component (runtime or repository) that you want to deploy on OC4J.
        Possible values: 'design' (for repository)
                         'runtime' (for runtime)
-->
<property name="esb_type_v" value="design"/>
<!--
        OC4J host hosting the repository
-->
<property name="ohs.host" value="soa.acme.com"/>
<!--
        Port of OC4J host hosting the repository
-->
<property name="ohs.port" value="7777"/>
<!--
        Username for connecting to oraesb schema
-->
<property name="db.user" value="oraesb"/>
<!--
        Password for connecting to oraesb schema
-->
<property name="db.password" value="oraesb"/>
<!--
        Database host where oraesb schema is installed
-->
<property name="db_host_v" value="stajo05-vip.us.oracle.com"/>
<!--
        Port of database host where oraesb schema is installed
-->
<property name="db_port_v" value="1521"/>
<!--
        Service name for database where oraesb schema is installed
-->
<property name="db_sid_v" value="ORCLSVC.mycompany.com"/>
<!--
        Value of AS Instance Name to which the OC4J instance
        belongs.  The OC4J instance is the one specified in
        property 'home_container_v' in this file.
--><property name="ias_name_v" value="prodsoa1.stbee19.us.oracle.com"/>
<!--
        Value for 'AS Administrator Password'
-->
<property name="admin.server.password" value="welcome1"/>
<!--
        Database url for connecting to oraesb schema
        Sample value: jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(LOAD_BALANCE=on)(ADDRESS=(PROTOCOL=tcp)(HOST=mypc.acme.com)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=orcl)))
-->
<property name="db.url" value="jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(LOAD_BALANCE=on)(ADDRESS=(PROTOCOL=tcp)(HOST=stajo05-vip.us.oracle.com)(PORT=1521))(ADDRESS=(PROTOCOL=tcp)(HOST=stajo06-vip.us.oracle.com)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=ORCLSVC.mycompany.com)))"/>
<!--
        If your computer is located behind a firewall
        you may need to route outgoing HTTP connections
        through a proxy server.
        Sample value: www-proxy.acme.com
-->
<property name="http.proxy.host" value="proxy.acme.com"/>
<!--
        HTTP proxy port
-->
<property name="http.proxy.port" value="80"/>
<!--
        Addresses for which proxy should be bypassed
        Sample value: "*acmecorp.com|localhost|mypc.us.oracle.com|*acme.com"
-->
<property name="http.non.proxy.hosts" value="*acmecorp.com|localhost|mypc.acme.com|*acme.com"/>
<!--
        Value of AS Instance Name.
        You can also get this value from $ORACLE_HOME/config/ias.properties property 'IASname'
        Sample value: soahome.mypc.acme.com
-->
<property name="ias.name" value="prodsoa1.stbee19.us.oracle.com"/>
<!--
        Value for OPMN request port.
        You can get this value from the following snippet in
        $ORACLE_HOME/opmn/conf/opmn.xml
        <notification-server>
        <port local="6101" remote="6201" request="6004"/>
        <ssl enabled="true" wallet-file="$ORACLE_HOME\opmn\conf\ssl.wlt\default"/>
        </notification-server>
-->
<property name="opmn.requestport" value="6003"/>
<!--
        Sample value: mypc.acme.com
-->
<property name="ias.virtual_host" value="stbee19.us.oracle.com"/>
</project>

3.20 OC4J_ESBDTインスタンスのサービス・フェイルオーバーの構成

OC4J_ESBDTインスタンスのフェイルオーバー・スキームでは、常に1つのインスタンスのみが起動されます。唯一のアクティブ・インスタンスに障害が発生した場合は、OPMNによってもう一方のインスタンスが起動されます。このフェイルオーバーを構成するには、両方のOC4J_ESBDTインスタンスで次の手順を実行します。

  1. ORACLE_HOME\opmn\conf\opmn.xmlファイルを開きます。

  2. OC4J_ESBDTプロセスを、次に太字で示すように変更します。

    <process-type id="OC4J_ESBDT" module-id="OC4J" service-failover="1" status="enabled">
    
  3. numprocsエントリを削除します。

    <process-set id="default_group" numprocs="1"/>
    
  4. ORACLE_HOME\opmn\binにある次のコマンドを発行して、インスタンスを再起動します。

    opmnctl reload

    opmnctl restartproc process-type=OC4J_ESBDT

3.21 APPHOST1およびAPPHOST2のOracle Enterprise Service Busランタイム・インスタンスのクラスタの構成


注意:

Oracle Enterprise Service Busインスタンスのクラスタは、ランタイム・サーバー・タイプのインスタンスのみで構成する必要があります。リポジトリ・サーバー・タイプのインスタンスは、クラスタのメンバーにできません。

Oracle Enterprise Service Busランタイム・インストールで次の手順を実行します。

  1. ファイルが存在する場合、ORACLE_HOME/j2ee/OC4J_SOA/applications/esb-rt/META-INF/orion-application.xmlのクラスタリング・プロパティを修正して、cluster_nameプロパティ(たとえば、cluster_name=esbcluster)とproperty_nameプロパティ(たとえば、<property name="primary_oc4j" value="false" />)のコメントを解除します。

  2. コメントを解除したクラスタリング・プロパティをORACLE_HOME/j2ee/OC4J_SOA/applications/esb-rt/META-INF/orion-application.xmlからORACLE_HOME/j2ee/OC4J_SOA/application-deployments/esb-rt/orion-application.xmlにコピーします。ORACLE_HOME/j2ee/OC4J_SOA/applications/esb-rt/META-INF/orion-application.xmlファイルが存在しない場合、application-deployments/esb-rt/orion-application.xmlファイルにおいて手順1で説明したプロパティのコメントを解除します。

  3. sqlplusで次の手順を実行することでトピックが作成されることを確認します。

    1. connect oraesb user / oraesb password;

    2. select object_name from user_objects where object_name like 'AQ%';

      返される行がない場合、キューまたはトピック(あるいはその両方)がないので、手順cを実行する必要があります。

    3. ORACLE_HOME/integration/esb/sql/oracle/create_esb_topics.sqlを実行します。

  4. 次のコマンドを発行して、サーバーを再起動します。

    opmnctl stopall

    opmnctl startall

3.22 JNDIのトピックおよびトピック・コネクション・ファクトリの構成

Oracle Enterprise Manager 10gを使用して、次の手順を実行し、ランタイム・インスタンスと両方のESBリポジトリ・インスタンスにJNDIを構成します。この項で作成されるJNDI名は、第3.23項「Oracle Enterprise Service Busメタデータの更新」でメタデータを更新するために使用されます。

  1. 管理」タブで、「すべて開く」→「サービス」→「エンタープライズ・メッセージ・サービス」→「データベース永続性」をクリックします。

    データベース永続性」構成ページが表示されます。

  2. デプロイ」をクリックします。

  3. OC4J Adminインスタンスの「管理」タブにナビゲートします。

  4. すべて開く」をクリックします。

  5. 管理タスク」→「サービス」→「エンタープライズ・メッセージ・サービス」→「データベース永続性」にナビゲートします。

  6. デプロイ」をクリックします。

    データベース永続性プロバイダのデプロイ」画面が表示されます。

  7. 次のエントリを作成および選択します。

    リソース・アダプタ・モジュール名: OracleOJMS

    このコネクタによって使用される新しいリソース・プロバイダを追加します。」を選択します。

    リソース・プロバイダ名: esbRP

    データソースのJNDIロケーション: jdbc/esbaqdatasource

  8. OK」をクリックします。

    確認ページが表示されます。

  9. 再起動」をクリックし、再起動の確認を求められたら、その選択を確認します。エラーが発生した場合は、opmnctl shutdownおよびopmnctl startallコマンドを使用して、デフォルト・アプリケーションを再起動します。

  10. OracleOJMS RAの「リソース・アダプタ」ページの「コネクション・ファクトリ」タブで、「作成」をクリックします。

    コネクション・ファクトリの作成: インタフェースの選択」画面が表示されます。

  11. コネクション・ファクトリ・インタフェース」ドロップダウン・リストから「javax.jms.XATopicConnectionFactory」を選択し、「続行」をクリックします。

  12. コネクション・ファクトリの作成」画面が表示されます。

  13. JNDIロケーション」フィールドに「OracleOJMS/XATCF」と入力します。

  14. 終了」をクリックします。

    確認メッセージが表示されます。

  15. 次の値を使用して手順10から12までを繰り返し、もう一方のコネクション・ファクトリを作成します。

    コネクション・ファクトリ・インタフェース」ドロップダウン・リストから「javax.jms.TopicConnectionFactory」を選択します。

    JNDIロケーション」フィールドに「OracleOJMS/TCF」と入力し、「終了」をクリックします。

  16. 管理対象オブジェクト」タブをクリックし、「作成」をクリックします。

    管理対象オブジェクトの作成」画面が表示されます。

  17. オブジェクト・クラス」ドロップダウン・リストから「oracle.j2ee.ra.jms.generic.AdminObjectTopicImpl」を選択し、「続行」をクリックします。

  18. JNDIロケーション」フィールドに「ESBTopics」と入力します。「終了」をクリックします。「リソース・プロバイダ名」フィールドに「esbRP」と入力します。

  19. 終了」をクリックします。

    確認メッセージが表示されます。

3.23 Oracle Enterprise Service Busメタデータの更新

  1. ORACLE_HOME/integration/esb/binディレクトリにナビゲートし、次のコマンドを発行します。

    Windows: esbsetenv.bat

    UNIX: esbsetenv.sh

  2. 次の例に示すkey=valueのペアと第3.22項「JNDIのトピックおよびトピック・コネクション・ファクトリの構成」で使用したJNDI名を指定して、ORACLE_HOMEディレクトリにesbparam.propertiesというファイルを作成します。

    例3-2 esbparam.propertiesファイル

    DT_OC4J_HTTP_PORT=7777
    DT_OC4J_HOST=soainternal.mycompany.com
    PROP_NAME_DEFERRED_TOPIC_JNDI=ESBTopics/Topics/ESB_JAVA_DEFERRED
    PROP_NAME_DEFERRED_TCF_JNDI=OracleOJMS/TCF
    PROP_NAME_DEFERRED_XATCF_JNDI=OracleOJMS/XATCF
    PROP_NAME_CONTROL_TOPIC_JNDI=ESBTopics/Topics/ESB_CONTROL
    PROP_NAME_CONTROL_TCF_JNDI=OracleOJMS/XATCF
    PROP_NAME_ERROR_TOPIC_JNDI=ESBTopics/Topics/ESB_ERROR
    PROP_NAME_ERROR_TCF_JNDI=OracleOJMS/TCF
    PROP_NAME_ERROR_XATCF_JNDI=OracleOJMS/XATCF
    PROP_NAME_ERROR_RETRY_JNDI=ESBTopics/Topics/ESB_ERROR_RETRY
    PROP_NAME_ERROR_RETRY_TCF_JNDI=OracleOJMS/XATCF
    PROP_NAME_MONITOR_TOPIC_JNDI=ESBTopics/Topics/ESB_MONITOR
    PROP_NAME_MONITOR_TCF_JNDI=OracleOJMS/TCF
    PROP_NAME_INITIAL_CONTEXT_FACTORY=com.evermind.server.rmi.RMIInitialContextFactory
    ACT_ID_RANGE=400
    
  3. 次のコマンドを発行して、esb.parameter表に移入します。

    ant import-params -Dparamfile=esbparam.properties

    例3-3 importコマンド

    ant import-params -Dparamfile=$ORACLE_HOME/esbparam.properties -DDB_
    URL=jdbc:oracle:thin:@//localhost:1521/ORCLSVC.mycompany.com -DDB_USER=oraesb
    -DDB_PASSWORD=oraesb
    

    例3-4 exportコマンド

    ant export-params -DDB_URL=jdbc:oracle:thin:@//localhost:1521/ORCLSVC.mycompany.com -DDB_
    USER=oraesb -DDB_PASSWORD=oraesb
    
  4. ESBコンソール・システムの画面(http://soainternal.mycompany.com:7777/esbhttp://APPHOST1:7777/esbhttp://APPHOST2:7777/esbでアクセス可能)で、各インストールに対して、非同期トピックのトピックおよびトピック・コネクション・ファクトリを次の値で更新します。

    トピック: ESBTopics/Topics/ESB_JAVA_DEFERRED

    トピック・コネクション・ファクトリ: OracleOJMS/XATCF

3.24 リポジトリにデータベースを使用するスライド・リポジトリの構成

システム上のESBインストールごとに、次の手順を実行します。

  1. ORACLE_HOME/integration/esb/configディレクトリにナビゲートします。

  2. Domain_DB.xmlファイルのコピーを作成し、Domain.xmlと命名します。

  3. 次のコマンドを使用して、サーバーを再起動します。

    opmnctl stopall

    opmnctl startall

3.25 アプリケーション層に対するファイアウォールの構成

アプリケーション層にすべてのコンポーネントをインストールしたら、ファイアウォール上で開いておく必要があるポート番号を指定できます。これは、インストールしたアプリケーション・サーバー・インスタンスの数とコンポーネントのタイプによって異なります。通常、ファイアウォールを構成する手順は次のようになります。

  1. インストールした各インスタンスでopmn.xmlファイルを確認し、コンポーネント・タイプと指定ポート範囲を特定します。ポートの割当てと範囲の例は、例3-5を参照してください。

  2. netstatコマンドを使用して、使用中のポートを調べます。

    netstat -an

  3. 使用中のポートのみが開かれるようにファイアウォールを構成します。

例3-5 opmn.xmlファイルのOracle Application Serverコンポーネントとポート範囲

<?xml version = '1.0' encoding = 'UTF-8'?>
<opmn xmlns="http://www.mycompany.com/ias-instance">
   <log path="$ORACLE_HOME/opmn/logs/opmn.log" comp="internal;ons;pm" rotation-size="1500000"/>
   <debug path="$ORACLE_HOME/opmn/logs/opmn.dbg" comp="" rotation-size="1500000"/>
   <notification-server interface="ipv4">
      <port local="6104" remote="6204" request="6007"/>
      <ssl enabled="true" wallet-file="$ORACLE_HOME/opmn/conf/ssl.wlt/default"/>
   </notification-server>
   <process-manager>
      <process-modules>
...
      </process-modules>
      <ias-instance id="ohcoreidoid.stana17.mycompany.com"
 name="ohcoreidoid.stana17.mycompany.com">
...            <process-type id="IASPT" module-id="IASPT"  working-dir="/scratch/aime6/coreidoid/oh/iaspt/bin">
               <port id="ajp" range="7501-7600"/>
               <process-set id="IASPT" numprocs="1"/>
            </process-type>         </ias-component>         <ias-component id="ASG" status="enabled" id-matching="true">
...
               </module-data>
               <start timeout="600" retry="2"/>
               <stop timeout="120"/>
               <restart timeout="720" retry="2"/>
               <port id="default-web-site" range="8895" protocol="ajp"/>
               <port id="rmi" range="12401-12500"/>
               <port id="rmis" range="12701-12800"/>
               <port id="jms" range="12601-12700"/>
               <process-set id="default_group" numprocs="1"/>
            </process-type>
            <process-type id="admin" module-id="OC4J" status="enabled">
               <module-data>
...
               <port id="default-web-site" range="12501-12600" protocol="ajp"/>
               <port id="rmi" range="12401-12500"/>
               <port id="rmis" range="12701-12800"/>
               <port id="jms" range="12601-12700"/>
               <process-set id="default_group" numprocs="1"/>
            </process-type>
         </ias-component>
         <ias-component id="soa_group" status="enabled">
            <process-type id="oc4j_soa" module-id="OC4J" status="enabled">
...
               <start timeout="600" retry="2"/>
               <stop timeout="120"/>
               <restart timeout="720" retry="2"/>
               <port id="default-web-site" range="12501-12600" protocol="ajp"/>
               <port id="rmi" range="12401-12500"/>
               <port id="rmis" range="12701-12800"/>
               <port id="jms" range="12601-12700"/>
               <process-set id="default_group" numprocs="1"/>
            </process-type>
         </ias-component>
      </ias-instance>
   </process-manager>

</opmn>

アプリケーションによって使用されるAJPポートの範囲は、12501から12600までです。Webサーバーとアプリケーション間のファイアウォールで、OC4Jアプリケーションによって使用されるすべてのAJPポートが開かれていることを確認する必要があります。ポートが開かれていない場合、Web層のアプリケーションにアクセスが試行されると(つまり、URL web host:port/applicationがリクエストされると)、次のエラーが発生します。

mod_oc4j: request to OC4J apphost1.mycompany.com:12501 failed: Connect failed (errno=110)

このエラーが発生すると、ohs/logsディレクトリのログ・ファイルにエントリが作成されます。

3.26 J2EEアプリケーションのデプロイ

この項の手順に従って、アプリケーションをデプロイします。この項の手順は、クラスタの構成前または構成後に実行できます。

Oracle Enterprise Manager 10g Application Server Controlコンソールを使用したアプリケーションのデプロイ

  1. Application Server Controlコンソールにアクセスします。

    http://soainternal.mycompany.com/em

    ログイン」ページが表示されます。

  2. インストール時に指定したパスワードを入力し、「ログイン」をクリックします。

    OC4J: ホーム」ページが表示されます。

  3. クラスタ・トポロジ」リンクをクリックします。

    クラスタ・トポロジ」ページが表示されます。

  4. メンバー」リストで、アプリケーションをデプロイするOC4Jインスタンスを指定します。「ステータス」列に、インスタンスが実行中であることを示す緑色の上向きの矢印が表示されていることを確認します。


    注意:

    アプリケーションは、同じグループに属す複数のインスタンスにデプロイできます。グループ内のインスタンスは同じ名前とパスワードを持ちます。グループの作成手順の詳細は、『Oracle Application Server管理者ガイド』の「Application Server Controlによるグループの管理」の項を参照してください。グループがすでに存在する場合は、「グループ」セクションをスクロール・ダウンして、グループ内の各インスタンスを確認できます。グループにデプロイする場合は、グループ名をクリックし、手順8に進みます。

  5. 対象のOC4Jインスタンスが起動されていない場合は、その行の先頭にある「選択」チェック・ボックスを選択し、「メンバー」リストの前にある「開始」ボタンをクリックしてインスタンスを起動します。

    処理中: 起動中」画面が、次のメッセージとともに表示されます。

    The selected topology members are being started.

    そのトポロジ・メンバーが起動されたことを示すメッセージが、「クラスタ・トポロジ」画面に表示されます。

  6. アプリケーションをデプロイするOC4Jインスタンスのリンクをクリックします。

    そのインスタンスの「OC4J」画面が表示されます。

  7. アプリケーション」リンクをクリックします。

    インスタンスの「アプリケーション」ページが表示されます。

  8. デプロイ」をクリックします。

    デプロイ: アーカイブの選択」画面が表示されます。

  9. アーカイブの場所を指定し、「次へ」をクリックします。

    デプロイ: アプリケーション属性」画面が表示されます。

  10. アプリケーション名を指定し、「次へ」をクリックします。

    デプロイ: デプロイ設定」画面が表示されます。

  11. (オプション)デプロイ・タスクを実行するか、デプロイ計画を編集します。あるいは、現行の設定をデプロイ計画として保存します。

  12. デプロイ」をクリックします。

    処理中: デプロイ」画面が、進行状況のメッセージとともに表示されます。

コマンドラインからのアプリケーションのデプロイ

  1. APPHOST1_ORACLE_HOME\jdk\bin\javaにある次のコマンドを発行します(各パラメータは、読みやすさを考慮して複数行に分割してあります)。

    java -jar admin_client.jar uri admin ID admin password

    -deploy -file full path -deploymentName app name

    [-bindAllWebApps [Web site name]]

    [-targetPath full path] [-parent app name] [-deploymentDirectory full path]

    [-iiopClientJar full path]


    注意:

    理想的には、-bindAllWebAppsサブスイッチを指定して、EAR内のすべてのWebモジュールを、それらへのアクセス時に経由されるWebサイトにバインドします。Webサイトを指定しないと、モジュールはデフォルトのWebサイトにバインドされます。

    EARファイルは、デフォルトでORACLE_HOME/j2ee/instance name/applicationsディレクトリにデプロイされます。デプロイ済のEARファイルも、このディレクトリにコピーされます。以降、デプロイのたびに、このEARファイルは上書きされます。

3.27 静的検出の構成によるマルチキャスト・トラフィックの排除(オプション)

マルチキャスト・トラフィックが問題になる場合は、インストール後にORACLE_HOME\opmn\conf\opmn.xmlファイルを変更し、Web層およびアプリケーション層のクラスタに静的検出を構成できます。

  1. マルチキャストが指定されたエントリを特定します。

    <topology>
      <discover list="*225.0.0.1:8001"/>
    ...
    </topology>
    
  2. このエントリを、静的検出を指定するノードのリストで置換します。

    <topology>
      <nodes list="apphost1:6200,apphost2:6200,webhost1:6200,webhost2:6200"/>
    </topology>
    
  3. ORACLE_HOME\opmn\binにある次のコマンドを発行します。

    opmnctl reload

  4. ORACLE_HOME\opmn\binにある次のコマンドを発行し、すべてのノードがクラスタ内にあることを確認します。

    opmnctl @cluster status


    注意:

    APPHOST1、APPHOST2、WEBHOST1およびWEBHOST2が異なるサブネットにある場合は、ゲートウェイのエントリも必要です。詳細は、第3.8項「WEBHOST1、2およびAPPHOST1、2のクラスタ・ゲートウェイの構成(オプション)」を参照してください。

3.28 グローバル・トランザクション用のOracle SOA Suiteの構成

この項では、Oracle RAC Databaseのデプロイメントなど、操作中にグローバル・トランザクション(XA)の一貫性を保持するための、Oracle SOA Suiteコンポーネントの必須構成について説明します。RAC環境と非RAC環境のどちらでも必要なXA構成はほとんど同じですが、データソースおよびデータベースの構成に関連して、ごくわずかな違いがあります。

3.28.1 要件

Oracle SOA Suiteは、Oracle SOA Suite、Oracle Application ServerおよびJDBCの必須パッチの特定セットを使用して、XAで動作保証されています。Oracle RAC Database 10g上のXAデプロイメントの場合、Oracle SOA Suiteは、Oracle RAC Databaseのバージョン10.2.0.2.xおよび11.1.0.6.x(およびOracle Clusterwareでサポートされている構成)に対してサポートされています。

必須パッチのリストは、My Oracle Support(以前の名前はMetaLink)にあります。ここで、OracleMetaLink Note 738108.1「Required Patching for XA Deployments of SOA Suite Using RAC Databases」を取得してください。

My Oracle Supportは、次の場所にあります。

http://support.oracle.com

3.28.2 BPEL、ESBおよびアダプタ・データベース接続

BPEL Process ManagerやESBなどのアダプタは、OC4Jコンテナによって管理されるデータソース接続プールを使用して、それぞれのデータベース・スキーマに接続します。Oracle Web Services Managerは、第3.28.3項「OWSMデータベース接続」で説明する独自の接続プーリング・メカニズムを使用します。

XA構成は、次のコンポーネント接続プールに適用されます。

  • BPEL Process Manager(orabpel)

  • ESBランタイム(esb-rt

  • ESBデザインタイム(esb-dt

  • 次のものに対するアダプタ

    • AQ

    • AQ-JMSでのJMSアダプタ

    • データベース

    • E-Business Suite

接続プールは、ORACLE_HOME/j2ee/<containername>/config/data-sources.xmlファイルで定義されます。BPEL Process ManagerおよびESBconnectionプールの名前は、BPELPM_CONNECTION_POOLESBPoolおよびESBAQJMSPoolです。アダプタ接続プールの名前は、作成時に付けられます。

OC4Jコンテナごとの接続プールそれぞれについて、次のXA構成が必要です。

3.28.2.1 XAコネクション・ファクトリ

分散トランザクションのサポートをデータソース接続に提供するため、接続プールは、XAコネクション・ファクトリ・クラスoracle.jdbc.xa.client.OracleXADataSourceを使用して構成する必要があります。次に例を示します。

<connection-factory factory-class="oracle.jdbc.xa.client.OracleXADataSource"

3.28.2.2 データベース接続文字列

RAC上のデプロイメントの場合、データソースのデータベース接続文字列は、RACのTNSNAMES接続記述とともに、SERVICE_NAME(たとえば、ORCLSVC)を使用するように構成する必要があります。

接続文字列にSERVICE_NAMEを使用することが重要です。これはSIDと同じではありません。RAC構成の詳細は、第2.3項「Oracle RAC Database」を参照してください。

url="jdbc:oracle:thin:@(DESCRIPTION=
(ADDRESS_LIST=(LOAD_BALANCE=on)
(ADDRESS=(PROTOCOL=tcp)(HOST=infradbhost1-V)(PORT=1521))
(ADDRESS=(PROTOCOL=tcp)(HOST=infradbhost2-V)(PORT=1521)))
(CONNECT_DATA=(SERVICE_NAME=ORCLSVC)))"

3.28.2.3 XAリカバリ

Oracle SOA Suiteは、トランザクション・コーディネータとしてOracle Application Server内のOC4Jトランザクション・マネージャを使用します。複数のデータソースにまたがるトランザクションで予期しないエラーが発生した場合、OC4Jトランザクション・マネージャが、完了しなかったトランザクションを正しくリカバリしようとします。OC4Jトランザクション・マネージャは、ファイルベースまたはデータベースの独自のトランザクション・ログを使用して、トランザクション情報を格納します。詳細は、第3.28.4項「OC4Jトランザクション・マネージャのロギング」を参照してください。

データベース・リソースに対するリカバリ・プロセスの一部として、リカバリ・マネージャは、データベース・トランザクションの状態情報にアクセスし、適切なコマンド(リソース・トランザクションのコミットやロールバックなど)を発行するための正しい権限が付与された、データベース・ユーザーの資格証明を要求します。

この機能を実行するデータベース・ユーザーを設定する手順は、次のとおりです。

  1. 次のコマンドを使用して、データベース・ユーザー(たとえば、xauser)を作成し、CONNECT権限およびRESOURCE権限を付与します。

    SQL> CREATE USER xauser IDENTIFIED BY welcome1;
    …
    SQL> GRANT CONNECT, RESOURCE TO xauser;
    …
    
  2. 次のコマンドを使用して、DBA_PENDING_TRANSACTIONSに対する選択権限およびSYS.DBMS_SYSTEMパッケージに対する実行権限を付与します。

    SQL> GRANT SELECT ON DBA_PENDING_TRANSACTIONS TO xauser;
    …
    SQL> GRANT EXECUTE ON SYS.DBMS_SYSTEM TO xauser;
    
  3. 接続プール定義のconnectionfactory要素内に<xa-recovery-config>要素を追加して、リカバリ・マネージャのデータベース・ユーザー名とパスワードを指定します。

    次に例を示します。

    <connection-factory …>
       <xa-recovery-config>
          <password-credential>
             <username>xauser</username>
             <password>welcome1</password>
          </password-credential>
       </xa-recovery-config>
    …
    </connection-factory>
    
  4. リカバリ・マネージャでパスワードの不明瞭化を使用するには、データベース・ユーザーの資格証明と一致するユーザー名とパスワードを持つOC4J JAAS(Java Authentication and Authorization Service)ユーザーを作成します。

    次の例では、ユーザーは、$ORACLE_HOME/j2ee/<container>/config/system-jazn-data.xmlファイルに格納されているユーザー名および暗号化されたパスワードを使用して、jazn.comレルムの一部として作成されます。

    $OH/j2ee/oc4j_soa> java -jar ../home/jazn.jar -shell
    AbstractLoginModule username: oc4jadmin
    AbstractLoginModule password:
    JAZN:> adduser jazn.com xauser welcome1
    

    jazn.jarユーティリティは、$ORACLE_HOME/j2ee/homeディレクトリ内にありますが、データソースが定義されているコンテナ・ディレクトリ(たとえば、$ORACLE_HOME/j2ee/oc4j_soa)から実行する必要があります。

  5. ユーザーが作成されたら、パスワードのインダイレクションの表記法でデータソースのパスワード要素を更新します。これで、OC4Jは、暗号化されたパスワードを実行時に参照して利用するようになります。

    次に例を示します。

    <connection-factory …>
       <xa-recovery-config>
          <password-credential>
             <username>xauser</username>
             <password>->xauser</password>
          </password-credential>
       </xa-recovery-config>
    …
    </connection-factory>
    
  6. 新しい設定を有効にするため、コンテナを再起動します。次に、コンテナとdata-sources.xmlファイルごとに、これらの手順を繰り返します。パスワードの不明瞭化の詳細は、『OracleAS JAAS Provider Admintoolリファレンス』を参照してください。

OC4Jトランザクション・マネージャの構成の詳細は、『Oracle Containers for J2EEサービス・ガイド』を参照してください。

3.28.2.4 アダプタ・データソース

一部のアダプタは、ユーザー定義データソース接続を使用します。それらの接続は、同じXAリカバリと接続プール設定で構成されている必要があります。それらのアダプタは、次のとおりです。

  1. AQ

  2. AQ-JMSでのJMSアダプタ

  3. データベース

  4. E-Business Suite

アダプタを使用するBPEL Process ManagerまたはESBプロジェクト・デプロイメントをサポートするために、これらのアダプタ・エンドポイントおよび対応するデータソースが作成および構成されます。そのため、これらの手順は、そのようなデプロイメントでのみ必要になります。

data-sources.xmlファイルでこれらのアダプタのデータソースを構成することをお薦めします。または、データソースをアダプタ構成ファイル内で直接構成することもできます。データソースは、$ORACLE_HOME/j2ee/<containername>/application-deployments/default/<adapter>/oc4j-ra.xmlにあるアダプタ構成ファイル内で直接構成することもできます。data-sources.xmlファイル内でデータソースを構成すると、OC4Jで使用可能なデータソース管理のフル実装を使用できます。

Oracle Application Server Adapters for Files、FTP、DatabasesおよびEnterprise Messagingユーザーズ・ガイド』には、アダプタがそのデータベース接続情報を導出する状況を示した有用な図が記載されています。

カスタム・アプリケーション・データとAQメッセージング・トピックには、別々のスキーマとデータソースを使用することをお薦めします。BPEL Process ManagerまたはESBスキーマでカスタム・アプリケーション・データを格納するか、またはカスタムAQトピックを作成すると、パフォーマンスの問題さらにはデッドロックの問題が発生する可能性があります。

3.28.2.5 データベース・アダプタおよびAQアダプタの注意事項

data-sources.xmlファイル内にデータソースを構成したら、データベース・アダプタまたはAQアダプタのoc4j-ra.xmlファイルを編集し、xADataSourceNameプロパティのコネクタ・ファクトリ構成プロパティをデータソースのJNDI名に設定します。さらに、非XA dataSourceNameプロパティに値が設定されていないことを確認します。

データベース・アダプタのoc4j-ra.xmlファイルの例を次に示します。

<connector-factory location="eis/DB/BPELSamples" connector-name="Database Adapter">
   <config-property name="xADataSourceName" value="jdbc/BPELSamplesDataSource"/>
   <config-propertyname="dataSourceName" value=""/>
…
</connector-factory>

3.28.2.6 JMSアダプタおよびAQ-JMSアダプタの注意事項

グローバル・トランザクションに関与するJMSアダプタでは、oc4j-ra.xmlファイル定義内でTransactedプロパティの値を「false」に設定する必要があります。これにより、このプロパティが「true」に設定されているときのデフォルトの動作(JMS操作当たり1つのトランザクション・セッションのみを許可)が変更されます。同じコネクタ・ファクトリ定義で、プロパティ値がXAQueueConnectionFactoriesXATopicConnectionFactoriesのいずれかになっているXA connectionFactoryLocation構成プロパティを指定する必要があります。

次に例を示します。

<connector-factory location="eis/jms/myQueue" …/>
…
<config-property name="connectionFactoryLocation" value="java:comp/resource/ojmsdemo/XAQueueConnectionFactories/myQCF"/>
<config-property name="isTransacted" value="false"/>
…
</connector-factory>

connectionFactoryLocationプロパティのojmsdemoは、$ORACLE_HOME/j2ee/<container-name>/config/application.xmlでJMSリソースに対して定義されているリソース・プロバイダ名と一致している必要があることに注意してください。

OJMSおよびOC4J JMSアダプタ構成の詳細は、『Oracle Application Server Adapters for Files、FTP、DatabasesおよびEnterprise Messagingユーザーズ・ガイド』の、OJMSの構成に関する項またはOC4J JMSの構成に関する項を参照してください。このガイドは、Oracle E-Business Integration Documentation内のOracle Application Server Adaptersシリーズにあります。

さらに、XAトランザクション内でAQ-JMS(別名OJMS)に対して動作するJMSアダプタには、次のように構成することをお薦めします。

  1. 同じスキーマへのインバウンドおよびアウトバウンドのメッセージング用に、oc4j-ra.xml内に別々のコネクタ・ファクトリを構成します。

    これには、$ORACLE_HOME/j2ee/<containername>/config/application.xml内に2つの別々のリソース・プロバイダ(それぞれが固有のデータソースを指すもの)を作成する必要があります。

    詳細は、Oracle Application Serverのリリース・ノートの、AQ-JMS(OJMS)に対するXAシナリオでのJMSアダプタに関する項を参照してください。

    この要件はXA構成でのみ必要です。

  2. AQ-JMSのデータソースの構成では、txlevelプロパティを「global」に、manage-local-transactionsプロパティを「false」に設定する必要があります。

    明示的に設定されていない場合、tx-levelプロパティはデフォルトで「global」に設定されますが、manage-local-transactionsプロパティはデフォルトで「true」に設定されることに注意してください。

    <managed-data-source name="AQSAMPLE_DS1"
       connection-pool-name="AQSAMPLE_POOL1"
       jndi-name="jdbc/aqSample1"
       tx-level="global"
       manage-local-transactions="false"
       login-timeout="0"/>
    
    
    
    

    manage-local-transactionsのこの設定(たとえば、永続サブスクライバの作成)では、グローバル・トランザクションと競合することなく、AQ-JMSプロバイダは、非トランザクションDDL文を発行(永続サブスクライバを作成)できます。

    これらのプロパティの詳細は、『Oracle Containers for J2EEサービス・ガイド』の、管理対象データソース設定に関する項を参照してください。

  3. cacheConnectionsという新しいプロパティを「false」に設定して、アウトバウンドJMSアダプタのBPELパートナ・リンクまたはESBエンドポイントを構成します。

3.28.2.7 Fast Connection Failover

Fast Connection Failover(FCF)は、暗黙的接続キャッシュ(ICC)によって提供される、よく知られたRAC固有のクライアント機能であり、Oracle 10g JDBCドライバの機能です。

Fast Connection Failoverは、10g XA JDBCドライバのJDBC ICCではサポートされていません。FCFは非XA 10g JDBCドライバでのみ動作するため、FCFの構成は設定に含まれません。

3.28.3 OWSMデータベース接続

この項では、OWSMが独自のデータベース接続プーリング・メカニズムを使用できるようにする方法について説明します。このメカニズムは、BPEL Process ManagerおよびESBに対するOC4J管理対象データソースとは別個のものです。RACデータベースを使用するために必要な構成は、適切なTNSNAMESディスクリプタを使用してデータベース接続文字列を変更することのみです。

以降の手順では、OWSMがOracle Universal Installerを使用してすでにインストールされていることを想定しています。

  1. $ORACLE_HOME/owsm/bin/coresv.propertiesファイルを編集し、RACデータベース接続文字列を使用するようにdataload.messagelog.db.urlプロパティを更新します。

    次に例を示します。

    jdbc:oracle:thin:@(DESCRIPTION=
    (ADDRESS_LIST=(LOAD_BALANCE=on)
    (ADDRESS=(PROTOCOL=tcp)(HOST=infradbhost1-V)(PORT=1521))
    (ADDRESS=(PROTOCOL=tcp)(HOST=infradbhost2-V)(PORT=1521)))
    (CONNECT_DATA=(SERVICE_NAME=ORCLSVC)))
    
  2. ORACLE_HOME\owsm\bin\wsmadminディレクトリでOWSMのwsmadminコマンドライン・ユーティリティを使用して、OWSMモジュールをすべて更新および再デプロイします。

    次に例を示します。

    > wsmadmin copyDBConfig
    …
    > wsmadmin deploy all
    
    
  3. Oracle Application Serverコンテナを再起動し、OWSMにログインします。

    「ポリシー管理」に移動し、cfluent.messagelog.db.urlコンポーネント・プロパティを同じデータベース接続文字列で更新します。

wsmadminコマンドの詳細は、『Oracle Web Services Managerデプロイメント・ガイド』を参照してください。

3.28.4 OC4Jトランザクション・マネージャのロギング

OC4Jトランザクション・マネージャでは、トランザクションの状態に関する情報を保持するためにロギングが必要です。$ORACLE_HOME/j2ee/<containername>/config/transaction-manager.xmlファイルを使用して、データベースまたはファイルベースの永続性にロギング・タイプを構成できます。

データベース永続性のトランザクション・ロギングを使用するために、BPEL Process ManagerまたはESBとともにインストールされているOC4Jコンテナごとに次の手順を実行します。

ファイルベースとデータベース・ベースいずれかの構成を選択します。

  • ファイルベースの構成

    トランザクション・ロギングをファイルベースの永続性に構成します。

    この設定では、Oracle Application Serverノードに障害が発生した場合にトランザクション・ログの可用性を維持するために、ファイル・システムは共有ディスク・ストレージ上に存在している必要があります。デフォルトのファイルベースのログは、ローカル・ファイル・システム($ORACLE_HOME/j2ee/home/persistence/txlogs)にあり、ロケーション属性を使用して、共有ディスク・ディレクトリの場所を指定します。

    <commit-coordinator retry-count="4">
       <middle-tier>
          <log type="file" location="/net/server1/txlogs" />
          <recovery retry-interval = "30"/>
       </middle-tier>
    </commit-coordinator>
    
  • データベース・ベースの構成

    1. または、コンテナのdata-source.xmlファイル内にネイティブのデータソース接続を作成します。

      <native-data-source name="xaLogging" jndi-name="jdbc/xaLogging"
      data-source-class="oracle.jdbc.pool.OracleDataSource"
      url="jdbc:oracle:thin:@host:1521:orcl" />
      
    2. transaction-manager.xmlファイルを編集して、データベース永続性のトランザクション・ロギングを有効にします(簡単にするために、XAリカバリ・マネージャ用に構成されている同じデータベース・ユーザーの使用を検討してください)。

      <commit-coordinator retry-count="4">
         <middle-tier>
            <log type="database" location="jdbc/xaLogging">
               <identity user="xauser" password="welcome1"/>
               <database-logging-performance …/>
            </log>
         </middle-tier>
      </commit-coordinator>
      
    3. データベースにログインし、$ORACLE_HOME/j2ee/home/database/j2ee/jta/oracle/2pc_jdbcstore.sqlでSQLスクリプトを実行してトランザクション・マネージャ・スキーマを作成します。

      詳細は、「OC4Jトランザクション・サポート」の「データベース・ストアの属性」を参照してください。

      パスワードを不明瞭化するには、この項で前に説明した手順に従い、パスワードのインダイレクションに同じ表記法を利用します。

      <commit-coordinator retry-count="4">
         <middle-tier>
            <log type="database" location="jdbc/xaLogging">
               <identity user="xauser" password="->xauser"/>
               <database-logging-performance …/>
            </log>
         </middle-tier>
      </commit-coordinator>
      

トランザクション・マネージャによって、このディレクトリの場所で構成されているOC4Jコンテナごとに、固有のサブディレクトリが自動的に作成されます。

前述のとおりトランザクション・マネージャの永続性を構成し、コンテナを再起動すると、data-sources.xml内で定義されているデータソースに、新しい属性commit-record-table-nameが設定されます。デフォルトでは、この属性値は空の文字列です。

この属性は、OC4Jトランザクション・マネージャの別の機能であるリカバリ可能最終リソース・コミット(RLRC)を有効にするための、オプションの構成の一部です。この機能を使用しない場合は、この属性を削除するか、または値を空のままにしておくのが安全です。RLRCは、OC4Jトランザクション・マネージャの最終リソース・コミット(LRC)機能に関連しています。この機能により、1つの非XAデータベース・リソースでグローバル・トランザクションのパフォーマンスを最適化できます。LRCとRLRCの詳細は、『Oracle Containers for J2EEサービス・ガイド』の最終リソース・コミットに関する項、およびOracle Application Serverのリリース・ノートのリカバリ可能最終リソース・コミットのサポートに関する項を参照してください。

OC4Jトランザクション・マネージャの構成の詳細は、『Oracle Containers for J2EEサービス・ガイド』を参照してください。

3.28.5 JDBCドライバ

このXA設定用のJDBC関連パッチはまず、Oracle Databaseに適用されます。

必須パッチのリストは、My Oracle Support(以前の名前はMetaLink)にあります。ここで、OracleMetaLink Note 38108.1を取得して、JDBCのパッチ情報を確認してください。

My Oracle Supportは、次の場所にあります。

http://support.oracle.com

パッチのREADMEの手順に従って適用します。次の手順は、更新されたJDBCファイルをアプリケーション・サーバーにコピーすることです。DatabaseのORACLE_HOME/jdbc/lib/*ファイルをApplication ServerのORACLE_HOME/jdbc/lib/ディレクトリにコピーします。Application Serverインスタンスごとにこれを実行します。

3.29 Oracle Application Serverコンポーネント接続の管理

すべてのサービスで一貫性のある可用性を保証するには、すべてのOracle Application Serverコンポーネントの接続タイムアウト値を、ファイアウォールおよびロード・バランシング・ルーターの接続タイムアウト値より低い値に設定する必要があります。ファイアウォールまたはロード・バランシング・ルーターがTCPクローズ通知メッセージを送信せずに接続を解除した場合、Oracle Application Serverコンポーネントは、これ以上使用できない接続を引き続き使用しようとします。

3.30 ネットワーク通信の構成

インストールと構成が完了したら、この項の説明に従ってネットワーク通信を構成します。表に各ファイアウォール上のオープン・ポートを示します。

ロード・バランシング・ルーターを構成します。

ファイアウォールにDMZ1への通信を構成します。

ファイアウォールにDMZ2への通信とDMZ2からの通信を構成します。

ファイアウォールにDMZ3への通信を構成します。

表3-3 ファイアウォール・ゾーン間のオープン・ポート

ファイアウォール・ゾーン ポート 目的

DMZ1からDMZ2

12510-12510

WEBHOST1およびWEBHOST2からAPPHOST1およびAPPHOST2のAJPポートへのアクセス

DMZ1からDMZ2

6200, 6300

OPMNクラスタ・ゲートウェイ。このポートは、APPHOST1およびAPPHOST2上のORA_HOME1用のOracle Notification Server(ONS)リモート・ポートである6200およびORA_HOME2用の6300である必要があります。

ここに示しているポートは例です。ORACLE_HOME/opmn/conf/opmn.xmlファイルに、実際のONSリモート・ポートの割当てが含まれています。

DMZ2からDMZ1

6200, 6300

OPMNクラスタ・ゲートウェイ。このポートは、APPHOST1およびAPPHOST2上のORA_HOME1用のOracle Notification Server(ONS)リモート・ポートである6200およびORA_HOME2用の6300である必要があります。

ここに示しているポートは例です。ORACLE_HOME/opmn/conf/opmn.xmlファイルに、実際のONSリモート・ポートの割当てが含まれています。

DMZ2からDMZ1

7777

APPHOST1およびAPPHOST2からsoainternal.mycompany.com:7777へのループバック・アクセス

DMZ2からDMZ3

1521

データベースへのアクセス

DMZ2からDMZ3

389, 636

Oracle Internet Directoryサーバーへのアクセス

DMZ2からDMZ3

6200

RACデータベースへのFast Connection Failover用のONSリモート・ポート

DMZ3からDMZ2

6200

RACデータベースへのFast Connection Failover用のONSリモート・ポート


3.31 アプリケーションの認証と認可の構成

実行が必要なタスクは、mySOACompanyに使用する認証方式によって異なります。フェイルオーバー・イベント後もユーザー・ログイン・セッションを永続させる場合は、シングル・サインオンを使用する必要があります。

JSSOとOracle Internet Directoryを実装するmySOACompany

次のタスクを実行します。

  1. 第3.32項「APPHOST1およびAPPHOST2のOracle BPEL Process ManagerインスタンスのクラスタでのOracle Internet Directory使用の構成」

  2. 第3.33項「Java SSOの構成」

Oracle Single Sign-Onを実装するmySOACompany

次のタスクを実行します。

  1. 『Oracle Containers for J2EEセキュリティ・ガイド』の第8章にある「Oracle Identity Managementセキュリティ・プロバイダを使用する手順」および「Oracle Identity Managementでの認証方式に関する設定」

  2. 第3.32項「APPHOST1およびAPPHOST2のOracle BPEL Process ManagerインスタンスのクラスタでのOracle Internet Directory使用の構成」

  3. 第4章「Oracle Single Sign-OnとOracle Delegated Administration Servicesのインストールと構成」

3.32 APPHOST1およびAPPHOST2のOracle BPEL Process ManagerインスタンスのクラスタでのOracle Internet Directory使用の構成

Oracle Internet Directoryを使用するOC4Jインスタンス(この項の説明に従って作成)に、Admin OC4Jインスタンス(インストール時に作成)のOracleAS JAAS Provider設定を手動でレプリケートする必要があります。

インストール前およびインストール後の要件の詳細は、『Oracle BPEL Process Manager管理者ガイド』の第2章にある「10.1.2 Oracle Internet Directoryを使用したIdentity Service 10.1.3.1.0の構成」を参照してください。

  1. BPELにOracle Internet Directoryを構成する手順は次のとおりです。

    1. ORACLE_ HOME/bpel/system/services/install/ant-tasksファイルにナビゲートします。

    2. 次のコマンドを発行します。

      (Windows) configure_oid.bat

      (Linux) configure_oid.sh

      Linuxの場合の構文は次のとおりです。

      sh ./configure_oid.sh oid_admin_user oid_admin_passwd oid_nonssl_port ssl_enabled oid_realm_name seedRequiredUsers | seedRequiredUsers oc4j_admin_ user oc4j_admin_passwd oc4j_container_name

      次に例を示します。

      sh ./configure_oid.sh orcladmin welcome 389 false us seedRequiredUsers oc4jadmin welcome1 oc4j_soa

  2. デフォルト(ホーム)インスタンス以外のOC4JインスタンスにBPELまたはESBがデプロイされている場合は、ORACLE_HOME/j2ee/home/config/jazn.xmlファイルをORACLE_HOME/j2ee/oc4j instance name/config/jazn.xmlファイルにコピーします。


注意:

OC4Jインスタンスに対するポリシーは、jazn.xmlファイルの<jazn>要素のプロバイダによって指定されます。

デプロイするアプリケーションで、そのデプロイ先インスタンスのインスタンスレベル・プロバイダとは異なるプロバイダが使用される場合(orion-application.xmlファイルの<jazn> configjazn.xmlファイルの<jazn> configと異なる、つまり、一方がXMLで他方がLDAPなどの場合)、orion-application.xmlファイルで指定されたプロバイダがID格納および認証に使用され、jazn.xmlファイルで指定されたプロバイダがポリシーおよび認可に使用されます。これは推奨される使用方法ではありません。



注意:

hw_servicesアプリケーションでは、JSSOを有効化しないでください。このアプリケーションで誤ってSSOを有効化した場合、コマンドラインでantを使用してプロセスをデプロイすると、実際はデプロイされていないにもかかわらず、プロセスのデプロイに成功したことを示すメッセージが表示されます。

3.33 Java SSOの構成

APPHOST1およびAPPHOST2で次に示す手順を実行して、OC4J_AdminおよびOC4J_SOAインスタンス内の次のアプリケーションに対してJava SSOを構成する必要があります。

Application Server Controlコンソールにアクセスして次の手順を実行します。

  1. OC4Jインスタンスへのリンクをクリックします。

    「OC4J:」ページが表示されます。

  2. 「アプリケーション」をクリックします。

    アプリケーションが一覧表示されます。

  3. 「すべて開く」をクリックします。

  4. javassoアプリケーションを選択し、「開始」をクリックします。

    次の警告メッセージが表示されます。

    Java SSOが適切に構成されていません。多くの場合、クラスタ内で異なる共有対称キーを使用する複数のJava SSOアプリケーションを実行していることが原因です。クラスタ内のすべてのJava SSOアプリケーションで同じ共有対称キーを使用するように構成してください。これは「Java SSO構成」ページで構成できます。

  5. 「Java SSOの構成」をクリックします。

    SSO構成が完了したことと、その有効化にはインスタンスの再起動が必要であることを知らせる確認メッセージが表示されます。

  6. 「再起動」をクリックします。

    確認メッセージが表示されます。

  7. 「はい」をクリックします。

    インスタンスが再起動されます(構成インスタンスがOC4J_Adminの場合は、システムによってログイン・セッションが終了されるため、再度ログインして設定を続行する必要があります)。

  8. 「管理」セクションにスクロールし、「Java SSO構成」をクリックします。

    「Java SSO構成」ページが表示されます。

  9. 「関連アプリケーション」をクリックします。

    アプリケーションが一覧表示されます。

  10. Java SSOを有効化するアプリケーションのチェック・ボックスを選択します。

  11. 「適用」をクリックします。

  12. Oracle Web Services Managerに対してSSOを構成します。

    1. ORACLE_HOME/owsm/binにナビゲートします。

    2. ORACLE_HOME/owsm/bin/install.propertiesファイルを編集し、install.sso.supportプロパティをtrueに設定します。

    3. 次のコマンドを発行します。

      (Windows)wsmadmin.bat deploy password console

      (Linux)wsmadmin.sh deploy password console

      前述のコマンドで、passwordはOC4J管理者パスワードです。


    注意:

    10.1.3.1から10.1.3.5に移行すると、パッチ・セットで追加されたアプリケーションではJSSOが有効でなくなります。ORACLE_HOME/application-deployments/APPLICATION/orion-application.xmlのすべてのJSSOパートナ・アプリケーションでは、JSSOが有効になります。APPLICATIONは、JSSOパートナ・アプリケーションのディレクトリです。この宣言は、JSSOパートナ・アプリケーションのシグナルとして必要です。
    <jazn provider="XML">
        <jazn-web-app auth-method="CUSTOM_AUTH"/>
    </jazn>
    

    パッチ・セットがascontrolや別のアプリケーションに適用されている場合、JSSOが再び有効になると、アプリケーションは再デプロイされ、次のようなエントリのあるファイルでそのorion-application.xmlファイルは置換されます。

    <!-- This is commented out unless jazn-based SSO is used.  The installer or setup disables the comments if required.  -->
    <!-- %BEGINGOVERNSSO%
         <jazn provider="XML">
                <jazn-web-app auth-method="CUSTOM_AUTH"/>
         </jazn>
    %ENDGOVERNSSO% -->
    

    前述の内容は、次のようになります。

    <jazn provider="XML">
         <jazn-web-app auth-method="CUSTOM_AUTH"/>
    </jazn>
    
    

3.34 ワークリスト・アプリケーションの無効化

ワークリスト・アプリケーションは、Oracle Single Sign-OnまたはJava SSOをサポートしないサンプル・アプリケーションです。シングル・サインオンに未対応のアプリケーションを本番環境に配置したくない場合は、次の手順に従ってワークリスト・アプリケーションを無効化します。

  1. ORACLE_HOME/j2ee/home/config/default-web-site.xmlファイルを開きます。

  2. このファイルを編集し、次の行をコメント・アウトまたは削除します。

    <web-app application="hw_services" name="worklistapp" load-on-startup="true" root="/integration/worklistapp" />

  3. サーバーを再起動します。