ヘッダーをスキップ
Oracle Fusion Middleware Oracle SOA Suiteエンタープライズ・デプロイメント・ガイド
11gリリース1(11.1.1)
B55899-01
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

5 SOAコンポーネントを使用するためのドメインの拡張

この章では、構成ウィザードを使用して、SOAコンポーネントを扱うことができるようにドメインを拡張する方法を説明します。このドメインは、第4章「ドメインの作成」で作成したものです。


重要:

セットアップのプロセスを開始する前に、リリース・ノートに目を通してインストールとデプロイメントに関する補足の考慮事項を確認しておくことを強くお薦めします。


注意:

SOAHOST1とSOAHOST2でSOAコンポーネントを実行する場合にのみ、この章の手順に従ってください。WebCenterトポロジでSOAコンポーネントを実行しない場合は、この章の手順を省略してかまいません。

この章の項目は次のとおりです。

5.1 SOAHOST1VHN2とSOAHOST2VHN1の有効化

SOAドメインでは、SOA管理対象サーバーに仮想IP(VIP)を使用します。このVIPは、2台のSOAマシン(SOAHOST1のSOAHOST1VHN2およびSOAHOST2のSOAHOST2VHN1)で有効にする必要があります。VIPを有効にするには、第4.3項「SOAHOST1でのSOAHOST1VHN1の有効化」で説明している手順に従ってください。

5.2 SOAコンポーネントを使用するためのドメインの拡張

この手順では、第4章「ドメインの作成」で作成したドメインを、SOAコンポーネントを扱うことができるように拡張します。


注意:

ドメインを拡張する前に、現在のドメインをバックアップする必要があります。ドメインの拡張時になんらかのエラーが発生した場合は、このバックアップを使用してリカバリできます。Oracle Fusion Middlewareの管理者ガイドを参照してください。


注意:

Oracle SOAは、クォーツを使用してそのジョブとスケジュールをデータベースで管理します。クォーツ・ジョブをクラスタ全体にわたって正しく実行できるようにするには、SOA WebLogicクラスタのシステム・クロックを同期化する必要があります。

  1. ディレクトリを構成ウィザードの場所に変更します。この場所はSOAホーム・ディレクトリにあります(すべてのデータベース・インスタンスを稼働状態にすることをお薦めします)。

    SOAHOS1> cd ORACLE_BASE/product/fmw/soa/common/bin
    
  2. 構成ウィザードを開始します。

    SOAHOST1> ./config.sh
    

    注意:

    ドメインの作成で使用したシェルおよび環境から構成ウィザードを実行する場合は、CONFIG_JVM_ARGS=-DTemplateCatalog.enable.selectable.all=true変数を選択解除する必要があります。この選択を解除しないと、存在するすべてのテンプレートが構成ウィザードで表示されます。これらは、SOAコンポーネントを使用するためのドメインの拡張では不要です。

  3. 「ようこそ」画面で、「既存のWebLogicドメインの拡張」を選択し、「次へ」をクリックします。

  4. 「WebLogicドメイン・ディレクトリ」画面で、WebLogicドメイン・ディレクトリ(ORACLE_BASE/admin/<domain_name>/aserver/<domain_name>)を選択し、「次へ」をクリックします。

  5. 「拡張ソースの選択」画面で、次の手順を実行します。

    • 以下の追加製品をサポートするために、自動的にドメインを拡張する」を選択します。

    • 次の製品を選択します。

      • Oracle SOA Suite 11.1.1.0

      次の製品はすでに選択されてグレー表示されています。これらの製品は、第4.4項「SOAHOST1での構成ウィザードを使用したドメインの作成」の手順でドメインを作成したときに選択されたものです。

      • WebLogic Serverの基本ドメイン

      • JRF

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

  6. このドメインではOracle JRFが定義済であることを示す「競合の検出」メッセージが表示された場合は、「既存のコンポーネントを保持する」オプションを選択して、「OK」をクリックします。

  7. 「JDBCコンポーネント・スキーマの構成」画面(図5-1)で、次の手順を実行します。

    1. 表で「SOA Infrastructure」、「User Messaging Service」および「SOA MDS Schema」が表示された各行を選択します。

    2. 次のパネルで選択したコンポーネント・スキーマをRACマルチ・データ・ソース・スキーマとして構成します。」を選択します。

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

    図5-1「JDBCコンポーネント・スキーマの構成」画面

    図5-1の説明
    「図5-1「JDBCコンポーネント・スキーマの構成」画面」の説明

  8. 「RACマルチ・データ・ソース・コンポーネント・スキーマの構成」画面(図5-2)で、次の手順を実行します。

    1. SOA Infrastructure」を選択します。

    2. 次の各フィールドに値を入力して、RCUでシードされたRACデータベースの接続情報を指定します。

      • ドライバ: 「Oracle driver (Thin) for RAC Service-Instance connections, Versions:10, 11」を選択します。

      • サービス名: データベースのサービス名を入力します(soaedg.mycompany.comなど)。

      • ユーザー名: スキーマの完全なユーザー名(接頭辞を含む)を入力します。図5-2に示すユーザー名では、RCUから作成されたスキーマの接頭辞にsoedgが使用されたことが前提となっています。

      • パスワード: スキーマへのアクセスに使用するパスワードを入力します。

    3. 追加」をクリックし、最初のRACインスタンスの詳細を入力します。

    4. この手順をRACインスタンスごとに実行します。

    5. SOA Infrastructure」を選択解除します。

    6. User Messaging Service」を選択します。

    7. ユーザー・メッセージング・スキーマについて、前述のb、cおよびdの各手順を繰り返します。

    8. User Messaging Service」を選択解除します。

    9. SOA MDS Schema」を選択します。

    10. SOA MDSスキーマについて、前述のb、cおよびdの各手順を繰り返します。

    11. OWSM MDSスキーマの情報は変更しません。

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

    図5-2「RACマルチ・データ・ソース・コンポーネント・スキーマの構成」画面

    図5-2の説明
    「図5-2「RACマルチ・データ・ソース・コンポーネント・スキーマの構成」画面」の説明

  9. 「JDBCデータ・ソースのテスト」画面で、各接続のテストが自動的に行われます。「ステータス」列に結果が表示されます。すべての接続が正常に確立したことを確認してください。正常に接続できない場合は、「前へ」をクリックして前の画面に戻り、入力内容を修正します。

    すべての接続に成功したら「次へ」をクリックします。

  10. 「オプションの構成を選択」画面で「管理対象サーバー、クラスタ、およびマシン」、「デプロイメントとサービス」の順に選択します。「次へ」をクリックします。

  11. 「管理対象サーバーの構成」画面で、必要な管理対象サーバーを追加します。

    soa_server1というサーバーが自動的に作成されます。このサーバーの名前をWLS_SOA1に変更して、表5-1に示す属性をこのサーバーに割り当てます。続いて、WLS_SOA2という新しいサーバーを追加します。管理対象サーバーであるWLS_WSM1とWLS_WSM2は、拡張するドメインに属しているのですでに存在しています。最終的に、管理対象サーバーのリストは表5-1のリストと一致する必要があります。

    表5-1 管理対象サーバー

    名前 リスニング・アドレス リスニング・ポート SSLリスニング・ポート SSL有効

    WLS_SOA1

    VIP2

    8001

    n/a

    いいえ

    WLS_SOA2

    VIP3

    8001

    n/a

    いいえ

    WLS_WSM1

    SOAHOST1

    7010

    n/a

    いいえ

    WLS_WSM2

    SOAHOST2

    7010

    n/a

    いいえ


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

  12. 「クラスタの構成」画面で、次のクラスタを追加します。

    表5-2 クラスタ

    名前 クラスタ・メッセージング・モード マルチキャスト・アドレス マルチキャスト・ポート クラスタ・アドレス

    SOA_Cluster

    ユニキャスト

    n/a

    n/a

    空白

    WSM-PM_Cluster

    ユニキャスト

    n/a

    n/a

    空白


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

  13. 「サーバーのクラスタへの割当」画面で、次のようにサーバーをクラスタに割り当てます。

    • SOA_Cluster:

      • WLS_SOA1

      • WLS_SOA2

    • WSM-PM_Cluster:

      • WLS_WSM1

      • WLS_WSM2

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

  14. 「マシンの構成」画面で、次の手順を実行します。

    • デフォルトで表示される「LocalMachine」を削除します。

    • Unixマシン」タブをクリックします。次のエントリが表示されます(表5-3)。

      表5-3 マシン

      名前 ノード・マネージャのリスニング・アドレス

      SOAHOST1

      SOAHOST1

      SOAHOST2

      SOAHOST2


    その他すべてのフィールドはデフォルト値のままにします。

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

  15. 「サーバーのマシンへの割当」画面で、次のようにサーバーをマシンに割り当てます。

    • SOAHOST1:

      • AdminServer

      • WLS_SOA1

      • WLS_WSM1

    • SOAHOST2:

      • WLS_SOA2

      • WLS_WSM2

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

  16. 「デプロイメントのクラスタまたはサーバーへのターゲット設定」画面で、次のターゲットを確認します。

    • usermessagingserverおよびusermessagingdriver-emailは、SOA_Clusterにのみターゲット設定する必要があります(usermessaging-xmpp、usermessaging-smppおよびusermessaging-voicexmlの各アプリケーションはオプションです)。

    • oracle.rules.*oracle.sdp.*およびoracle.soa.*の各デプロイメントは、SOA_Clusterにのみターゲット設定する必要があります。

    • WSM-PMWSM-PM_Clusterにのみターゲット設定する必要があります。

    • DMSアプリケーション」は、SOA_ClusterWSM-PM_Clusterおよび「管理サーバー」にターゲット設定する必要があります。

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

  17. 「サービスのクラスタまたはサーバーへのターゲット設定」画面で、次のターゲットを確認します。

    • OWSM起動クラス」は、WSM-PM_Clusterにのみターゲット設定します。

    • mds-owsmmds-owsm-rac0およびmds-owsm-rac1は、WSM-PM_ClusterおよびAdminServerの両方にターゲット設定します。

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

  18. 「WebLogicドメインの確認」画面で、「次へ」をクリックします。

  19. ドメインを拡張しているため、「WebLogicドメインの拡張」画面に表示される各値は変更しないでください。「拡張」をクリックします。


    注意:

    ドメイン構成ポートがホスト・ポートと競合していることを警告するダイアログが表示されますが、「OK」をクリックして閉じてください。この警告は、すでにインストールされているWSM-PMが原因で表示されます。

  20. 「ドメインの拡張」画面で、「完了」をクリックします。この構成を有効にするには、管理サーバーを再起動する必要があります。

5.3 管理サーバーの再起動

管理サーバーを再起動して、ドメインに対する変更内容を適用します。

  1. 管理サーバーを停止します。

    SOAHOST1> cd ORACLE_BASE/admin/<domain_name>/aserver/<domain_name>/bin
    SOAHOST1> ./stopWebLogic.sh
    
  2. 管理サーバーを起動します。

    SOAHOST1> ./startWebLogic.sh
    

5.4 コンポジットをデプロイするためのOracle Coherenceの構成

コンポジットのデプロイではマルチキャスト通信がデフォルトで使用されますが、SOAエンタープライズ・デプロイメントではユニキャスト通信の使用をお薦めします。セキュリティ上の理由からマルチキャスト通信を無効にしている場合は、ユニキャストを使用します。


注意:

デプロイメントに使用するOracle Coherenceフレームワークの構成が正しくないと、SOAシステムを起動できないことがあります。SOAシステムを実行するネットワーク環境に応じて、デプロイメント・フレームワークを適切にカスタマイズする必要があります。この項で説明する構成の使用をお薦めします。

ユニキャスト通信を使用したデプロイメントの通信の有効化

