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

戻る
戻る
 
次へ
次へ
 

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

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

APPHOST1およびAPPHOST2でのRACデータベースに対するFast Connection Failoverの構成

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

ネットワーク通信の構成

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

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

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

Web層(WEBHOST1およびWEBHOST2)は、複数のOracle HTTP Serverで構成されます。図1-1図1-2および図1-3は、アプリケーション層とWeb層を示しています。

3.1.1 WEBHOST1とWEBHOST2へのOracle HTTP Serverのインストール

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クラスタの一部として構成します。

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


    注意:

    たとえば、マルチキャスト・アドレスに225.0.0.20、ポートに8001を指定します。このアドレスとポートはファーム内のすべてのコンピュータで同じにする必要があります。

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

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

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

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

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

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

    http://hostname:7777


    注意:

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

3.1.2 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="IAS-1 
     name="IAS-1">
    

    既存のインスタンス名(この例ではIAS-1)が指定されている両方の箇所を、一意のインスタンス名で置換します。

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

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

    opmnctl startall

3.1.3 クラスタ・ゲートウェイの構成

Web層のクラスタ化されたインスタンスとアプリケーション層のクラスタ化されたインスタンスの間にはファイアウォールがあるため、トポロジ間ゲートウェイを構成して、クラスタ間の通信を可能にする必要があります。ゲートウェイ構成では、ファイアウォールの両側にある1台のサーバーが各クラスタへのエントリ・ポイントとなります。この項で説明する手順では、APPHOST1とWEBHOST1をゲートウェイ・サーバーとして指定しますが、任意のサーバーをゲートウェイ・サーバーとして指定できます。ゲートウェイ・サーバーとの通信には、opmn.xml<gateway>サブ要素で指定されたリモート・ポートが使用されます(太字の箇所)。

アプリケーション層とWeb層にゲートウェイ・サーバーを指定する手順は次のとおりです。

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

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

    <notification-server>
      <port local="6101" remote="6201" request="6004"/>
      <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;webhost1.mycompany.com:6200&amp;webhost2.mycompany.com:6200/"/>
       </topology>
    </notification-server>
    ...
    

    注意:

    6201はAPPHOST1上のOPMNリモート・ポートで、6202はWEBHOST1上のOPMNリモート・ポートです。構成に必要なポート値を決めるには、すべてのサーバーのopmn.xmlファイルを参照する必要があります。

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

    opmnctl reload

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

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

    opmnctl reload


注意:

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

3.1.4 Application Server Controlコンソールへのアクセスを防止するためのファイアウォールの構成

Application Server Controlコンソールは、ファイアウォールの内側からのみアクセスできる必要があります。ご使用のファイアウォールのドキュメントを参照して、外部からのアクセスを防止するようにファイアウォールを構成してください。

3.1.5 Application ServerインスタンスのAPPHOST1およびAPPHOST2へのインストール

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

  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 Serverおよびプロセス管理」インストール・タイプが選択された状態で表示されます。

  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)。


    注意:

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

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

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

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

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


    注意:

    たとえば、マルチキャスト・アドレスに225.0.0.20、ポートに8001を指定します。このアドレスとポートはファーム内のすべてのコンピュータで同じにする必要があります。

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

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

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

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

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

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

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

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

  19. 次の例外を除き、手順1から18までを繰り返して、第1.3項の図にORA-HOME2と示されている2番目のOracleホームを作成します。

    1. 手順3では、2番目のOracleホームの作成用として、異なるインストール・ディレクトリを指定します。

    2. デフォルトのOC4Jインスタンスを管理インスタンスとして指定しないでください。

    3. デフォルトのOC4JインスタンスをOC4J_ESBDTと命名します。

  20. Oracle Enterprise Manager 10gにインスタンスを表示して、インストールが成功したことを確認します。インスタンスの表示は、ファイアウォールの内側からのみ行います。詳細は、第3.1.4項を参照してください。ブラウザを起動し、Application Server Controlコンソールにログインしてアプリケーション・サーバー・インスタンスを表示します。

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


    注意:

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

  21. Oracle Enterprise Manager 10gにインスタンスを表示して、インストールが成功したことを確認します。インスタンスの表示は、ファイアウォールの内側からのみ行います。詳細は、第3.1.4項を参照してください。ブラウザを起動し、Application Server Controlコンソールにログインしてアプリケーション・サーバー・インスタンスを表示します。

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


    注意:

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

