ヘッダーをスキップ
Oracle BPEL Process Manager管理者ガイド
10gリリース2(10.1.2)
B28910-01
  目次
目次
索引
索引

戻る
戻る
次へ
次へ
 

2 Oracle BPEL Process Managerのクラスタリング

Oracle BPEL Process Managerでは、Webサービスへのリクエストの送信やレスポンスの受信、将来の使用に備えてのプロセスの保存(デハイドレーション)、保存したプロセスの取得(リハイドレーション)、受信データに対するロジックの実行などのタスクが実行できます。BPELプロセスの実行中に、Oracle BPEL Serverの1つが機能しなくなった場合、これらのプロセスは失われます。Oracle BPEL Process Managerリリース10.1.2.0.2のクラスタを設定して、信頼性を向上させることにより、これを防ぐことができます。また、クラスタリングにより、スループットやパフォーマンスも改善されます。

この章では、より高速で信頼性の高いパフォーマンスを提供するために、Oracle BPEL Process Managers 10.1.2.0.2のクラスタを作成し、構成する方法について、Oracle Application Server中間層を使用する場合と、使用しない場合に分けて説明します。

この章で説明する内容は次のとおりです。


注意:

この章では、高可用性Real Application Clusters(RAC)データベース環境でOracle BPEL Process Managerを構成する方法については説明していません。このような環境に関する情報の入手先の詳細は、Oracle BPEL Process Managerのリリース・ノートを参照してください。


関連資料:

『Oracle Application Server高可用性ガイド』。このマニュアルにアクセスするには、http://www.oracle.com/technology/documentation/appserver101202.html「Oracle Application Server 10g Release 2 (10.1.2.0.2)」ヘッダーの下にある「View Library」をクリックし、次に「System Management」をクリックしてください。このガイドは、次のOracle BPEL Process Manager高可用性構成の概要を説明しています。
  • アクティブ/アクティブ高可用性構成

  • アクティブ/パッシブ高可用性構成

  • 高可用性構成でアダプタを使用した実行


2.1 Oracle BPEL Process Managerのクラスタリングの概要

Oracle BPEL Process Managerのクラスタは、同一の構成とデプロイを持つインスタンスの集合です。クラスタの各メンバー・インスタンスは同質であるため、Oracle BPEL Process Managerインスタンスのクラスタは単一のインスタンスとして表示され、そのように機能します。適切なフロントエンドの負荷分散があれば、Oracle BPEL Process Managerのクラスタのインスタンスはどれでもリクエストを処理することができます。これにより、複数のインスタンスにわたる構成およびデプロイが簡略化され、クラスタリングされたインスタンス間でのフォルト・トレランスが可能になります。

この項では、Oracle BPEL Process Managerにおけるクラスタリングの概要について説明します。

この項で説明する内容は次のとおりです。

2.1.1 サポートされているOracle BPEL Process Managerのクラスタリング環境

Oracle BPEL Process Managerでは、2種類のクラスタリング環境がサポートされています。これらの環境を構成する方法の例については、この章で後述します。

  • アプリケーション・サーバー中間層のクラスタリングを使用しないOracle BPEL Process Managerのクラスタリング

    この環境では、Oracle BPEL Process Managerのみがクラスタリングされます。Oracle BPEL Process Managerがインストールされた、基礎となるアプリケーション・サーバー中間層はクラスタリングされません。Oracle BPEL Process Managerのクラスタリングには、アプリケーション・サーバー中間層のクラスタリングは必要ありません。

  • アプリケーション・サーバー中間層のクラスタリングを使用したOracle BPEL Process Managerのクラスタリング

    この環境では、Oracle BPEL Process Managerと、基礎となるアプリケーション・サーバー中間層の両方がクラスタリングされます。この章の例では、Oracle Application Serverが基礎となるアプリケーション・サーバーです。Oracle BPEL Process Managerのクラスタリングは、基礎となるアプリケーション・サーバーのクラスタリングとは関係ありません。どちらのコンポーネントもクラスタリングできますが、Oracle BPEL Process Managerのクラスタリングはアプリケーション・サーバー中間層のクラスタリングには依存しません。


    注意:

    既存のアプリケーション・サーバー中間層のクラスタ上にOracle BPEL Process Manager 10.1.2.0.2のクラスタを作成することはできません。かわりに、Oracle BPEL Process Managerのクラスタを作成してから、アプリケーション・サーバー中間層のクラスタを作成する必要があります。このような環境を構成する手順については、この章で後述します。