マルチキャスト通信を使用すると、クラスタの中でコンポジットの動的なデプロイメント先となるすべてのメンバーをOracle Fusion Middleware SOAで検出できます。しかし、ユニキャスト通信を使用した場合、この方法ではノードから他のクラスタ・メンバーを検出できません。したがって、クラスタに属するノードを指定する必要があります。ただし、クラスタのすべてのノードを指定する必要はありません。クラスタに追加した新しいノードから既存ノードのいずれかを検出するために必要な数のノードを指定するだけでかまいません。この結果、クラスタに追加した新しいノードからクラスタにある他のすべてのノードを検出できます。また、同じマシンで複数のIPを使用できるSOAエンタープライズ・デプロイメントなどの構成では、特定のホスト名を使用してOracle Coherenceクラスタを作成するようにOracle Coherenceを構成する必要があります。


ヒント:

SOAコンポジットのデプロイメント時に高可用性を確保するには、適切な数のノードを指定して、どの時点でもそのうちのいずれかが必ず稼働しているようにします。

tangosol.coherence.wka<n>システム・プロパティを使用してノードを指定します。ここで<n>は1〜9の番号であり、指定できるノードは最大9個です。この番号は1から開始し、以降は順番に割り当てる必要があります。不連続な番号の割当てはできません。また、Oracle Coherenceでクラスタを作成するために使用するホスト名をtangosol.coherence.localhostシステム・プロパティで指定します。このローカル・ホスト名には、SOAサーバーでリスナーのアドレスとして使用する仮想ホスト名を指定する必要があります(SOAHOST1VHN2とSOAHOST2VHN1)。このプロパティを設定するには、Oracle WebLogic Server管理コンソールの「サーバーの起動」タブにある「引数」フィールドに-Dtangosol.coherence.localhostパラメータを追加します(図5-3)。


注意:

SOAHOST1VHN2は、SOAHOST1でWLS_SOA1がリッスンする仮想IPにマップされる仮想ホスト名です。SOAHOST2VHN1は、SOAHOST2でWLS_SOA2がリッスンする仮想IPにマップされる仮想ホスト名です。

図5-3 Oracle WebLogic Server管理コンソールの「サーバーの起動」タブを使用したホスト名の設定

図5-3の説明
「図5-3 Oracle WebLogic Server管理コンソールの「サーバーの起動」タブを使用したホスト名の設定」の説明

ホスト名の指定

Oracle Coherenceで使用するホスト名を追加するには、次の手順を実行します。

  1. Oracle WebLogic Server管理コンソールにログインします。

  2. 「ドメイン構造」ウィンドウで「環境」ノードを開きます。

  3. サーバー」をクリックします。「サーバーの概要」ページが表示されます。

  4. 表の「名前」列にハイパーリンクで表示されているサーバーの名前(WLS_SOA1またはWLS_SOA2)をクリックします。選択したサーバーの「設定」ページが表示されます。

  5. ロックして編集」をクリックします。

  6. 「構成」タブをクリックして、「サーバーの起動」タブをクリックします。

  7. WLS_SOA1とWLS_SOA2について、「引数」フィールドに次の値を入力します。

    WLS_SOA1については次の値を入力します。

    -Dtangosol.coherence.wka1=SOAHOST1VHN2
    -Dtangosol.coherence.wka2=SOAHOST2VHN1
    -Dtangosol.coherence.localhost=SOAHOST1VHN2
    

    WLS_SOA2については次の値を入力します。

    -Dtangosol.coherence.wka1=SOAHOST2VHN1
    -Dtangosol.coherence.wka2=SOAHOST1VHN2
    -Dtangosol.coherence.localhost=SOAHOST2VHN1
    
  8. 保存」→「変更のアクティブ化」をクリックします。


注意:

これらの変数が管理対象サーバーに正しく渡されることを確認する必要があります(これらの変数はサーバーの出力ログに記録されます)。Oracle Coherenceフレームワークに問題があると、soa-infraアプリケーションを起動できないことがあります。


注意:

このマルチキャスト・アドレスとユニキャスト・アドレスは、WebLogic Serverクラスタでクラスタ通信に使用するものとは異なります。SOAでは、2つのエンティティ(WebLogic Serverクラスタおよびコンポジットのデプロイ先グループ)の通信プロトコルが異なる場合でも、単一のWebLogic Serverクラスタの各メンバーにコンポジットを確実にデプロイできます。

5.5 soa-createUDD.pyスクリプトの実行

SOAHOST1上でWLS_SOA1管理対象サーバーを起動する前に、soa-createUDD.pyスクリプトを実行する必要があります。このスクリプトは、WLSTをオフラインで使用して実行します。

  1. setDomainEnv.shスクリプトを実行して環境を設定します。

    SOAHOST1>. ORACLE_BASE/admin/<domain_name>/aserver/<domain_name>/bin/setDomainEnv.sh
    
  2. soa-createUDD.pyスクリプトを実行します。このスクリプトは、ORACLE_HOME/binディレクトリにあります。

    SOAHOST1> ORACLE_BASE/product/fmw/jrockit_160_05_R27.6.2-20/bin/java weblogic.WLST ORACLE_HOME/bin/soa-createUDD.py --domain_home ORACLE_BASE/admin/<domain_name>/aserver/<domain_name> --soacluster SOA_Cluster
    
  3. 管理サーバーを再起動します。第5.3項「管理サーバーの再起動」の手順を参照してください。

  4. 次のモジュールがOracle WebLogic Server管理コンソールに表示されることを確認します。

    • SOAJMSModuleUDDs

      このモジュールを検証します。そのためには、まず「ドメイン構造」ウィンドウで「サービス」ノードを開き、Oracle WebLogic Server管理コンソールで「メッセージング」ノードを開きます。「JMSモジュール」を選択します。表の「名前」列で「SOAJMSMOduleUDDS」(これはハイパーリンクとして表示されています)を選択します。「サブデプロイメント」タブを開いて、「SOAJMSSubDM」をクリックします。

      このモジュールが「SOAJMSServer_auto_1」と「SOAJMSServer_auto_2」にターゲット設定されていることを確認します。

    • UMSJMSSystemResource

      このモジュールを検証します。そのためには、まず「ドメイン構造」ウィンドウで「サービス」ノードを開き、Oracle WebLogic Server管理コンソールで「メッセージング」ノードを開きます。「JMSモジュール」を選択します。表の「名前」列で「UMSJMSSystemResource」(これはハイパーリンクとして表示されています)を選択します。「サブデプロイメント」タブを開き、「UMSJMSSubDMSOA」をクリックします。

      このモジュールが「UMSJMSServer_auto_1」と「UMSJMSServer_auto_2」にターゲット設定されていることを確認します。