3.1.6 APPHOST2からAPPHOST4の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コンソールをアクティブにする場合は、次の点に注意してください。

  • 管理対象OC4Jインスタンスの管理者パスワードを変更した場合は、すべてのApplication Server Controlコンソール・インスタンスの保存済管理者パスワードに変更を適用する必要があります。Oracle HTTP Serverによって正しいパスワードを持たないApplication Server Controlコンソールにリクエストが転送されたときは、管理インスタンスへの接続が失敗し、新しい管理者パスワードの入力を求められます。

    ログイン時に、Application Server Controlコンソールの「クラスタ・トポロジ」ページに、複数のインスタンスが実行されていることを示す警告が表示されます。

3.1.7 占有ポートの特定

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

netstat -an

AJPのポート範囲は、12501〜12600です。この範囲のポート番号で、netstatコマンドの出力に含まれない範囲を書き留めます。これらが、OC4Jインスタンスに割当て可能なポートになります。

3.1.8 APPHOST1およびAPPHOST2のOC4Jインスタンスの作成

APPHOST1およびAPPHOST2には、3つのOracleホーム(アプリケーション・サーバー・インスタンス)があります。第1.3項の図に示されているOC4Jインスタンスを作成する必要があります。APPHOST2にはインストール時に1つのOC4Jインスタンス(OC4J_ESBDT)が作成されているので、次のOC4Jインスタンスを作成する必要があります。

  • OC4J_SOA

  • OC4J_GTWY

  • OC4J_WSM

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

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

  2. APPHOST1のアプリケーション・サーバー・インスタンスの「メンバー」リストにあるリンクをクリックします。

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

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

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

  4. OC4Jインスタンス名」フィールドに「OC4J_SOA」と入力します。グループにはデフォルトを適用し、インスタンスを起動するチェック・ボックスを選択します。

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

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

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

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

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

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

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

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

  9. default-web-siteに未使用のAJPポート(第3.1.7項で調査済)を指定し、「適用」をクリックします。

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

  10. 手順1から9までを繰り返し、OC4J_GTWYおよびOC4J_WSMインスタンスを作成します。各インスタンスには、一意の異なるポートを範囲内から割り当てます。

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

    opmnctl stopall

    opmnctl startall

  12. APPHOST2において、手順1から11までを繰り返します。

3.1.9 ロード・バランシング・ルーターを使用したOracle HTTP Serverの構成

ロード・バランシング・ルーター(「図1-1 JSSOとOracle Internet Directoryを実装するmySOACompany」に示すsoa.mycompany.com)は、クライアント・リクエストを受信してWeb層上の2つのOracle HTTP Serverインスタンスにロード・バランシングするように構成する必要があります。ロード・バランサの構成方法は、各ロード・バランシング・ルーターのマニュアルを参照してください。Oracle HTTP Serverは、この項の手順に従って構成します。

mySOACompany構成内のロード・バランシング・ルーターのホスト名とポートに、着信リクエストを関連付ける必要があります。これを構成するには、WEBHOST1およびWEBHOST2で次の手順を実行します。

  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 7777
        ServerAdmin you@your.address
        RewriteEngine On
        RewriteOptions inherit
      </VirtualHost>
      
      NameVirtualHost *:7777
      <VirtualHost *:7777>
        ServerName soa.mycompany.com:443
        Port 443
        ServerAdmin you@your.address
        RewriteEngine On
        RewriteOptions inherit
        SimulateHttps On
      </VirtualHost>
      

      Apache 2.0(UNIX):

      NameVirtualHost *:7777
      <VirtualHost *:7777>
        ServerName soa.mycompany.com:7777
        ServerAdmin you@your.address
        RewriteEngine On
        RewriteOptions inherit
      </VirtualHost>
      
      NameVirtualHost *:7777
      <VirtualHost *:7777>
        ServerName soa.mycompany.com:443
        ServerAdmin you@your.address
        RewriteEngine On
        RewriteOptions inherit
        SimulateHttps On
      </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://soa.mycompany.com:7777/j2ee

    https://soa.mycompany.com/j2ee