2.1.2 Oracle BPEL Process Managerのクラスタリング・アーキテクチャ

Oracle BPEL Serverはステートレス・アーキテクチャを使用して、論理的にはステートフルなプロセスを実行します。Oracle BPEL Process Managerのクラスタリングに必要なコンポーネントは次のとおりです。

  • 各ノード上にある複数のOracle BPEL Server(Oracle BPEL Process Manager for OracleAS Middle Tierインストール・タイプでインストールされるもの)

  • クライアントとOracle BPEL Serverの間の通信すべてをプロキシするロード・バランサ

  • すべてのOracle BPEL Serverで共有されるデハイドレーション・ストア・データベース

サーバーに障害が発生した場合、別のサーバーにある、使用可能な次のOracle BPEL Serverにより、最後のデハイドレーション・ポイントからプロセスが再開されます。すべてのOracle BPEL Serverで、同一のデータベース・リソースおよびSOAP URLが共有されます。フロント・エンド・ロード・バランサとディスパッチャが使用可能であるかぎり、BPELプロセスはクラスタ内のOracle BPEL Serverにより共有されます。Oracle BPEL Serverのいずれかが停止した場合、クラスタ内で稼働中のOracle BPEL Serverが停止したOracle BPEL Serverの未完のBPELプロセスを引き取り、処理を続行します。

図2-1は、このOracle BPEL Process Managerにおけるクラスタリング・レイアウトの概要です。この例では、各コンポーネントは、それぞれの専用ホストで実行されています。

図2-1 クラスタ環境のOracle BPEL Process Manager

図2-1の説明が続きます
「図2-1 クラスタ環境のOracle BPEL Process Manager」の説明

図2-1のホスト2とホスト3には、それぞれOracle BPEL Process Manager for OracleAS Middle TierとOracle Application Server中間層がインストールされています。ホスト2とホスト3のOracle BPEL Process Manager for OracleAS Middle Tierはクラスタリングされています。ホスト2とホスト3のOracle Application Server中間層もクラスタリングできますが、これは必須ではありません。どちらの構成環境についても、この章で後述します。

2.1.2.1 複数のOracle BPEL Process Managers for OracleAS Middle Tierインストール

単一障害点を防ぐには、図2-1にあるように、複数のホスト上にクラスタとして、Oracle BPEL Process Manager for OracleAS Middle Tierをインストールします。このクラスタでは、すべてのインストールにより、同一のデータベースがデハイドレーション・ストアとして使用されます。クラスタリングにより、フェイルオーバー時の負荷分散、可用性およびバックアップ機能が提供されます。

2.1.2.2 ロード・バランサ

Oracle BPEL Process Managerは、各種ハードウェア・ロード・バランサまたはソフトウェア・ロード・バランサに応じた構成が可能です。ただし、パフォーマンスがよいのは一般的にハードウェア・ロード・バランサです。ロード・バランサの選択においては、その機能および実装に対する信頼性要件を基準にしてください。

負荷分散は多数のソフトウェア・アプリケーション、特にクラスタのようなサーバー・ベースのアプリケーションに関係しています。基本的に、あるサーバーが、効率的に処理できる量を上回るリクエストを受信し始めた場合、着信トランザクションを、使用可能な次のサーバー(平均負荷、メモリー使用率、ユーザー・ログイン、ネットワーク接続などが最小なもの)に転送するか、すべてのサーバーに対して均等に分配することができます。これは負荷分散とも呼ばれます。クラスタリングを成功させるには、効果的な負荷分散が必要です。

2.1.2.3 デハイドレーション・ストア・データベースの構成