5.6 WLS_SOAn管理対象サーバーに対するホスト名検証の無効化

この手順は、管理サーバーで様々なノードを認証するための適切な証明書を設定していない場合に必要です(第7章「ノード・マネージャの設定」を参照)。サーバー証明書を構成していないと、様々なWebLogicサーバーを管理する際にエラーが発生します。このエラーを回避するには、トポロジの設定と検証を行う際にホスト名の検証を無効にし、EDGトポロジの構成完了後に第7章「ノード・マネージャの設定」の説明に従って再びホスト名の検証を有効にします。

ホスト名の検証を無効にするには、次の手順を実行します。

  1. Oracle WebLogic Server管理コンソールにログインします。

  2. ロックして編集」をクリックします。

  3. 「ドメイン構造」ウィンドウの「環境」ノードを開きます。

  4. サーバー」をクリックします。「サーバーの概要」ページが表示されます。

  5. 表の「名前」列で「WLS_SOA1」(これはハイパーリンクとして表示されています)を選択します。「設定」ページが表示されます。

  6. SSL」タブを選択します。

  7. 表示されたページの「詳細」セクションを開きます。

  8. 「ホスト名の検証」を「なし」に設定します。

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

  10. WLS_SOA2管理対象サーバーについてこの手順を繰り返します。

  11. 変更を保存してアクティブ化します。

5.7 SOAHOST1でのノード・マネージャの再起動

SOAHOST1上でノード・マネージャを再起動するには、次の手順を実行します。

  1. ノード・マネージャを停止します。

    SOAHOST1> cd ORACLE_BASE/product/fmw/wlserver_10.3/server/bin
    SOAHOST1> ./stopNodeManager.sh
    
  2. ノード・マネージャを起動します。

    SOAHOST1> ./startNodeManager.sh
    

5.8 管理対象サーバーのドメイン・ディレクトリへのドメイン変更内容の伝播

起動スクリプトとクラスパス構成を管理サーバーのドメイン・ディレクトリから管理対象サーバーのドメイン・ディレクトリに伝播するには、次の手順を実行します。

  1. 管理対象サーバーのドメイン・ディレクトリと管理対象サーバーのアプリケーション・ディレクトリのコピーを作成します。

  2. 次のコマンドを使用してこれらのディレクトリを移動します(両方のディレクトリを1行のコマンドで処理します)。

    SOAHOST1> mv ORACLE_BASE/admin/<domain_name>/mserver/<domain_name> ORACLE_BASE/admin/<domain_name>/mserver/<domain_name>backup
    
  3. 次の一連のコマンドを使用し、SOAHOST1でpackコマンドを実行してテンプレート・パックを作成します。

    SOAHOST1> cd ORACLE_BASE/product/fmw/soa/common/bin
    
    SOAHOST1> ./pack.sh -managed=true -domain=ORACLE_BASE/admin/<domain_name>/aserver/<domain_name> -template=soadomaintemplateExtSOA.jar -template_name=soa_domain_templateExtSOA
    

    注意:

    管理サーバー(AdminServer)のドメイン・ディレクトリを共有している管理対象サーバーが存在しない場合は、ant-soa-util.xmlスクリプトを実行してSOA構成の整合性を確保します。ORACLE_HOME/bin/ant-soa-util.xmlにあるこのスクリプトは、ドメインを管理サーバー専用ドメインに変換します。
    SOAHOST1> cd ORACLE_BASE/admin/<domain_name>/aserver/<domain_name>/bin
    SOAHOST1> . ./setDomainEnv.sh
    SOAHOST1> ant -f ORACLE_BASE/product/fmw/soa/bin/ant-soa-util.xml config-for-AdminServer-only -Ddomain.home=ORACLE_BASE/admin/<domain_name>/aserver/<domain_name>
    

    このドメインのコピーからは、どの管理対象サーバーも起動できません。pack/unpackユーティリティを使用してSOAクラスタをスケールアウトする場合は、ant -f ant-soa-util.xml restore-config-for-soaを実行して管理サーバー・ディレクトリで構成をリストアしてからpackを実行する必要があります。


  4. 次のようにunpackコマンドをSOAHOST1上で実行して、伝播されたテンプレートを管理対象サーバーのドメイン・ディレクトリに解凍します。

    SOAHOST1> ./unpack.sh -domain=ORACLE_BASE/admin/<domain_name>/mserver/<domain_name>/ -template=soadomaintemplateExtSOA.jar -app_dir=ORACLE_BASE/admin/<domain_name>/mserver/apps
    

5.9 SOAHOST1でのWLS_SOA1管理対象サーバーの起動