3.1.10 内部で使用するためのesbd.myco.com URLの構成

ロード・バランシング・ルーターは、Web層のESBDインスタンスへの内部アクセスを提供するように構成する必要があります。ロード・バランサの構成方法は、各ロード・バランシング・ルーターのマニュアルを参照してください。このURLに対してOracle HTTP Serverを構成するには、この項の手順に従います。

mySOACompany構成内のロード・バランシング・ルーターのホスト名とポートに、着信リクエストを関連付ける必要があります。これを構成するには、WEBHOST1およびWEBHOST2で次の手順を実行します。

  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ディレクティブ、およびesb.mycompany.com用のVirtualHostコンテナを作成します。

      Apache 1.3:

      NameVirtualHost *:7777
      <VirtualHost *:7777>
        ServerName esbd.myco.com
        Port 7777
        ServerAdmin you@your.address
        RewriteEngine On
        RewriteOptions inherit
      </VirtualHost>
      

      Apache 2.0(UNIX):

      NameVirtualHost *:7777
      <VirtualHost *:7777>
        ServerName esbd.myco.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://esbd.myco.com:7777/j2ee

    https://esbd.myco.com/j2ee

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

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


注意:

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

  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. 次へ」をクリックします。

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

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

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

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

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

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

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

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

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

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

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

    サービス名: orcldb.mycompany.com

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

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

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

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

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

    OC4Jインスタンス名: OC4J_SOA

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

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

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

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

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

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

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

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

    https://soa.mycompany.com/BPELConsole

3.1.12 BPELインスタンスのクラスタの構成

この項では、エンタープライズ・デプロイメント用にクラスタを構成する方法について簡単に説明します。詳細は、『Oracle BPEL Process Managerインストレーション・ガイド』の「Oracle BPEL Process Managerクラスタの作成」を参照してください。

  1. 両方のJ2EEインスタンス(ホスト・コンピュータが同じサブネットにある)で、次のサーバー・サイド・プロパティを構成します。

    次のファイルのenableClusterをtrueに設定し、ClusterNameプロパティに同じ名前を割り当てます。

    ORACLE_HOME/bpel/system/config/collaxa-config.xml

    次のファイルのmcast-addrおよびmcast-portを、同じアドレスに設定します。

    ORACLE_HOME/bpel/system/config/jgroup-protocol.xml(これらの値はクラスタ内のすべてのコンピュータで同じにする必要があります)

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

    ORACLE_HOME/bpel/utilities/ant-orabpel.propertiesファイル:

    clustertrueに設定します。oc4jinstancenameをOC4Jグループの名前(たとえば、default_group)に設定します。

  3. soapServerURLsoapCallbackUrlの値はロード・バランサのURLと同じ値に設定します。

    1. ORACLE_HOME/bpel/system/config/collaxa-config.xmlファイルを開きます。

    2. soapServerURLsoapCallbackUrlの値をhttpsのURLに設定します。設定すると、エントリは次のようになります。

      ...
          <property id="soapServerUrl">
              <name>BPEL soap server URL</name>
                 <value>https://soa.mycompany.com</value>
      ...
          </property>
      ...
          <property id="soapCallbackUrl">
              <name>BPEL soap callback URL</name>
                 <value>https://soa.mycompany.com</value>
      ...
          </property>
      
  4. 両方のコンピュータでOC4J_SOAインスタンスを再起動します。

3.1.12.1 クラスタベースのBPELデプロイに必要な手順