デハイドレーション・ストア・データベースは、長期間実行されているプロセスの状態を自動的に持続することができます。デハイドレーション・ストアとしてOracle Databaseを構成する手順については、『Oracle BPEL Process Managerインストレーション・ガイド』を参照してください。


注意:

デハイドレーション・ストアとして、Oracle BPEL Process Manager for Developersインストレーション・タイプに付属しているOracle Database Liteを使用するのは、開発環境のみにすることをお薦めします。これは本番環境、特にクラスタリングの本番環境(またはパフォーマンス・テストやストレス・テスト)には適していません。

2.2 ステップ1: Oracle BPEL Process Managerのクラスタの作成

この項では、Oracle BPEL Process Manager 10.1.2.0.2のクラスタ、およびOracle Application Server 10.1.2.0.2中間層のクラスタ(必要な場合)を作成する方法について説明します。Oracle BPEL Process Manager付属の標準LoanFlowPlusデモンストレーションを、例として使用します。

この項で説明するタスクは次のとおりです。

2.2.1 ステップ1a: 2つの異なるホストへのOracle Application Serverのインストール

このステップでは、使用中のオペレーティング・システムに対応するOracle Application Serverのインストレーション・ガイドに記載されている、プロシージャの概要について説明します。

  1. ホスト1のディレクトリに、Oracle Application Server J2EEとWeb Cacheリリース10.1.2.0.2インストール・タイプをインストールします。

    C:\OraBPELMT
    
    
  2. 同じ手順を繰り返して、ホスト2の同じ名前のディレクトリにOracle Application Server J2EEとWeb Cacheインストール・タイプをインストールします。

    C:\OraBPELMT
    

    関連資料:

    Oracle Application Serverインストール・ドキュメント。これは次のURLにある「Oracle Application Server 10gリリース2(10.1.2.0.2)ドキュメント」リンクの下にあります。
    http://www.oracle.com/technology/documentation/appserver101202.html
    

2.2.2 ステップ1b: Oracle Application ServerへのOracle BPEL Process Manager for OracleAS Middle Tierのインストール

このステップでは、使用中のオペレーティング・システムに対応する『Oracle BPEL Process Managerインストレーション・ガイド』に記載されている、インストール手順の概要について説明します。

  1. 両ホストで、Oracle Application Server Web Cacheを無効にします。

    cd Oracle_Home\opmn\bin
    prompt> opmnctl stopproc ias-component=WebCache
    
    

    インストール中、Oracle BPEL Process ManagerはOracle Application Server Web Cacheポート番号のかわりにHTTPリクエストおよびレスポンス・ポート番号を使用する必要があるためです。Oracle Application Server Web Cacheが実行中の場合、そのポート番号が誤って使用されます。

  2. ホスト1のJ2EE and Web Cacheインストール・タイプと同じOracleホーム・ディレクトリに、Oracle BPEL Process Manager for OracleAS Middle Tierリリース10.1.2.0.2をインストールします。

    C:\OraBPELMT
    
    
  3. 同じ手順を繰り返して、ホスト2のJ2EE and Web Cacheインストール・タイプと同じOracleホーム・ディレクトリに、Oracle BPEL Process Manager for OracleAS Middle Tierをインストールします。

    C:\OraBPELMT
    
    
  4. 両方のOracle BPEL Process Manager for OracleAS Middle Tierをインストールする間、同一のデハイドレーション・ストア・データベースをポイントしていることを確認します。


注意:

このデモンストレーションでは、2つのOracle BPEL Process Manager for OracleAS Middle Tierのクラスタリングについてのみ説明しています。Oracle BPEL Process Manager for OracleAS Middle Tierを追加インストールする必要がある場合は、これらのインストール手順を繰り返してください。

2.2.3 ステップ1c: Oracle BPEL Process Manager Clusterで使用されるロード・バランサの作成


注意:

この例では、ロード・バランサとしてOracle Application Server Web Cacheを使用します。これは、デモンストレーション用です。各環境に適したロード・バランサを使用してください。