SOAHOST1上でWLS_SOA1管理対象サーバーを起動するには、次の手順を実行します。

  1. 管理コンソール(http://SOAHOST1VHN1:7001/console)にアクセスします。

  2. サーバー」をクリックします。

  3. 制御」タブを開きます。

  4. WLS_SOA1」を選択します。

  5. 起動」をクリックします。


注意:

SOAHOST1VHN1は、SOAHOST1で管理サーバーがリスニングする仮想IPにマップされる仮想ホスト名です。

5.10 管理対象サーバーWLS_SOA1とWLS_WSM1の検証

管理対象サーバーWLS_SOA1とWLS_WSM1を検証するには、次の手順を実行します。

  1. 管理コンソールに表示されるサーバーのステータスが「実行中」であることを確認します。サーバーのステータスが「起動しています」または「再開中です」である場合は、「起動済み」になるまで待ちます。「管理」や「失敗」などの別のステータスが表示される場合は、サーバーの出力ログ・ファイルを調べ、エラーがないか確認します。考えられる原因は、第10.6項「トラブルシューティング」を参照してください。

  2. http://SOAHOST1VHN2:8001/soa-infraにアクセスしてWLS_SOA1のステータスを確認します。

  3. http://SOAHOST1:7010/wsm-pmにアクセスしてWLS_WSM1のステータスを確認します。

  4. http://SOAHOST1VHN2:8001/b2bにアクセスしてB2Bのステータスを確認します。

  5. http://SOAHOST1VHN2:8001/integration/worklistappにアクセスしてワークリスト・アプリケーションのステータスを確認します。


注意:

WLS_SOAnにVIPを使用している場合、これらのURLはここにあげたものとは異なるものになります。

5.11 unpackユーティリティを使用したSOAHOST2へのドメイン構成の伝播

ドメイン構成を伝播するには、次の手順を実行します。

  1. 次のコマンドをSOAHOST1で実行し、前の手順で作成したテンプレート・ファイルをSOAHOST2にコピーします。

    SOAHOST1> cd ORACLE_BASE/product/fmw/soa/common/bin
    
    SOAHOST1> scp soadomaintemplateExtSOA.jar oracle@node2:ORACLE_BASE/product/fmw/wlserver_10.3/common/bin
    
  2. unpackコマンドをSOAHOST2で実行し、伝播されたテンプレートを解凍します。


    注意:

    SOAHOST2にある既存のドメイン・ディレクトリを削除する必要があります。削除しないと、この操作を正常に実行できません。unpackコマンドを実行すると、新しいドメイン・ディレクトリが自動的に作成されます。このため、unpackコマンドの実行場所であるノード(SOAHOST2)で稼動している管理対象サーバー(WLS_WSM2など)に固有の構成変更を実行済である場合は、これらの構成変更をもう一度実行する必要があります。

    SOAHOST2> cd ORACLE_BASE/product/fmw/wlserver_10.3/common/bin
    
    SOAHOST2> ./unpack.sh -domain=ORACLE_BASE/admin/<domain_name>/mserver/<domain_name>/ -template=soadomaintemplateExtSOA.jar -app_dir=ORACLE_BASE/admin/<domain_dir>/mserver/apps
    

5.12 SOAHOST2でのXEngineファイルの抽出

SOAHOST2でB2BのXEngineを有効にするには、次のようにXEngine tarの内容を手動で抽出する必要があります。

SOAHOST2>cd ORACLE_HOME/soa/thirdparty/edifecs
SOAHOST2>tar -xzvf XEngine.tar.gz

5.13 SOAHOST2でのノード・マネージャの再起動

第5.7項「SOAHOST1でのノード・マネージャの再起動」の手順をSOAHOST2で実行します。

5.14 WLS_SOA2管理対象サーバーの起動と検証

次の手順を実行して、WLS_SOA2管理対象サーバーを起動し、このサーバーが正しく構成されていることを確認します。

  1. 管理コンソールを使用してWWLS_SOA2管理対象サーバーを起動します。

  2. 管理コンソールに表示されるサーバーのステータスが「実行中」であることを確認します。サーバーのステータスが「起動しています」または「再開中です」である場合は、「起動済み」になるまで待ちます。「管理」や「失敗」などの別のステータスが表示される場合は、サーバーの出力ログ・ファイルを調べ、エラーがないかどうかを確認します。考えられる原因は、第10.6項「トラブルシューティング」を参照してください。

  3. http://SOAHOST2VHN1:8001/soa-infraにアクセスします。

  4. http://SOAHOST2VHN1:8001/b2bにアクセスしてB2Bのステータスを確認します。

  5. http://SOAHOST2VHN1:8001/integration/worklistappにアクセスしてワークリスト・アプリケーションのステータスを確認します。

5.15 WLS_SOAn管理対象サーバーについてのOracle HTTP Serverの構成

WLS_SOAn管理対象サーバーが属するSOA_ClusterにOracle HTTP Serverからルーティングできるようにするには、WebLogicClusterパラメータをこのクラスタにあるノードのリストに設定する必要があります。

  1. WEBHOST1とWEBHOST2で、ORACLE_BASE/ admin/<instance_name>/config/OHS/<component_name>/mod_wl_ohs.confファイルに次の行を追加します。

    # SOA soa-infra app
    <Location /soa-infra>
        SetHandler weblogic-handler
        WebLogicCluster SOAHOST1VHN2:8001,SOAHOST2VHN1:8001
    </Location>
    
    # Worklist
    <Location /integration/>
        SetHandler weblogic-handler
        WebLogicCluster SOAHOST1VHN2:8001,SOAHOST2VHN1:8001
    </Location>
    
    # B2B
    <Location /b2b>
        SetHandler weblogic-handler
        WebLogicCluster SOAHOST1VHN2:8001,SOAHOST2VHN1:8001
    </Location>
    
    # UMS prefs
    <Location /sdpmessaging/userprefs-ui >
        SetHandler weblogic-handler
        WebLogicCluster SOAHOST1VHN2:8001,SOAHOST2VHN1:8001
    </Location>
    
    # Default to-do taskflow
    <Location /DefaultToDoTaskFlow/>
        SetHandler weblogic-handler
        WebLogicCluster SOAHOST1VHN2:8001,SOAHOST2VHN1:8001
    </Location>
    
    # Workflow
    <Location /workflow>
        SetHandler weblogic-handler
        WebLogicCluster SOAHOST1VHN2:8001,SOAHOST2VHN1:8001
    </Location>
    

    注意:

    /workflowのエントリは省略可能です。このエントリは、ADFタスク・フォームと関連付けられたワークフロー・タスク用です。/workflowのURL自体は、フォームに応じた別の値とすることができます。

  2. WEBHOST1およびWEBHOST2で、Oracle HTTP Serverを再起動します。

    WEBHOST1> ORACLE_BASE/admin/<instance_name>/bin/opmnctl restartproc ias-component=ohs1
    WEBHOST2> ORACLE_BASE/admin/<instance_name>/bin/opmnctl restartproc ias-component=ohs2
    

WebLogicClusterパラメータで指定したサーバーは、起動時のプラグインに対してのみ重要な役割を持ちます。このノードのリストには、実行しているクラスタ・メンバーを1つ以上記述しておく必要があります。記述しておかないと、このプラグインで他のクラスタ・メンバーを検出できません。Oracle HTTP Serverの起動時には、リストに記述したクラスタ・メンバーを実行している必要があります。Oracle WebLogic Serverとこのプラグインの連携により、クラスタに発生した新規のメンバー、失敗したメンバーおよびリカバリしたメンバーを反映してサーバーのリストが自動的に更新されます。

次に例を示します。

WebLogic Serverプラグインの構成の詳細は、Oracle WebLogic ServerでWeb Serverプラグインを使用するOracle Fusion Middlewareのガイドを参照してください。

5.16 Oracle HTTP Serverを介したアクセスの検証

管理コンソールに表示されるサーバーのステータスが「実行中」であることを確認します。サーバーのステータスが「起動しています」または「再開中です」である場合は、「起動済み」になるまで待ちます。「管理」や「失敗」などの別のステータスが表示される場合は、サーバーの出力ログ・ファイルを調べ、エラーがないか確認します。考えられる原因は、第10.6項「トラブルシューティング」を参照してください。

次のURLにアクセスできることを確認します。webhostNには、各Oracle HTTP Serverホストの名前を指定します(WEBHOST1WEBHOST2など)。

両方のOracle HTTP ServerインスタンスからSOA_Clusterを検証します。

ロード・バランサを介してシステムにアクセスするために、ロード・バランサの構成を参照します。

5.17 フロントエンドHTTPホストおよびポートの設定

Oracle WebLogic Serverクラスタについて、フロントエンドHTTPのホストとポートを設定する必要があります。

  1. WebLogic Server管理コンソールの「チェンジ・センター」セクションの「ロックして編集」をクリックします。

  2. 左ペインの「ドメイン構造」ウィンドウで「環境」を選択し、「クラスタ」を選択します。「クラスタの概要」ページが表示されます。

  3. 「WLS_SOA」クラスタを選択します。

  4. HTTP」を選択します。

  5. 次の値を設定します。

    • フロントエンド・ホスト: soa.mycompany.com

    • フロントエンドHTTPSポート: 443

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

  7. 変更を有効にするために、管理コンソールの「チェンジ・センター」セクションの「変更のアクティブ化」をクリックします。

  8. サーバーを再起動して、クラスタのフロントエンド・ホストの指定を有効化します。


注意:

フロントエンドHTTPのホストとポートを設定していない場合は、Oracle B2Bからドキュメント定義のXSDを取得しようとすると次のメッセージが表示されます。
An error occured while loading the document definitions.
java.lang.IllegalArgumentException: Cluster address must be set when clustering is enabled.

コールバックURL

SOAシステムでは、次のようにコールバックURLを計算します。

5.18 共有JMS永続ストアの構成

すべての永続ストアの場所を、両ノードから認識できるディレクトリとして構成します。詳細は、第4.1項「Oracle Fusion Middlewareホームのインストール」を参照してください。次のように、この共有ベース・ディレクトリを使用するようにすべての永続ストアを変更する必要があります。

  1. Oracle WebLogic Server管理コンソールにログインします。

  2. 「ドメイン構造」ウィンドウの「サービス」ノードを開いて「永続ストア」ノードをクリックします。「永続ストアの概要」ページが表示されます。

  3. 表の「名前」列で、該当の永続ストア(これはハイパーリンクとして表示されています)を選択します。その永続ストアの「設定」ページが表示されます。

  4. 「構成」タブの「ディレクトリ」フィールドに、クラスタにある他のサーバーで使用できる永続記憶域ソリューション(NASやSANなど)上の場所を入力します。この場所を指定すると、JMSの保留メッセージを送信できます。この場所は、次のディレクトリ構造であることが必要です。

    ORACLE_BASE/admin/<domain_name>/<soa_cluster_name>/jms
    

    注意:

    WLS_SOA1とWLS_SOA2の両方からこのディレクトリにアクセスできる必要があります。また、サーバーを再起動する前に、このディレクトリが存在している必要があります。

  5. 保存」をクリックして変更内容を有効にします。

  6. サーバーを再起動して永続ストアの変更内容を有効にします。

5.19 トランザクション・リカバリ用デフォルト永続ストアの構成

各サーバーには、サーバーがコーディネートした、完了していない可能性のあるコミット済トランザクションに関する情報を格納するトランザクション・ログが用意されています。WebLogic Serverでは、システム・クラッシュやネットワーク障害からのリカバリ時にこのトランザクション・ログを使用します。クラスタにあるサーバーに対してトランザクション・リカバリ・サービスの移行機能を活用するには、サーバーとそのバックアップ・サーバーからアクセスできる場所にトランザクション・ログを格納します。


注意:

デュアルポートのSCSIディスクまたはストレージ・エリア・ネットワーク(SAN)をこの場所とすることをお薦めします。

デフォルト永続ストアの場所を設定するには、次の手順を実行します。

  1. Oracle WebLogic Server管理コンソールにログインします。

  2. 「ドメイン構造」ウィンドウの「環境」ノードを開き、「サーバー」ノードをクリックします。「サーバーの概要」ページが表示されます。

  3. 表の「名前」列にあるサーバーの名前(ハイパーリンクとして表示されています)をクリックします。選択したサーバーの「設定」ページが表示され、デフォルトで「構成」タブが選択状態になります。

  4. サービス」タブをクリックします。

  5. 表示されたページの「デフォルト・ストア」セクションで、デフォルトの永続ストアのデータ・ファイルを格納するフォルダのパスを入力します。このパスのディレクトリ構造は次のとおりです。

    ORACLE_BASE/admin/<domain_name>/<soa_cluster_name>/tlogs
    
  6. 保存」をクリックします。


注意:

トランザクション・リカバリ・サービスの移行を有効にするには、クラスタにある他のサーバーが使用できる永続記憶域ソリューションの場所を指定します。WLS_SOA1とWLS_SOA2の両方からこのディレクトリにアクセスできる必要があります。また、サーバーを再起動する前に、このディレクトリが存在している必要があります。

5.20 OracleファイルとFTPアダプタの高可用性化

OracleファイルとFTPアダプタを使用すると、BPELプロセスやOracle MediatorでFTP(ファイル転送プロトコル)を使用して、ローカルとリモートのファイル・システムにあるファイルの読取りと書込みができます。これらのアダプタは、インバウンドとアウトバウンドの両方の操作に対し、Oracle BPEL Process ManagerとOracle Mediatorサービス・エンジンを使用してアクティブ/アクティブ・トポロジの高可用性をサポートします。アウトバウンド操作に対してOracleファイルとFTPアダプタの高可用性を実現するには、『Oracle Fusion Middlewareテクノロジ・アダプタ・ユーザーズ・ガイド』のアウトバウンド操作での高可用性に関する項の説明に従って、データベースのmutex lockを使用します。データベースのmutex lock操作を使用すると、複数の参照から同じディレクトリへの書込みが発生しても、これらのアダプタでは相互の上書きを防止できます。


注意:

ファイル・アダプタは、インバウンド・ディレクトリからファイルを取得して処理し、出力ディレクトリにファイルを出力します。ファイル・アダプタでの処理はトランザクション方式ではないので、ファイルは2回処理できます。この結果として、RACバックエンドまたはSOA管理対象サーバーでフェイルオーバーが発生したときに、重複するファイルが得られる可能性があります。

5.20.1 データベースのmutex lock操作の使用

データベース表をコーディネータとして使用することで、アウトバウンドのOracleファイルやFTPアダプタのサービスに高可用性を実現します。そのためには次の手順を実行します。


注意:

データベースをコーディネータとして使用する場合は、グローバル・トランザクション・タイムアウトの値を大きくする必要があります。

  1. データベース表の作成

    データベース・スキーマはsoainfraの一部として事前に作成済なので、この手順を実行する必要はありません。

  2. Oracleファイル・アダプタのデプロイメント・ディスクリプタの変更

    eis/HAFileAdapterに対応する接続インスタンスについて、Oracle WebLogic ServerコンソールからOracleファイル・アダプタのデプロイメント・ディスクリプタを変更します。

    1. Oracle WebLogic Serverコンソールにログインします。このコンソールにアクセスするには、http://servername:portnumber/consoleにアクセスします。

    2. 「ドメイン構造」の左ペインで「デプロイメント」をクリックします。

    3. 右ペインの「デプロイメントの概要」で「FileAdapter」をクリックします。

    4. 構成」タブをクリックします。

    5. アウトバウンド接続プール」タブをクリックして「javax.resource.cci.ConnectionFactory」を開き、構成済の接続ファクトリを表示します(図5-4を参照)。

    6. eis/HAFileAdapter」をクリックします。高可用性に対応する接続ファクトリの「アウトバウンド接続のプロパティ」が表示されます。

    7. 図5-4に示すように、接続ファクトリのプロパティが表示されます。

      図5-4 Oracle WebLogic Serverコンソール - 「javax.resource.cci.Connectionfactoryの設定」ページ

      図5-4の説明
      「図5-4 Oracle WebLogic Serverコンソール - 「javax.resource.cci.Connectionfactoryの設定」ページ」の説明

      ロックして編集」をクリックします。これにより、プロパティ値の列が編集可能になります(「プロパティ値」列で任意の行をクリックしてその値を変更できます)。

      OracleファイルとFTPアダプタの接続ファクトリの新しいパラメータは次のとおりです。

      controlDir: 制御ファイルを格納するディレクトリ構造に設定します。1つのクラスタの中で複数のWebLogic Serverインスタンスを実行する場合は、この値を共有場所に設定する必要があります。この共有記憶域のディレクトリは次のような構造にします。

      ORACLE_BASE/admin/<domain_name>/<cluster_name>/fadapter
      

      inboundDataSource: jdbc/SOADataSourceに設定します。これは、高可用性に対応するスキーマを事前に作成する場所であるデータ・ソースです。事前作成スキーマはORACLE_HOME/ rcu/integration/soainfra/sql/adapter/createschema_adapter_oracle.sqlにあります。事前作成スキーマを別の場所で作成する場合は、このスクリプトを使用します。別のスキーマを選択する場合は、それに応じてinboundDataSourceプロパティを設定する必要があります。

      outboundDataSource: jdbc/SOADataSourceに設定します。これは、高可用性に対応するスキーマを事前に作成する場所であるデータ・ソースです。事前作成スキーマはORACLE_HOME/ rcu/integration/soainfra/sql/adapter/createschema_adapter_oracle.sqlにあります。事前作成スキーマを別の場所で作成する場合は、このスクリプトを使用します。その場合は、outboundDataSourceプロパティを設定する必要があります。

      outboundLockTypeForWrite: Oracle Databaseを使用している場合は、この値をoracleに設定します。デフォルトでは、OracleファイルとFTPアダプタはメモリー内mutexを使用してアウトバウンドの書込み操作をロックします。書込み操作を同期化するには、次の値のいずれかを選択する必要があります。

      memory: OracleファイルとFTPアダプタはメモリー内mutexを使用してファイル・システムへのアクセスを同期化します。

      oracle: アダプタはOracle Databaseシーケンスを使用します。

      db: アダプタは事前作成されたデータベース表(FILEADAPTER_MUTEX)をロック・メカニズムとして使用します。このオプションは、Oracle Databaseスキーマ以外のスキーマを使用している場合にのみ使用します。

      user-defined: アダプタはユーザー定義のmutexを使用します。ユーザー定義のmutexを構成するには、mutexインタフェースoracle.tip.adapter.file.Mutexを実装し、新しいバインド・プロパティoracle.tip.adapter.file.mutexを構成して、その値にアウトバウンド参照のmutexの完全修飾クラス名を指定します。

    8. これらのプロパティを更新した後、「保存」をクリックします。「デプロイメント・プランの保存」ページが表示されます。

    9. デプロイメント・プランの共有記憶域場所を入力します。そのディレクトリ構造は次のとおりです。

      ORACLE_BASE/admin/<domain_name>/<cluster_name>/dp/Plan.xml
      
    10. 保存してアクティブ化」をクリックします。

    11. 次の例のように、接続ファクトリが使用されるようにBPELプロセスまたはMediatorシナリオを構成します。

      <adapter-config name="FlatStructureOut" adapter="File Adapter" xmlns="http://platform.integration.oracle/blocks/adapter/fw/metadata">
        <connection-factory location="eis/HAFileAdapter" adapterRef=""/>
        <endpoint-interaction portType="Write_ptt" operation="Write">
      <interaction-spec className="oracle.tip.adapter.file.outbound.FileInteractionSpec">
            <property../>
            <property../>
          </interaction-spec>
        </endpoint-interaction>
      </adapter-config>
      

      注意:

      location属性は、接続ファクトリのeis/HAFileAdapterに設定されています。

5.21 Oracleデータベース・アダプタのスケーリング

複数のOracle BPEL Process ManagerノードまたはOracle Mediatorノードにデプロイする複数のOracleデータベース・アダプタ・プロセス・インスタンスにおける最善の手法は、ポーリング・ノードごとに一意のMarkReservedValueを設定し、さらにMaxTransactionSizeを設定して、LogicalDeletePollingStrategyまたはDeletePollingStrategyを使用することです。例5-1には、.jcaファイルに記述したDeletePollingStrategyMarkReservedValueを使用する方法を示しています。

例5-1 DeletePollingStrategyでMarkReservedValueを使用する方法を示す.jca

<adapter-config name="poll" adapter="Database Adapter"
xmlns="http://platform.integration.oracle/blocks/adapter/fw/metadata">
<connection-factory location="eis/DB/SOADemo" UIConnectionName="SOADemo"
adapterRef=""/>
<endpoint-activation portType="poll_ptt" operation="receive">
    <activation-spec className="oracle.tip.adapter.db.DBActivationSpec">
         <property name="DescriptorName" value="poll.PerfMasterIn"/>
          <property name="QueryName" value="pollSelect"/>
          <property name="MappingsMetaDataURL" value="poll-or-mappings.xml"/>
          <property name="PollingStrategy" value="DeletePollingStrategy"/>
          <property name="MarkReadColumn" value="ATTRIBUTE2"/>
          <property name="MarkReservedValue"
 value=MyPrefix_${weblogic.Name-1}-${IP}"/>
          <property name="MarkUnreadValue" value="UNREAD"/>
          <property name="PollingInterval" value="5"/>
          <property name="MaxRaiseSize" value="5"/>
          <property name="MaxTransactionSize" value="10"/>
          <property name="SequencingColumn" value="PK"/>
          <property name="ReturnSingleResultSet" value="false"/>
     </activation-spec>
 </endpoint-activation>
 </adapter-config>

詳細は、『Oracle Fusion Middlewareテクノロジ・アダプタ・ユーザーズ・ガイド』のスケーラビリティに関する項とポーリング方針に関する項を参照してください。

5.22 インストールのバックアップ

拡張したドメインが正常に動作していることを確認した後、そのインストール内容をバックアップします。これは、以降の手順で問題が発生した場合に短時間でリストアできることを考慮した迅速なバックアップです。バックアップ先はローカル・ディスクです。エンタープライズ・デプロイメントの設定が完了すれば、このバックアップは破棄してかまいません。その時点では、デプロイメント固有の定期的なバックアップ手順とリカバリ手順を実行できるようになっています。詳細は、Oracle Fusion Middlewareの管理者ガイドを参照してください。バックアップおよびリストアを必要とするOracle HTTP Serverのデータの詳細は、このガイドでOracle HTTP Serverのバックアップとリカバリの推奨事項に関する項を参照してください。コンポーネントのリカバリ方法に関する詳細は、このガイドでコンポーネントのリカバリに関する項およびコンポーネントが失われた後のリカバリに関する項を参照してください。ホストが失われた場合のリカバリに固有の推奨事項は、このガイドで別のホストへのOracle HTTP Serverのリカバリに関する項を参照してください。データベースのバックアップに関する詳細は、『Oracle Database Backup and Recovery Guide』も参照してください。

この時点でインストールをバックアップする手順は次のとおりです。

  1. 次の手順でWeb層をバックアップします。

    1. opmnctlを使用してインスタンスを停止します。

      ORACLE_BASE/admin/<instance_name>/bin/opmnctl stopall
      
    2. 次のコマンドをroot権限で実行して、Web層のミドルウェア・ホームをバックアップします。

      tar -cvpf BACKUP_LOCATION/web.tar $MW_HOME
      
    3. 次のコマンドをroot権限で実行して、Web層のインスタンス・ホームをバックアップします。

      tar -cvpf BACKUP_LOCATION/web_instance.tar $ORACLE_INSTANCE
      
    4. opmnctlを使用してインスタンスを起動します。

      ORACLE_BASE/admin/<instance_name>/bin/opmnctl startall
      
  2. データベースをバックアップします。これは、Oracle Recovery Manager(推奨)またはtarなどのOSツールを使用したデータベース全体のホット・バックアップまたはコールド・バックアップです。OSツールを使用する場合は、可能なかぎりコールド・バックアップをお薦めします。

  3. 管理サーバーのドメイン・ディレクトリをバックアップしてドメイン構成を保存します。構成ファイルは、すべてORACLE_BASE/admin/<domain_name>ディレクトリの下にあります。

    SOAHOST1> tar -cvpf edgdomainback.tar ORACLE_BASE/admin/<domain_name>
    

注意:

ORACLE_HOMEのバックアップは、B2B設定の一部であるXEngine構成が変更されたときに実行する必要があります。対象のファイルは、ORACLE_HOME/soa/thirdparty/edifecs/XEngineにあります。ORACLE_HOMEをバックアップするには、次のコマンドを実行してください。
SOAHOST1> tar -cvpf fmwhomeback.tar ORACLE_BASE/product/fmw