BPELクラスタにアプリケーションをデプロイするときは、次の各手順を遵守する必要があります。

  • BPELプロセスと他のすべての必要な部分を、クラスタ内の各コンピュータにデプロイする必要があります。この手順が必要なのは、各コンピュータでカスタムjar(ローカルなEJBなど)が必要になる場合があるためです。

  • クラスタ内の各コンピュータで、obant.shを実行します。

  • すべてのコンピュータを1台ずつ起動します。1つのコンピュータが完全に起動されてから、次のコンピュータを起動します。

  • EJBバインディング用のクライアント・インタフェースを、各コンピュータのsystem/classesディレクトリにコピーします。次にBPEL Process Managerを再起動して、それらのクラスをロードします。

  • ビルドおよびデプロイ対象のアプリケーションで、bpel.xmlファイルのwsdlLocationがローカル・ファイル・システム上のwsdlファイルを指すように定義し、wsdlRuntimeLocationが実行時にwsdlファイルを指すようにします。定義例は、ORACLE_HOME/bpel/samples/demos/LoanFlow/LoanDemo/bpel/bpel.xmlを参照してください。

  • ORACLE_HOME/bpel/samples/demos/LoanDemoディレクトリにあるサンプル・アプリケーションのLoanFlowを使用して、デプロイ後にBPELプロセスが動作することを検証します。

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

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


注意:

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

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

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

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

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

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

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

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

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

    最初のJ2EE ServerのOracle Application Serverインスタンス(Adminインスタンスが常駐するインスタンス)をインストールしたインストール・ディレクトリを指定します。

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

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

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

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

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

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

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

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

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

    サービス名: orcldb.mycompany.com

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

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

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

  10. インストール時に設定した管理者パスワードを入力し、OC4J_SOAインスタンスを選択し、HTTPホストおよびポート値(soa.mycompany.com:7777)を指定して、「次へ」をクリックします。

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

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

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

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

    インストール・プロセスが完了したら、「インストールの終了」画面が表示されます。

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

3.1.14 BPELランタイム・コンソールでのメモリー不足エラーの解決

BPELコンソールでタスクを実行中に、次のエラーが発生することがあります。

500 Internal Server Error

java.lang.OutOfMemoryError: PermGen space

このエラーを解決するには、MaxPermSizeパラメータを使用して、PermGen領域(静的クラスのロードに使用される)に割り当てられているメモリーを増やします。次の手順に従って、APPHOST1およびAPPHOST2のOracle Application Serverインスタンスで、MaxPermSizeパラメータを設定します。

  1. ORACLE_HOME/opmn/conf/opmn.xmlファイルを開き、MaxPermSizeパラメータ(例3-1の太字の箇所)を見つけます。

    例3-1 MaxPermSizeパラメータ

    ...
    <category id="start-parameters">
                        <data id="java-options" value="-Xrs -server
    -XX:MaxPermSize=128M -ms512M -mx1024M -XX:AppendRatio=3
     -Djava.security.policy=$ORACLE_HOME/j2ee/Admin/config/java2.policy
     -Djava.awt.headless=true -Dhttp.webdir.enable=false"/>
                      </category>
                      <category id="stop-parameters">
                         <data id="java-options"
     value="-Djava.security.policy=$ORACLE_HOME/j2ee/Admin/config/java2.policy
     -Djava.awt.headless=true -Dhttp.webdir.enable=false"/>
    ...
    
  2. 次の例に示すように、この値を増やします。

    -XX:MaxPermSize=256M

  3. ファイルを保存して閉じ、OPMNインスタンスを再起動します。

3.1.15 ESBリポジトリ・インスタンスのAPPHOST1およびAPPHOST2へのインストール

  1. 次の例外を除き、第3.1.13項「Oracle Enterprise Bus(10.1.3.1.0)CDからのESBランタイム・インスタンスのAPPHOST1およびAPPHOST2へのインストール」の手順を実行します。

    1. 「ファイルの場所の指定」画面で、該当するOracleホーム(ORA-HOME2)を選択します。

    2. 管理(Administration)設定」画面で、OC4J_ESBDTインスタンスを選択します。

    3. ESBタイプの選択」画面で、「リポジトリ」を選択します。