『Oracle Application Server Web Cache管理者ガイド』に記載されている手順の概要について説明します。

  1. ホスト1またはホスト2でOracle Application Server Web Cacheを使用してロード・バランサを作成します。Oracle Application Server Web Cacheは、「ステップ1a: 2つの異なるホストへのOracle Application Serverのインストール」において、J2EE and Web Cacheインストール・タイプでインストールされています。

  2. 両ホストで、Oracle Application Server Web Cacheを起動します。

    opmnctl startproc ias-component=WebCache
    
    

    ロード・バランサは両ホスト上のOracle HTTP Serverをポイントします。


関連資料:

『Oracle Application Server Web Cache管理者ガイド』。このガイドにアクセスするには、http://www.oracle.com/technology/documentation/appserver101202.html「Oracle Application Server 10g Release 2 (10.1.2.0.2)」ヘッダーの下にある「View Library」をクリックし、次に「Caching」をクリックしてください。

2.2.4 ステップ1d: 両ホストでのOracle BPEL Serverの構成

  1. ホスト1とホスト2の両方でOracle BPEL Serverを停止します。

    • Windowsオペレーティング・システムで、「スタート」「プログラム」「Oracle - Home_Name」→「Oracle BPEL Process Manager 10.1.2」「Stop BPEL PM Server」を選択します。

    • UNIXオペレーティング・システムでは、次のスクリプトを実行します。

      $Oracle_Home/integration/orabpel/shutdownorabpel.sh
      
      
  2. Oracle Application Server Web Cacheのロード・バランサのURLを取得します。このURLは次の要素から構成されます。

    • Oracle Application Server Web Cacheがインストールされているホストの名前、またはインターネット・プロトコル(IP)アドレス。

    • ポート番号(たとえば、HTTPを使用している場合、UNIXでは7777、Windowsでは80)。このポート番号の取得には、次のツールを使用できます。

      • Oracle Enterprise Manager 10g Application Server ControlコンソールのWeb Cacheホームページで、「管理」タブ→「ポート」を選択してください。

      • Oracle Application Server Web Cache Managerで、「ポート」を選択してください。

  3. Oracle_Home\integration\orabpel\system\config\collaxa-config.xmlファイルで、ホスト1およびホスト2に対する次の2つのパラメータ値を、ロード・バランサURLをポイントするように変更します。

    <property id="soapServerUrl">
            <name>BPEL soap server URL</name>
            <value>http://host:port</value>
    . . . .
    . . . .
    <property id="soapCallbackUrl">
            <name>BPEL soap callback URL</name>
            <value>http://host:port</value>
    
    

    注意:

    これらのパラメータは、Oracle BPEL Adminコンソールの「構成」タブで編集することもできます。

    次に例を示します。

    <property id="soapServerUrl">
            <name>BPEL soap server URL</name>
            <value>http://myhost.us.oracle.com:80</value>
    . . . .
    . . . .
    <property id="soapCallbackUrl">
            <name>BPEL soap callback URL</name>
            <value>http://myhost.us.oracle.com:80</value>
    
    
  4. 次のディレクトリを削除します。

    ORACLE_HOME\integration\orabpel\domain\default\tmp
    
    
  5. ホスト1とホスト2の両方でOracle BPEL Serverを再起動します。

  6. アプリケーション・サーバー中間層をクラスタリングするかどうかに応じて、次の項を参照してください。

2.2.5 ステップ1e: Oracle Application Server中間層のクラスタの作成(オプション)


注意:

これは、Oracle BPEL Process Managerと、基礎となるアプリケーション・サーバー中間層(たとえば、Oracle Application Server)の両方をクラスタリングする場合にのみ必要な手順です。既存のアプリケーション・サーバー中間層のクラスタ上にOracle BPEL Process Manager 10.1.2.0.2のクラスタを作成することはできません。かわりに、(この章で説明されているとおり)Oracle BPEL Process Managerのクラスタを作成してから、アプリケーション・サーバー中間層のクラスタを作成する必要があります。

このステップでは、使用中のオペレーティング・システムに対応するOracle Application Serverのインストレーション・ガイド、および『Oracle Application Server高可用性ガイド』に記載されているファーム・リポジトリの作成プロシージャの概要について説明します。