3.1.16 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.1.17 単独のアダプタに対するESBの構成

インバウンド・ファイル・アダプタやFTPアダプタなどの単独のアダプタを使用するシステムをサポートするには、ファイル・アダプタをホストする追加のESBランタイム・インスタンス(ESBインスタンスのクラスタのメンバーではないインスタンス)が必要です。第3.1.13項「Oracle Enterprise Bus(10.1.3.1.0)CDからのESBランタイム・インスタンスのAPPHOST1およびAPPHOST2へのインストール」の手順に従って、追加のESBランタイム・インスタンスをインストールしてください。

インバウンド・ファイル・アダプタは、単一のESBランタイム・サーバーでのみサポートされます。インバウンド・ファイル・アダプタを使用する場合は、単一のESBランタイム・サーバー上のESBファイル・アダプタ・システムに対して、ESBインスタンスのクラスタ名(ORACLE_HOME/integration/esb/config/esb_config.iniファイルのcluster_nameプロパティ)を設定する必要があります。

3.1.18 APPHOST1およびAPPHOST2でのESBランタイム・インスタンスのクラスタの構成


注意:

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

  1. ESBランタイム・インスタンスのインストールで、ORACLE_HOME/integration/esb/config/esb_config.iniファイルを開きます。

  2. primary_oc4jパラメータをコメント・アウトします。

    # Central OC4J or not
    # primary_oc4j=true
    
  3. 次のopmnコマンドを使用して、サーバーを再起動します。

    opmnctl stopall

    opmnctl startall

3.1.19 ESBメタデータの更新

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

    Windows: esbsetenv.bat

    UNIX: esbsetenv.sh

  2. esbparam.propertiesという名前のファイルを作成し、例3-2に示すkey=valueのペアを記述します。

    例3-2 esbparam.propertiesファイル

    DT_OC4J_HTTP_PORT=7777
    DT_OC4J_HOST=soa.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=esbparam.properties -DDB_URL=jdbc:oracle:thin:@//localhost:1521/ORCL -DDB_USER=oraesb -DDB_PASSWORD=oraesb
    

    例3-4 exportコマンド

    ant export-params -DDB_URL=jdbc:oracle:thin:@//localhost:1521/ORCL -DDB_USER=oraesb -DDB_PASSWORD=oraesb
    
  4. ESBコンソール・システムの画面で、各インストールに対して、非同期トピックのトピックおよびトピック・コネクション・ファクトリを次の値で更新します。

    トピック: ESBTopics/Topics/ESB_JAVA_DEFERRED

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

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

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

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

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

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

Oracle Enterprise Manager 10gを使用して、次の手順を実行し、設計時と両方のESBリポジトリ・インスタンスにJNDIを構成します。

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

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

  2. 「データベース永続性」構成ページで、「デプロイ」をクリックします。

  3. Oracle Enterprise Manager 10gで、OC4J Adminインスタンスの「管理」タブにナビゲートします。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

APPHOST1のOracleホーム1: OC4J_WSM

APPHOST1のOracleホーム4: OC4J_GTWY

APPHOST2のOracleホーム1: OC4J_WSM APPHOST2のOracleホーム4: OC4J_GTWY


注意:

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

  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ホスト:ポート: soa.mycompany.com:7777

    OC4Jインスタンス: OC4J_WSMまたはOC4J_GTWY(APPHOST1およびAPPHOST2の該当Oracleホームのそれぞれのインスタンスに応じて)

    管理者のユーザー名: oc4jadmin

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

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

    データベース・タイプ: Oracle(デフォルト)

    ドライバ・タイプ: Thin(デフォルト)

    名前: SOAデータベースのサービス名

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

    ユーザーID: ORAWSM

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

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

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

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

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

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

3.1.23 APPHOST1およびAPPHOST2のアプリケーションの無効化

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

  2. default-web-site.xmlファイルを開きます。

  3. load-on-startupパラメータを削除します。

  4. ORACLE_HOME/j2ee/OC4J_WSM/configディレクトリにナビゲートします。

  5. default-web-site.xmlファイルを開きます。

  6. load-on-startupパラメータを削除します。

  7. ORACLE_HOME_1/opmn/binにある次のコマンドを実行します。

    opmnctl stopall

    opmnctl startall

  8. ORACLE_HOME_4/opmn/binにある次のコマンドを実行します。

    opmnctl stopall

    opmnctl startall

表3-1 無効化するOC4Jアプリケーション

無効化するアプリケーション 対象のOC4Jインスタンス

ccore

両方のOC4J_GTWYインスタンス

coreman

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

policymanager

両方のOC4J_GTWYインスタンス

gateway

両方のOC4J_WSMインスタンス


3.1.24 OWSMクラスタの構成

  1. 各ゲートウェイ・ホストをOWSMポリシー・マネージャに接続します。

    1. ORACLE_HOME/owsm/config/gateway/gateway-config-installer.propertiesファイルを編集し、gateway.policymanagerURLプロパティをポリシー・マネージャURLに設定します。例: http://soa.mycompany.com/policymanager

    2. ORACLE_HOME/owsm/binにある次のコマンドを発行して、アプリケーションを再デプロイします。

      Windows: wsmadmin.bat deploy password gateway

      Linux: wsmadmin.sh deploy password gateway

      前述のコマンドで、passwordは、OC4J_GTWYインスタンスの作成時に設定したOC4J_GTWYの管理者パスワードです。

  2. 次のOWSMコンソールにアクセスします(ユーザー名admin、パスワードoracle)。

    http://soa.mycompany.com/ccore


    注意:

    この手順ではデフォルトのパスワードを指定しています。セキュリティを保証するには、このパスワードを変更する必要があります。

  3. 新規コンポーネントの追加」をクリックし、新しいゲートウェイを追加します。

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

    コンポーネント名: Gateway_Cluster

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

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

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

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

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

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

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

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

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

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

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

  7. 各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 password control

      (Linux) wsmadmin.sh deploy password control

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

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

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

  1. opmn.xmlファイルを調べ、インストールした各インスタンスのコンポーネント・タイプと指定ポート範囲を特定します(たとえば、OC4Jのホーム・インスタンスとユーザー作成のすべてのインスタンス)。例3-5に、opmn.xmlファイルのコンポーネントとデフォルト・ポートの箇所を示します。この例では、OC4JのAdminインスタンスはポート8888でリスニングし、別インスタンスのAppsはポート12501でリスニングしています。

  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.1.26 J2EEアプリケーションのデプロイ

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

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

Application Server Controlコンソールを使用して、アプリケーションをデプロイできます。その手順は次のとおりです。

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

    http://soa.mycompany.com:7777/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. デプロイ」をクリックします。

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

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

コマンドラインを使用してアプリケーションをOC4Jインスタンスにデプロイする手順は次のとおりです。

  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.1.27 静的検出の構成によるマルチキャスト通信の排除

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

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

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

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

    opmnctl reload

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

    opmnctl @cluster status


注意:

APPHOST1、APPHOST2、WEBHOST1およびWEBHOST2が異なるサブネットにある場合は、ゲートウェイのエントリも必要です(次の例の太字の箇所)。gateway listは、1つのサブネットにつき、1つのホストとポートのみで構成できます。ただし、フェイルオーバーが必要な場合は、各サブネットに複数のホストを含める必要があります。
<notification-server>
  ...
   <gateway list="apphost1.mycompany.com:6200&amp;apphost2.mycompany.com:6200&amp;webhost1.mycompany.com:6200&amp;webhost2.mycompany.com:6200/"/>
   </topology>
</notification-server>


注意:

マルチキャストがインスタンス検出に使用される場合、Oracle Notification Service(ONS)とBPELでは、別々のマルチキャスト・アドレスを使用する必要があります。

3.2 APPHOST1およびAPPHOST2でのRACデータベースに対するFast Connection Failoverの構成