注意:

この項で作成するOracle BPEL Process Managerのクラスタ・リポジトリは、「ステップ1a: 2つの異なるホストへのOracle Application Serverのインストール」でOracle Application Server J2EE and Web Cache中間層と関連付けたリポジトリや、「ステップ1b: Oracle Application ServerへのOracle BPEL Process Manager for OracleAS Middle Tierのインストール」でOracle BPEL Process Manager for OracleAS Middle Tierと関連付けたリポジトリとは異なります。

  1. ホスト1とホスト2の両方でOracle BPEL Serverを停止します。

  2. ホスト1とホスト2のOracle_Home\config\ias.propertiesで、次のプロパティをfalseに設定します。

    Orabpel.LaunchSuccess=false
    
    
  3. ホスト1に、ファイルまたはデータベースをベースにしたファーム・リポジトリを作成します。インストール中に表示されるファーム・リポジトリIDは必ず控えておいてください。

  4. ホスト1と同じファイルまたはデータベースをベースにしたファーム・リポジトリID情報を使用して、ホスト2にファイルまたはデータベースをベースにしたファーム・リポジトリを作成します。

  5. Oracle Enterprise Manager 10g Application Server Controlコンソールで、ホスト1のインスタンスとホスト2のインスタンス用のOC4Jコンテナ・クラスタを作成します。

    farm.gifの説明が続きます
    図farm.gifの説明

  6. ポートの競合エラーを解決するには、ホスト1またはホスト2のどちらかでOracle BPEL ServerのJMSポート番号を変更します。たとえば、ホスト1で次の操作を実行します。

    1. ホスト1でOracle BPEL Serverを停止します。

    2. Oracle_Home\opmn\conf\opmn.xmlファイルを開きます。

    3. ポート範囲を次の範囲から、

      <process-type id="OC4J_BPEL" module-id="OC4J">
      . . .
      <port id="jms" range="12601-12700"/>
      
      

      次の範囲へ変更します。

      <process-type id="OC4J_BPEL" module-id="OC4J">
      . . .
      <port id="jms" range="12602-12700"/>
      
      
    4. ホスト1でOracle BPEL Serverを再起動します。

  7. ホスト1とホスト2のOracle_Home\config\ias.propertiesで、次のプロパティをtrueにリセットします。

    Orabpel.LaunchSuccess=true
    

    注意:

    それぞれのクラスタ・ホストが異なるタイム・ゾーンに属している場合、Oracle BPEL Serverではローカル・システムが使用されるため、クラスタのBPELプロセスにおけるwaitアクティビティは失敗します。クラスタ・ホストのシステム・クロックの設定には、同じタイム・ゾーンと時刻を使用してください。

  8. 「ステップ2: Oracle BPEL Process ManagerのクラスタでのBPELプロジェクトのコンパイルおよびデプロイ」に進みます。


関連資料:

Oracle Application Serverのインストールに関するドキュメント、および『Oracle Application Server高可用性ガイド』。これは次のURLにある「Oracle Application Server 10gリリース2(10.1.2.0.2)ドキュメント」リンクの下にあります。
http://www.oracle.com/technology/documentation/appserver101202.html

2.3 ステップ2: Oracle BPEL Process ManagerのクラスタでのBPELプロジェクトのコンパイルおよびデプロイ


注意:

この手順に従わない場合、Oracle BPEL Serverの1つを停止したときに、一部のプロセスは失効とマークされます。

  1. bpel.xmlデプロイメント・ディスクリプタ・ファイルのWSDLの位置を表すURLがすべて、ロード・バランサURLをポイントしていることを確認します。

  2. 次に示す方法の1つを使用して、プロジェクトをコンパイルし、デプロイします。


    注意:

    次の点はBPELプロジェクトに影響を与えますので、注意してください。また、これらはLoanFlowPlusの例にも影響します。
    • BPELプロジェクトがEnterprise JavaBeans(EJB)バインディング、JMS、RMIなどにホスト名やポート番号を依存している場合、あるホストから別のホストにBPEL JARファイルを直接コピーすることはできません。かわりに、JARファイルを一時ディレクトリにコピーしてから抽出し、ホスト名とポート番号を変更して、再生成する必要があります。(手順7を参照。)

    • ホスト1にデプロイ済のEJB JARおよびアプリケーション・ユーザー・インタフェースがBPELプロジェクトに必要な場合、これらをホスト2に再デプロイする必要があります。(手順8を参照。)


2.3.1 あるクラスタ・ノードから別のクラスタ・ノードにBPEL JARファイルをコピー(推奨)

  1. ホスト2のOracle HTTP ServerおよびOracle BPEL Serverを停止します。

  2. アプリケーション・ツール(bpelcobantまたはJDeveloper BPEL Designer)を使用して、プロジェクトをコンパイルし、ホスト1のOracle BPEL Serverにデプロイします。

  3. ホスト1のOracle_Home\integration\orabpel\domain\default\deployから、ホスト2のOracle_Home\integration\orabpel\domain\default\deployにBPEL JARファイルを手動でコピーします。

  4. ホスト2のOracle HTTP ServerおよびOracle BPEL Serverを再起動します。

2.3.2 リモート・ホスト、もしくはホスト1または2で、JDeveloper BPEL Designerからプロジェクトをコンパイルしてデプロイ

  1. リモートの場所(たとえば、ホスト3)からJDeveloper BPEL Designerを起動します。

  2. ロード・バランサURLへのBPEL Process Manager Server接続を作成します。

  3. ホスト2のOracle HTTP ServerおよびOracle BPEL Serverを停止します。

  4. プロジェクトをコンパイルし、デプロイします。プロジェクトは、ホスト1のOracle BPEL Serverにデプロイされます。

  5. ホスト2のOracle HTTP ServerおよびOracle BPEL Serverを停止します。

  6. ホスト2のOracle HTTP ServerおよびOracle BPEL Serverを再起動します。

  7. プロジェクトをコンパイルし、デプロイします。プロジェクトは、ホスト2のOracle BPEL Serverにデプロイされます。

  8. ホスト1のOracle HTTP ServerおよびOracle BPEL Serverを再起動します。

2.3.3 各BPEL Serverでローカルにプロジェクトをコンパイルしてデプロイ

  1. プロジェクトが各ホストのローカル・ファイル・システムに存在する場合、ホスト1のプロジェクトとホスト2のプロジェクトが同一であることを確認します。つまり、2つのホストにあるプロジェクトには、まったく同じBPELスーツケース・ファイル(内容やサイズが同じXSD、XML、WSDL、BPELファイルなど)が含まれている必要があります。

  2. ホスト2のOracle HTTP ServerおよびOracle BPEL Serverを停止します。

  3. 適切なツール(bpelcobantまたはJDeveloper BPEL Designer)を使用して、ホスト1でプロジェクトをコンパイルし、デプロイします。

  4. ホスト2のOracle HTTP ServerおよびOracle BPEL Serverを停止します。

  5. ホスト2のOracle HTTP ServerおよびOracle BPEL Serverを再起動します。

  6. 適切なツール(bpelcobantまたはJDeveloper BPEL Designer)を使用して、ホスト2でプロジェクトをコンパイルし、デプロイします。

  7. ホスト1のOracle HTTP ServerおよびOracle BPEL Serverを再起動します。