Fast Connection Failoverは、10gリリース1または10gリリース2のRACデータベースへのJDBC接続に対してフェイルオーバーを提供します。RACノードに障害が発生すると、Oracle Notification Service(ONS)によって障害が検出され、SQL例外がアプリケーション・コードにスローされます。APPHOST1およびAPPHOST2でFast Connection Failoverを有効化する手順は次のとおりです。

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

  2. RACデータベースのホスト名およびリモート・ポートの識別子を追加します。

    <notification-server>
      <port local="6100" remote="6200" request="6003"/>
      <ssl enabled="false" wallet-file="$ORACLE_HOME\opmn\conf\ssl.wlt\default"/>
      <topology>
      <nodeslist="apphost1:6200,apphost2:6200,webhost1:6200,webhost2:6200,infradbhost1:6200,infradbhost2:6200"/>
      </topology>
    </notification-server>
    
  3. ファイルを保存して閉じます。

  4. ORACLE_HOME/j2ee/OC4J_SOA/config/data-sources.xmlファイルを開きます。

  5. RACノードの情報を追加し、Fast Connection Failoverを有効化します。

    <managed-data-source
     jndi-name="jdbc/TestDemoDS"
     description="Managed DataSource for TestDemoDS"
     connection-pool-name="TestDemoDS Connection Pool"
     name="TestDemoDS"/><connection-pool
     name="TestDemoDS Connection Pool"
     min-connections="10"
     max-connections="30"
     inactivity-timeout="30">
     <connection-factory
       factory-class="oracle.jdbc.pool.OracleDataSource"
       user="system"
       password="welcome1"
       url="jdbc:oracle:oci:@(DESCRIPTION=(LOAD_BALANCE=off)
         (ADDRESS=(PROTOCOL=TCP)(HOST=infradbhost1.mycompany.com)(PORT=1521))
         (ADDRESS=(PROTOCOL=TCP)(HOST=infradbhost2.mycompany.com)(PORT=1521))
         (CONNECT_DATA=(SERVICE_NAME=loon)))"/>
       <property name="loginTimeout" value="30"/>
       <property name="connectionCachingEnabled" value="true"/>
       <property name="fastConnectionFailoverEnabled" value="true"/>
     </connection-factory>
    </connection-pool>
    
  6. ファイルを保存して閉じます。

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

    opmnctl reload

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

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

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

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

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

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

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

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

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

DMZ1からDMZ2

12501-12510

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

DMZ1からDMZ2

6200、6201

OPMNクラスタ・ゲートウェイ

DMZ2からDMZ1

7777

APPHOST1およびAPPHOST2からmysoacompany.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.5 アプリケーションの認証と認可の構成

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

JSSOとOracle Internet Directoryを実装するmySOACompany

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

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

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

Oracle Access Managerを実装するmySOACompany

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

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

  2. 第4章「Oracle Access Managerのインストールと構成」

Oracle Single Sign-Onを実装するmySOACompany

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

  1. 『Oracle Containers for J2EEセキュリティ・ガイド』のOracle Identity Managementセキュリティ・プロバイダを使用する手順、およびOracle Identity Managementの認証方式の設定に関する項を参照してください。

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

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

3.5.1 APPHOST1およびAPPHOST2のBPELインスタンスのクラスタでの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 oc4jadminwelcome1 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.5.2 Java SSOの構成

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

  • orabpel(Oracle BPEL Process Manager用)

  • esb-dt(Oracle Enterprise Service Bus用)

  • ccore(Oracle Web Services Manager用)

  • ascontrol(Application Server Controlコンソール用)

Oracle Enterprise Manager 10g 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. OWSMへのSSOを構成します。

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

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

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

      (Windows)wsmadmin.bat deploy password console

      (Linux)wsmadmin.sh deploy password console

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

  13. 『Oracle Containers for J2EEセキュリティ・ガイド』のOracle Identity Managementセキュリティ・プロバイダを使用する手順、およびOracle Identity Managementの認証方式の設定に関する項の説明に従って、owsmコンソール・アプリケーションをOracle Internet Directoryセキュリティ・プロバイダで再構成します。

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

ワークリスト・アプリケーションは、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. サーバーを再起動します。