2.4 ステップ3: Oracle BPEL Process Managerのクラスタのテスト

  1. ロード・バランサURLをポイントするように、WSDLの位置を表すURLを変更します。

    • Oracle_Home\integration\orabpel \samples\demos\LoanDemoPlus\LoanFlowPlus\bpel.xml

    • Oracle_Home\integration\orabpel \samples\utils\AsyncLoanService\StarLoan\bpel.xml

  2. ホスト2のOracle HTTP ServerおよびOracle BPEL Serverを停止します。

  3. ホスト1のOracle_Home\integration\orabpel \samples\demos\LoanDemoPlus\LoanFlowPlusディレクトリで、obant.bat(Windowsの場合)、またはobant.sh(UNIXの場合)を実行して、LoanFlowPlusをコンパイルし、デプロイします。

  4. ホスト2のOracle HTTP ServerおよびOracle BPEL Serverを再起動します。

  5. Oracle_Home\integration\orabpel\domains\default\deployにある次のBPEL JARファイルを、ホスト1からホスト2の同じディレクトリにコピーします。

    bpel_AmericanLoan_1.0.jar
    bpel_CreditRatingService_1.0.jar
    bpel_StarLoan_1.0.jar
    bpel_UnitedLoan_1.0.jar
    
    
  6. ホスト1のOracle_Home\integration\orabpel\domains\default\deployにあるbpel_LoanFlowPlus_1.0.jarを、ホスト2の一時ディレクトリ(たとえば、C:\temp)にコピーします。

  7. ホスト1のホスト名を含むEJBバインディングのWSDLファイル(CustomerService.wsdl)を持つため、bpel_LoanFlowPlus_1.0.jarを再生成します。

    1. 次のようにパスを設定します。

      Set PATH=Oracle_Home\jdk\bin;%PATH%
      
      
    2. 次の手順を実行します。

      mkdir C:\temp\newJar
      cd C:\temp\newJar
      jar xvf ..\bpel_LoanFlowPlus_1.0.jar
      
      
    3. CustomerService.wsdlのホスト名をホスト1からホスト2に変更します。

    4. JARファイルを再作成します。

      jar cvfm ..\new_bpel_LoanFlowPlus_1.0.jar META-INF\MANIFEST.MF *
      
      
    5. C:\temp\new_bpel_LoanFlowPlus_1.0.jarを、ホスト2のOracle_Home\integration\orabpel\domains\default\deploy\bpel_LoanFlowPlus_1.0.jarにコピーします。

  8. 次の手順を実行し、ホスト2にEJB JARおよびアプリケーション・ユーザー・インタフェースを再デプロイします。

    cd Oracle_Home\integration\orabpel\samples\demos\LoanDemoPlus\LoanFlowPlus
    obant.bat CustomerService
    obant.bat LoanFlowPlusUI
    obant.bat ExceptionDashboardUI
    cd Oracle_Home\integration\orabpel\samples\utils\AsyncLoanService
    obant.bat StarLoanUI
    
    
  9. BPELのクラスタ・コンソールを開きます。

    http://load_balancer_hostname:port/BPELConsole
    
    
  10. コンソール、またはhttp://load_balancer_hostname:port/LoanFlowPlusUIからLoanFlowPlusを呼び出します。

  11. Oracle_Home\opmn\logs\OraBPEL~OC4J_BPEL~default_island~1ログ・ファイルを見て、Oracle BPEL Serverの1つがリクエストを処理しているかどうか(たとえば、ホスト1のOracle BPEL Serverがリクエストを処理しているかどうか)を確認します。

  12. ホスト1でOracle BPEL Serverを停止します。

  13. StarLoanUIおよびLoanFlowPlusUIから、ユーザー・タスクを完了します。

    この時点で、ホスト2のOracle BPEL Serverは未完のLoanFlowPlus BPELプロセスを引き取り、処理を続行します。

2.5 トラブルシューティング

BPELプロセス・コードを確実に実行するにあたり、注意が必要ないくつかの例外があります。たとえば、外部状態の変更といった副次的な影響を持つJavaコードの実行に、Java Execを使用する場合です。この状況を回避するには、次のアプローチのいずれかを使用します。

ただし、J2EE Connector Architecture(JCA)アダプタのように、JTAトランザクションに登録可能なアダプタでは、同じトランザクション性が自動的に取得され、完全な信頼性を維持します。

2.6 まとめ

この章では、Oracle BPEL Process Managerのクラスタを作成し、1つのサーバーに障害が発生しても実行中のBPELプロセスを妨げないという例を示しています。クラスタを構成するには、すべてのOracle BPEL Process Managerにロード・バランサと共通のデハイドレーション・ストア・データベースが必要です。次の2種類のクラスタリングがサポートされています。