6 Oracle Cloud MarketplaceでのODIの高可用性の構成

この章は、Oracle Cloud MarketplaceでOracle Data Integratorの高可用性(HA)トポロジを構成するのに役立ちます。この章の各項では、高可用性を備えたデプロイメントの設計に重要な概念とステップについて概要を説明します。

内容は次のとおりです。

6.1 高可用性のための2ノード・クラスタの設定の前提条件

高可用性のために2ノード・クラスタを設定する前に、次の前提条件を確認します。高可用性のために2ノード・クラスタを設定する前に、次を用意してください:

  1. サブネット内に作成されたすべてのコンピュート・インスタンスとの通信をサポートするOCI仮想クラウド・ネットワーク(VCN)の設定。
    • すべての通信チャネルはプライベートIPを介します。
    • サブネット外部で確立された外部通信は、パブリックIPを介します。
    • イングレス/エグレスに対する適切な構成。詳細は、受信ポートおよびサービスの有効化を参照してください。
  2. 自動スケーリングおよびDBMS_CLOUDパッケージへのアクセスを利用するための、次の構成を持つAutonomous Transaction Processingインスタンス:
    • ワークロード・タイプ: トランザクション処理
    • デプロイメント・タイプ:共有インフラストラクチャ
    • ネットワーク・アクセス: すべての場所からのセキュア・アクセスを許可
  3. ステップ1で説明したものと同じサブネットおよびVCNに作成されたADBまたはDBaaSインスタンス。
  4. ステップ1で説明したものと同じサブネットおよびVCNに作成されたODIコンピュート・インスタンス1。
  5. ステップ1で説明したものと同じサブネットおよびVCNに作成されたが、可用性ドメインが異なるODIコンピュート・インスタンス2。
  6. クラスタの一部であるすべてのコンピュート・インスタンス内のファイアウォール構成。詳細は、ファイアウォールを参照してください。

6.2 ODIドメインの作成と構成

このセクションには次のトピックが含まれます:

6.2.1 ノード1でのドメインの作成

次のステップに従って、ノード1にドメインを作成します:
  1. cd /u01/oracle/mwh/oracle_common/common/binディレクトリに移動します。
  2. config.shを実行して、構成ウィザードを起動します。
  3. 最初の画面で、「次へ」をクリックします。
  4. 「構成タイプ」画面で、「ドメインの場所」フィールドに「/u01/oracle/mwh/user_projects/domains/odi_domain」を指定します。「次へ」をクリックして続行します。
  5. テンプレート画面で、「使用可能なテンプレート」フィールドから、Oracle Data Integrator – エージェント[odi] (Oracle Data Integrator – エージェント・ライブラリ[odi]およびOracle Data Integrator SDK Shared Libraries Template [odi]を自動選択)、Oracle Data Integrator – コンソール[odi]およびOracle Enterprise Manager Plugin for ODI [em] (Oracle Enterprise Manager [em]を自動選択)を選択します。「Next」をクリックして続行します。
  6. 「アプリケーションの場所」画面で、「次へ」をクリックします。
  7. 「管理者アカウント」画面で、次の情報を入力し、「次」をクリックします:
    1. 名前: weblogicを指定します。
    2. パスワード: weblogicユーザーに割り当てるパスワードを入力します。
  8. 「ドメイン・モードおよびJDK」画面で、「本番」を選択して「次へ」をクリックします。
  9. 「データベース構成タイプ」画面で、次の情報を入力します:
    1. URL: リポジトリがDBCS/Exaにある場合は、URLとして「 jdbc:oracle:thin:@<HOST>:<PORT>/<SERVICE_NAME>」を指定します。リポジトリがADW/ATPにある場合は、URLとして「jdbc:oracle:thin:@(description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=<HOST>))(connect_data=(service_name=<SERVICE_NAME>))(security=(ssl_server_cert_dn="CN=adwc.uscom-east-1.oraclecloud.com,OU=Oracle BMCS US,O=Oracle Corporation,L=Redwood City,ST=California,C=US")))」を指定します。
    2. スキーマ所有者: <ODI_PREFIX>_STBを指定します。
    3. スキーマ・パスワード: スキーマ所有者パスワードを入力します。
  10. リポジトリがDBCS/Exaにある場合は、このステップをスキップします。リポジトリがADW/ATPにある場合は、「接続プロパティ」をクリックし、(すでに存在するものに加えて)次のプロパティが設定されていることを確認します:
    oracle.net.authentication_service TCPS
    oracle.net.ssl_server_dn_match false
    javax.net.ssl.trustStore <PATH>/cwallet.sso
    javax.net.ssl.keyStoreType SSO
    javax.net.ssl.keyStore <PATH>/cwallet.sso
    javax.net.ssl.trustStoreType SSO
    

    ここで、<PATH>はウォレット・ディレクトリのパスです

  11. 「RCU構成の取得」をクリックします。接続に成功すると、「次へ」ボタンがアクティブ化されます。「次へ」をクリックします。
  12. 「JDBCコンポーネント・スキーマ」画面で、ODIリポジトリがDBCS/Exaにある場合は、ステップ13に進みます。これがADW/ATPにある場合、ローカルSvcTblスキーマを選択します。すべての接続情報(つまり、URLおよび接続プロパティ)が正しいことを確認します。
  13. ローカルSvcTblスキーマの選択を解除し、次のスキーマを選択します:
    • WLSスキーマ
    • ODIマスター・スキーマ
    • ODI作業スキーマ
    • OPSS監査スキーマ
    • OPSS監査ビューア
    • OPSSスキーマ

    すべての接続情報(つまり、URLおよび接続プロパティ)が正しいことを確認します。

  14. すべてのスキーマへの接続情報が確認されたら、「次へ」をクリックします。
  15. 「JDBCコンポーネント・スキーマ・テスト」画面で、すべてのスキーマの検証が行われます。検証に合格すると、緑色のチェック・マークが表示されます。すべてのスキーマの「ステータス」列にチェック・マークが表示されたら、「次へ」をクリックします。
  16. 「資格証明」画面で、次の情報を入力し、「次へ」をクリックします:
    1. ユーザー名: SUPERVISORを指定します。
    2. パスワード: SUPERVISORのパスワードを指定します。
  17. 「拡張構成」画面で、「管理サーバー」「ノード・マネージャ」「トポロジ」および「デプロイメントとサービス」を選択します。「次へ」をクリックします。
  18. 「管理サーバー」画面で、次の情報を入力し、「次へ」をクリックします:
    1. リスニング・アドレス: ノード1のプライベートIPアドレスを指定します。
    2. リスニング・ポート: 必要なポート(7001/13001)を指定します。
  19. 「ノード・マネージャ」画面で、次の情報を入力し、「次」をクリックします。
    1. ノード・マネージャ・タイプ: 「ドメインごとのデフォルトの場所」を選択します。
    2. ユーザー名: weblogicを指定します。
    3. パスワード: weblogicユーザーのパスワードを入力します。
    4. パスワードの確認: weblogicユーザーのパスワードを入力します。
  20. 「管理対象サーバー」画面で、次の情報を追加し、「次へ」をクリックします:
    1. 「サーバー名」にODI_server1を指定し、「リスニング・アドレス」にODIノード1のプライベートIPアドレスを指定します。リスニング・ポート(8001/15101)を割り当て、サーバー・グループが(ODI-MGD…)であることを確認します。
    2. 「サーバー名」にODI_server2を指定し、「リスニング・アドレス」にODIノード2のプライベートIPアドレスを指定します。リスニング・ポート(8001/15101)を割り当て、サーバー・グループが(ODI-MGD…)であることを確認します。
  21. 「クラスタ」画面で、「次へ」をクリックします。
  22. 「サーバー・テンプレート」画面の「リスニング・ポート」フィールドで、両方のテンプレートにポート(7100/13100)を割り当てます。「次へ」をクリックします。
  23. 「動的サーバー」画面で、「次へ」をクリックします。
  24. 「サーバーのクラスタへの割当」画面で、両方のサーバーを「ODI_Cluster1」に割り当て、「次へ」をクリックします。
  25. 「Coherenceクラスタ」画面で、「クラスタ・リスニング・ポート」フィールドにポート(7574/13574)を指定します。「次へ」をクリックします。
  26. 「マシン」画面で、「Unixマシン」タブを選択し、「追加」をクリックして次の情報を指定します:
    1. 「名前」フィールドにodi-node1、「ノード・マネージャ・リスニング・アドレス」フィールドにODIノード1のプライベートIPアドレスを指定します。ノード・マネージャのポート(5556/9556)を割り当てます
    2. 「名前」フィールドにodi-node2、「ノード・マネージャ・リスニング・アドレス」フィールドにODIノード2のプライベートIPアドレスを指定します。ノード・マネージャのポート(5557/9557)を割り当てます。「次へ」をクリックします。
  27. 「サーバーのマシンへの割当」画面で、「AdminServer」および「ODI_server1」が「odi-node1」に割り当てられ、「ODI_server2」が「odi-node2」に割り当てられていることを確認します。「次へ」をクリックします。
  28. 「仮想ターゲット」画面で、「次へ」をクリックします。
  29. 「パーティション」画面で、「次へ」をクリックします。
  30. 「デプロイメント・ターゲット指定」画面で、「次へ」をクリックします。
  31. 「サービス・ターゲット指定」画面で、「次へ」をクリックします。
  32. 「構成サマリー」画面で「作成」をクリックします。
  33. 「構成の進行状況」画面に、タスクの進行状況を示す緑色のチェックが表示されます。これは、タスクが正常に終了したことを示します。すべて終了したら、「次へ」をクリックします。
  34. 「構成の終了」画面で、最初のリンクがドメイン・パスであることをノートにとります。2つ目のリンクをクリックすると、Webブラウザが表示されます。エラー・メッセージを無視してURLをコピーします。「終了」をクリックします。

6.2.2 ノード1での管理サーバーの設定

次のステップに従って、ノード1で管理サーバーを設定します:
  1. リポジトリがDBCS/Exaにある場合は、ステップ4に進みます。リポジトリがADW/ATPにある場合は、/u01/oracle/mwh/user_projects/domains/odi_domain/config/fmwconfigディレクトリに移動します。
  2. 次のように、jps-config.xmlファイルのバックアップ・コピーを作成します:
    cp jps-config.xml jps-config.xml.ORIG
  3. ファイルを編集し、"jdbc url"エントリの直後に次のエントリを追加します:
    <property name="javax.net.ssl.trustStore" value="/home/opc/.odi/oracledi/userlib/<PATH>/cwallet.sso"/> <property name="oracle.net.authentication_service" value="TCPS"/> <property name="oracle.net.ssl_server_dn_match" value="false"/> <property name="javax.net.ssl.keyStoreType" value="SSO"/> <property name="javax.net.ssl.trustStoreType" value="SSO"/> <property name="javax.net.ssl.keyStore" value="/home/opc/.odi/oracledi/userlib/<PATH>/cwallet.sso"/>
  4. /u01/oracle/mwh/user_projects/domains/odi_domainディレクトリに移動します。
  5. 次のコマンドを使用して、管理サーバーを起動します:
    ./startWebLogic.sh
  6. weblogic管理ユーザーおよびパスワードを入力します。サーバーが起動するまで待ちます。
  7. Webブラウザを使用してWeblogicにログインします。
  8. 画面の左上隅にある「ロックして編集」をクリックします。
  9. 左側のパネルを使用して、「環境」→「マシン」に移動します。
  10. ノード1 (odi-node1)をドリルダウンします。
  11. 画面の右側で、「構成」および「ノード・マネージャ」を選択します。
  12. 「タイプ」フィールドで、「プレーン」を選択します。
  13. 「保存」をクリックします。
  14. ステップ9から13を繰り返して、ノード2 (odi-node2)でも同じことを行います。つまり、ノード2に対して次のステップを実行します:
    1. 左側のパネルを使用して、「環境」→「マシン」に移動します。
    2. ノード2 (odi-node2)をドリルダウンします。
    3. 画面の右側で、「構成」および「ノード・マネージャ」を選択します。
    4. 「タイプ」フィールドで、「プレーン」を選択します。
    5. 「保存」をクリックします。
  15. 左側のパネルを使用して、「環境」→「サーバー」に移動します。
  16. ノード1 (ODI_server1)をドリルダウンします。
  17. 画面の右側で、「構成」および「SSL」を選択します。
  18. 画面の下部にある「詳細」をクリックします。
  19. 「ホスト名の検証」フィールドで、「なし」を選択します。
  20. 「保存」をクリックします。
  21. 画面の右側で、「構成」および「サーバーの起動」を選択します。
  22. 「引数」セクションで、次の情報を入力します:
    -Dtangosol.coherence.localport=8095
    -Doracle.odi.coherence.wka1=<PRIVATE_IP_ADDRESS_NODE1>
    -Doracle.odi.coherence.wka1.port=8095
    -Doracle.odi.coherence.wka2=<PRIVATE_IP_ADDRESS_NODE2>
    -Doracle.odi.coherence.wka2.port=8096
    
  23. 画面の下部で、次の情報を入力します:
    1. ユーザー名: weblogicを指定します。
    2. パスワード: weblogicユーザーのパスワードを入力します。
    3. パスワードの確認: weblogicユーザーのパスワードを入力します。
  24. 「保存」をクリックします。
  25. ステップ15から24を繰り返して、ノード2でも同じことを行います。つまり、ノード2に対して次のステップを実行します:
    1. 左側のパネルを使用して、「環境」→「サーバー」に移動します。
    2. ノード2 (ODI_server2)をドリルダウンします。
    3. 画面の右側で、「構成」および「SSL」を選択します。
    4. 画面の下部にある「詳細」をクリックします。
    5. 「ホスト名の検証」フィールドで、「なし」を選択します。「保存」をクリックします。
    6. 画面の右側で、「構成」および「サーバーの起動」を選択します。
    7. 「引数」セクションで、次の情報を入力します:
      -Dtangosol.coherence.localport=8096
      -Doracle.odi.coherence.wka1=<PRIVATE_IP_ADDRESS_NODE1>
      -Doracle.odi.coherence.wka1.port=8095
      -Doracle.odi.coherence.wka2=<PRIVATE_IP_ADDRESS_NODE2>
      -Doracle.odi.coherence.wka2.port=8096
      
    8. 画面の下部で、「ユーザー名」フィールドにweblogicを指定します。「パスワード」および「パスワードの確認」フィールドにweblogicユーザーのパスワードを入力します。
    9. 「保存」をクリックします。
  26. 画面の左上隅にある「変更のアクティブ化」をクリックします。
  27. 左側のパネルを使用して「環境」→「サーバー」に移動し、画面の右側で「制御」を選択し、「サーバー」フィールドから「AdminServer」を選択します。
  28. 「停止」をクリックし、ドロップダウン・メニューから「ただちに強制停止」を選択します。
  29. セッションを終了するには、「はい」をクリックします。Webブラウザは開いたままにします。
  30. 新しい端末を起動し、/u01/oracle/mwh/user_projects/domains/odi_domain/servers/AdminServerディレクトリに移動します。
  31. 次のように新規ディレクトリを作成します:
    mkdir security
  32. 次のコマンドを使用して、そのディレクトリに移動します:
    cd security
  33. 次のコマンドを使用して、Admin/securityの下のboot.propertiesという新しいファイルを編集します:
    vi boot.properties
  34. 次の内容を追加してファイルを保存します。
    username=weblogic
    password=<WEBLOGIC_PASSWORD>
    
  35. セキュア・リスナーを無効にします。次のディレクトリに移動します。
    cd /u01/oracle/mwh/user_projects/domains/odi_domain/nodemanager
  36. 次のコマンドを使用して、"nodemanager.properties"ファイルを編集します:
    vi nodemanager.properties
  37. エントリ"Secure Listener=true"を探し、"Secure Listener=false"に変更します。ファイルを保存します。
  38. ODIがスタック・リリース12.2.1.4.200618より前にプロビジョニングされた場合は、ステップ17に進みます。スタック・リリース12.2.1.4.200618以降でプロビジョニングされている場合は、次のステップを実行します:
    1. 次のディレクトリに移動します。
      cd /u01/oracle/mwh/wlserver/server/bin
    2. 次のファイルをコピーします。
      cp startNodeManager.sh startNodeManger.sh.OLD
    3. 次のファイルを編集します。
      vi startNodeManager.sh
    4. 52行目をWL_HOME="/home/opc/oracle/wlserver"からWL_HOME="${MW_HOME}/wlserver" に変更します。
  39. 最初の端末に戻ります。
  40. 次のコマンドを使用して、WeblogicServer を再起動し、プロセスをバックエンドに送信します:
    nohup ./startWebLogic.sh &
  41. 次のコマンドを使用して、起動プロセスを監視します:
    tail -100 nohup.out
  42. サーバーが起動され稼働中になったら、ノード・マネージャを起動します。次のコマンドを使用して、binディレクトリに移動します:
    cd bin
  43. 次のコマンドを使用して、"startNodeManager"を実行し、バックグラウンドにプロセスを送信します:
    nohup ./startNodeManager.sh &
  44. 次のコマンドを使用して、起動プロセスを監視します:
    tail -100 nohup.out
  45. ノード・マネージャを確認します。Webブラウザに戻り、WebLogic Serverにログインします。
  46. 左側のパネルを使用して、「環境」→「マシン」に移動します。
  47. ノード1 (odi-node1)をドリルダウンします。
  48. 画面の右側で、「モニタリング」および「ノード・マネージャ」を選択します。マシンに構成されているノード・マネージャ・インスタンスの現在のステータス情報を表示できます。

6.2.3 ノード1でのODIエージェントの設定

次のステップに従って、ノード1にODIエージェントを設定します:
  1. ODI Studioを起動します。
  2. 「トポロジ」タブにナビゲートします。
  3. 次のように新しいエージェントを定義します:
    1. 名前: エージェント名としてOracleDIAgentを指定します。
    2. ホスト: ODIノード(Node1)のプライベートIPアドレスを入力します。
    3. ポート: 管理対象サーバー"ODI_server1"に定義されているポートを指定します(15101/8001)。
  4. 構成を保存します。
  5. 対応する論理エージェントを定義して保存します。
  6. Webブラウザで、Weblogic Serverの左側のパネルを使用して、「環境」→「サーバー」に移動します。
  7. 画面の右側で、「制御」および「ODI_server1」を選択します。
  8. 「起動」をクリックします。
  9. 「サーバー・ライフサイクル・アシスタント」画面で、「はい」をクリックします。
  10. ODI_server1の"RUNNING"ステータスが表示されるまで、ページのリフレッシュを続けます。
  11. デプロイメントを確認します。画面左側の階層ペインを使用して、「デプロイメント」画面に移動します。
  12. エージェントをテストします。Weblogic Serverの左側のパネルを使用して、「環境」→「サーバー」に移動します。
  13. サーバー1 (ODI_server1)をドリルダウンします。
  14. 画面の右側で、「デプロイメント」を選択します。
  15. エージェント(oraclediagent)をドリルダウンします。
  16. 画面の右側で、「テスト」を選択します。
  17. oraclediagentノードを展開します。
  18. 「テスト・ポイント」フィールドで使用可能なURLをクリックします。
  19. 今後の参照用に保存してください。
  20. ODI Studioに戻ります。
  21. 「テスト」をクリックします。"テスト成功"のメッセージが表示されます。
  22. ODI Studioからログアウトします。

6.2.4 ノード1でのドメインのパック

次のステップに従って、ノード1にドメインをパックします:
  1. ODI_server1を停止し、ブラウザに戻ります。
  2. Weblogic Serverの左側のパネルを使用して、「環境」→「サーバー」に移動します。
  3. 画面の右側で、「制御」および「ODI_server1」を選択します。
  4. 「停止」をクリックし、ドロップダウン・リストから「ただちに強制停止」を選択します。
  5. 「サーバー・ライフサイクル・アシスタント」画面で、「はい」をクリックします。
  6. ノード・マネージャを停止します。端末画面で、次のディレクトリに移動します:
    cd /u01/oracle/mwh/user_projects/domains/odi_domain/bin
  7. ノード・マネージャを停止します。次のコマンドを実行します。
    ./stopNodeManager.sh.
  8. 次のディレクトリに移動します。
    cd /u01/oracle/mwh/oracle_common/common/bin
  9. ドメイン情報をパックします。次のコマンドを実行します。
    ./pack.sh -domain=/u01/oracle/mwh/user_projects/domains/odi_domain -template=odiclusterdomain.jar -template_name=odiclusterdomain -managed=true

6.2.5 ノード2でのドメインのアンパック

次のステップに従って、ノード2にドメインをアンパックします:
  1. ファイルをノード1からノード2にコピーします。ここに示す方法では、"scp"コマンドを使用します。別の方法(WinSCPやFirezillaなどのサード・パーティ・ツール)を使用する場合は、このステップをスキップします。ノード1から、次のコマンドを実行します:
    scp -i <PRIVATE_KEY_FILE_PATH> odiclusterdomain.jar opc@<IP_ADDRESS_NODE2>:/<PATH>
  2. ノード2で、次のディレクトリに移動します:
    cd /u01/oracle/mwh/oracle_common/common/bin
  3. ドメインをアンパックします。次のコマンドを実行します。
    ./unpack.sh -domain=/u01/oracle/mwh/user_projects/domains/odi_domain -template=<PATH>/odiclusterdomain.jar
  4. ODIがスタック・リリース12.2.1.4.200618以降でプロビジョニングされている場合は、次のステップを実行します:
    1. 次のディレクトリに移動します。
      cd /u01/oracle/mwh/wlserver/server/bin
    2. 次のファイルをコピーします。
      cp startNodeManager.sh startNodeManger.sh.OLD
    3. 次のファイルを編集します。
      vi startNodeManager.sh
    4. 52行目をWL_HOME="/home/opc/oracle/wlserver"からWL_HOME="${MW_HOME}/wlserver"に変更します。

6.2.6 ノード2での管理対象サーバーおよびノード・マネージャの設定

次のステップに従って、ノード2で管理対象サーバーおよびノード・マネージャを設定します:
  1. 次のディレクトリに移動します。
    cd /u01/oracle/mwh/user_projects/domains/odi_domain/nodemanager
  2. nodemanager.propertiesファイルを編集します。次のコマンドを実行します。
    vi nodemanager.properties
  3. "ListenAddress"エントリの値がノード2のプライベートIPアドレスを示し、ListenPortエントリの値がノード2のノード・マネージャのリスニング・ポート(5557/9557)を示していることを確認します。
  4. 両方のノードでノード・マネージャを再起動します。次のディレクトリに移動します。
    cd /u01/oracle/mwh/user_projects/domains/odi_domain/bin
  5. 次のコマンドを使用して、"startNodeManager"を実行し、バックグラウンドにプロセスを送信します:
    nohup ./startNodeManager.sh &
  6. 次のコマンドを使用して、起動プロセスを監視します:
    tail -100 nohup.out
  7. 両方のノード・マネージャを確認します。Webブラウザで、WebLogic Serverにログインします。
  8. 左側のパネルを使用して、「環境」→「マシン」に移動します。
  9. ノード1 (odi-node1)をドリルダウンします。
  10. 画面の右側で、「モニタリング」および「ノード・マネージャ」を選択します。マシンに構成されているノード・マネージャ・インスタンスの現在のステータス情報を表示できます。
  11. ノード2 (odi-node2)でステップ7から10を繰り返します。
  12. 両方のODIサーバーを起動します。
  13. WebLogic Serverの左側のパネルを使用して、「環境」→「サーバー」に移動します。
  14. 画面の右側で、「制御」および「ODI_server1」を選択します。
  15. 「起動」をクリックします。
  16. 「サーバー・ライフサイクル・アシスタント」画面で、「はい」をクリックします。
  17. ODI_server1の"RUNNING"ステータスが表示されるまで、ページのリフレッシュを続けます。
  18. ノード2 (ODI-server2)でステップ12から14を繰り返します。
  19. ノード2で、ODI Studioを起動します。
  20. 「インポート・プリファレンスの確認」画面で「いいえ」をクリックします。
  21. ようこそ画面で、「リポジトリへの接続」をクリックします。
  22. ODIパスワードを格納するウォレットを作成する場合、「新規ウォレット・パスワード」画面で「セキュアなウォレットにパスワードを格納する」を選択し、パスワードを指定します。それ以外の場合は、「セキュアなウォレットを使用せずにパスワードを格納する」を選択します。「OK」をクリックします。
  23. 「Oracle Data Integratorログイン」画面で「+」記号をクリックします。
  24. 「リポジトリ接続情報」画面で、次の情報を入力します:
    1. ログイン名: これはリポジトリへの接続の名前になります。適切と判断した名前を割り当てます。ノード1で使用した名前と同じ名前を使用することをお薦めします。
    2. ユーザー: SUPERVISORを指定します。
    3. パスワード: SUPERVISORのパスワードを指定します。
    4. ユーザー: リポジトリの所有者(この場合はDEV_ODI_REPO)を指定します。
    5. パスワード: DEV_ODI_REPOのパスワードを指定します。
    6. ドライバ・リスト: 「Oracle JDBCドライバ」を選択します。
    7. URL: JDBCデータベースURLを次のように指定します:
      jdbc:oracle:thin:@<SERVER>:<PORT>/<SERVICE>
  25. 「テスト」をクリックします。接続の確認が表示されます。「情報」画面で「OK」をクリックします。
  26. 「作業リポジトリ」を選択し、右端にある拡大鏡をクリックします。
  27. 「リポジトリの選択」画面で、WORKREPを選択して「OK」をクリックします。
  28. すべてが正常な場合は、接続の成功を示すメッセージが送信されます。「情報」画面で「OK」をクリックします。
  29. 「リポジトリ接続情報」画面で、「OK」をクリックします。
  30. 「OK」を再度クリックしてODI Studioにログインします。
  31. 「トポロジ」タブにナビゲートします。
  32. OracleDIAgentを開きます。
  33. ノード2のプライベートIPアドレスを指すように「ホスト」フィールドを変更します。
  34. 構成を保存します。
  35. 「テスト」をクリックします。成功のメッセージが表示されます。

6.3 ロード・バランサの構成

ロード・バランサは、プライベートまたはパブリックのいずれかで作成できます。ロード・バランサの詳細は、ロード・バランシングの概要に関する項を参照してください。ロード・バランサに対して永続性を有効にしないでください。

次のステップに従って、ロード・バランサを作成および構成します:

  1. ナビゲーション・メニューを開きます。「コア・インフラストラクチャ」グループで、「ネットワーキング」に移動して「ロード・バランサ」をクリックします。
  2. 作業する権限を持つコンパートメント「スコープ」で選択し、「ロード・バランサの作成」をクリックします。
  3. ロード・バランサの属性を次のように指定します:
    1. ロード・バランサ名 :ロード・バランサの名前を指定します。
    2. 可視性タイプの選択: 「プライベート」を選択します。
    3. 最大合計帯域幅の選択: 「中」を選択します。
    4. ネットワーキングの選択: ODIノードが配置されているのと同じVCNおよびサブネットを選択します。
  4. 画面の左下隅にある「次へ」をクリックします。
  5. 「バックエンドの追加」をクリックして、使用可能なコンピュート・インスタンスのリストからリソースを選択してください。
  6. 2つのODIノードを選択し、画面の下部にある「選択したバックエンドの追加」をクリックします。
  7. ODI管理対象サーバー"ODI_server1"および"ODI_server2"を指すように両方のノードのポートを変更します(8001/15101)。
  8. 「ヘルス・チェック・ポリシーの指定」セクションで、次の情報を指定します:
    1. ポート: ODI管理対象サーバーのポート(8001/15101)を指定します。
    2. URLパス(URI): /oraclediagent/を指定します。
  9. 画面の左下隅にある「次へ」をクリックします。
  10. 「リスナーの構成」セクションで、次の情報を入力します:
    1. リスナーで処理するトラフィックのタイプの指定: 「HTTP」を選択します。
    2. リスナーでイングレス・トラフィックをモニターするポートの指定: 80を指定します。
  11. 画面の下部にある「拡張オプションの表示」をクリックすると、追加オプションにアクセスできます。
  12. 「最大タイムアウトを指定します」フィールドに3600を指定します。
  13. 画面の左下隅にある「送信」をクリックします。これにより、ロード・バランサのプロビジョニング・プロセスが開始されます。
  14. ロード・バランサがプロビジョニングされると、画面に「アクティブ」と表示されます。プライベートIPアドレスをノートにとります。
  15. この時点で、(任意のノードで) ODI Studioを起動し、「トポロジ」タブに移動します。
  16. エージェント"OracleDIAgent"を次のように変更します:
    1. ホスト: ロード・バランサのプライベートIPアドレスを指定します。
    2. ポート: 80を指定します。
  17. 「テスト」をクリックします。「ODI情報」ダイアログ・ボックスに「エージェント・テストに成功しました。」と表示されます。

6.3.1 ロード・バランサのヘルス・チェックの更新

次のステップに従って、ロード・バランサのヘルス・チェック情報を変更します:
  1. ロード・バランサ名をドリルダウンします。
  2. 左側のパネルにある「バックエンド」ハイパーリンクをクリックします。
  3. バックエンド・セット名をドリルダウンします。
  4. 左側のパネルにある「バックエンド」ハイパーリンクをクリックします。
  5. 画面上部にある「ヘルス・チェックの更新」をクリックします。
  6. チェック情報を変更し、画面の下部にある「変更の保存」をクリックします。受け入れられる情報についてのメッセージが表示されます。
  7. ODIエージェントを複数回テストします。

6.4 受信ポートおよびサービスの有効化

インスタンス間の通信を確立するには、基礎となるセキュリティ・リスト(VCNに関連付けられている)ですべてのIPプロトコルが有効になっていることを確認する必要があります。

次に、高可用性(HA)クラスタに参加しているインスタンス内での通信を有効するセキュリティ・リストの例を示します:

ノート:

直接的または間接的に参加しているすべてのインスタンスは、次のイングレス・ルールおよびエグレス・ルールに従う必要があります。

表6-1 イングレス・ルールおよびエグレス・ルールの表

ステートレス ソース IPプロトコル ソース・ポート範囲 宛先ポート範囲 タイプおよびコード 使用可能 コメント

いいえ

0.0.0.0/0

TCP

すべて

22

ゼロ

次のポートのTCPトラフィック: 22 SSHリモート・ログイン・プロトコル

SSH通信の場合、ポート22を開く必要があります。

いいえ

0.0.0.0/0

ICMP

ゼロ

ゼロ

3,4

次の場合のICMPトラフィック: 3、4 宛先に到達できません: フラグメンテーションが必要ですが、断片化しないように設定されていました

ICMPはサポート・プロトコルであり、少なくともイングレス・ルールでタイプ3、4および8を許可する必要があります。ICMPプロトコルの詳細は、IANAリストを参照してください。

いいえ

10.0.0.0/16

ICMP

ゼロ

ゼロ

3

次の場合のICMPトラフィック: 3 宛先に到達できません

ICMPはサポート・プロトコルであり、少なくともイングレス・ルールでタイプ3、4および8を許可する必要があります。ICMPプロトコルの詳細は、IANAリストを参照してください。

いいえ

0.0.0.0/0

ICMP

ゼロ

ゼロ

8

次の場合のICMPトラフィック: 8 エコー

ICMPはサポート・プロトコルであり、少なくともイングレス・ルールでタイプ3、4および8を許可する必要があります。ICMPプロトコルの詳細は、IANAリストを参照してください。

いいえ

0.0.0.0/0

TCP

すべて

1521

ゼロ

次のポートのTCPトラフィック: 1521

ポート1521はデータベース・トラフィック用です。

いいえ

0.0.0.0/0

TCP

すべて

443

ゼロ

次のポートのTCPトラフィック: 443 HTTPS

ポート443はSSLトラフィックです。

いいえ

0.0.0.0/0

TCP

すべて

7001

ゼロ

次のポートのTCPトラフィック: 7001

WLS管理サーバーの通信ポート。

いいえ

0.0.0.0/0

TCP

すべて

8001

ゼロ

次のポートのTCPトラフィック: 8001

すべてのノードの管理対象サーバー通信ポート。

いいえ

0.0.0.0/0

TCP

すべて

5556

ゼロ

次のポートのTCPトラフィック: 5556

ノード1のノード・マネージャ・ポート。

いいえ

0.0.0.0/0

TCP

すべて

5557

ゼロ

次のポートのTCPトラフィック: 5557

ノード2のノード・マネージャ・ポート。

いいえ

0.0.0.0/0

UDP

すべて

7574

ゼロ

次のポートのUDPトラフィック: 7574

WLSクラスタ・ポート

いいえ

0.0.0.0/0

TCP

すべて

8095

ゼロ

次のポートのTCPトラフィック: 8095

ノード1のOracle Coherenceポート。

いいえ

0.0.0.0/0

TCP

すべて

8096

ゼロ

次のポートのTCPトラフィック: 8096

ノード2のOracle Coherenceポート。

いいえ

10.0.17.0/24

TCP

すべて

8001

ゼロ

次のポートのTCPトラフィック: 8001

Oracle ODIエージェントの両方のノード

いいえ

0.0.0.0/0

TCP

すべて

7

ゼロ

次のポートのTCPトラフィック: 7 ECHO

Coherence TCPリング/IPモニターの停止検出機能。

いいえ

10.0.17.0/24

TCP

すべて

80

ゼロ

次のポートのTCPトラフィック: 80

OCIロード・バランサ

6.5 ファイアウォール・ルール

イングレス・ルールおよびエグレス・ルールを設定した後でも、インスタンスが受信トラフィックを許可しない場合があります。これは、インスタンスに関連付けられたファイアウォールが原因です。ファイアウォールを構成してすべての通信ポートを有効にしてください。

次に、イングレス・ポートまたはエグレス・ポート(ポート通信が有効)に対するファイアウォール・コマンドの例を示します:

ノード間のポート通信を有効にするファイアウォール・コマンド(両方のマシンで実行):


sudo firewall-cmd --permanent --new-service=odiwls
sudo firewall-cmd --permanent --service=odiwls --set-description="ODI WLS server"
sudo firewall-cmd --permanent --service=odiwls --add-port=7001/tcp
sudo firewall-cmd --permanent --add-service=odiwls
sudo firewall-cmd --reload

sudo firewall-cmd --permanent --new-service=odimanagedwls
sudo firewall-cmd --permanent --service=odimanagedwls --set-description="ODI WLS Managed Server"
sudo firewall-cmd --permanent --service=odimanagedwls --add-port=8001/tcp
sudo firewall-cmd --permanent --add-service=odimanagedwls
sudo firewall-cmd --reload

sudo firewall-cmd --permanent --new-service=odiwlsnodemgr1
sudo firewall-cmd --permanent --service=odiwlsnodemgr --set-description="ODI WLS Node Manager1"
sudo firewall-cmd --permanent --service=odiwlsnodemgr --add-port=5556/tcp
sudo firewall-cmd --permanent --add-service=odiwlsnodemgr1
sudo firewall-cmd --reload

sudo firewall-cmd --permanent --new-service=odiwlsnodemgr2
sudo firewall-cmd --permanent --service=odiwlsnodemgr --set-description="ODI WLS Node Manager2"
sudo firewall-cmd --permanent --service=odiwlsnodemgr --add-port=5557/tcp
sudo firewall-cmd --permanent --add-service=odiwlsnodemgr2
sudo firewall-cmd --reload

sudo firewall-cmd --permanent --new-service=odiwlscluster
sudo firewall-cmd --permanent --service=odiwlscluster --set-description="ODI WLS cluster"
sudo firewall-cmd --permanent --service=odiwlscluster --add-port=7574/udp
sudo firewall-cmd --permanent --add-service=odiwlscluster
sudo firewall-cmd --reload

sudo firewall-cmd --permanent --new-service=odiwlscoherencewk1
sudo firewall-cmd --permanent --service=odiwlscoherencewk1 --set-description="ODI WLS coherence WKA1"
sudo firewall-cmd --permanent --service=odiwlscoherencewk1 --add-port=8095/tcp
sudo firewall-cmd --permanent --add-service=odiwlscoherencewk1
sudo firewall-cmd --reload

sudo firewall-cmd --permanent --new-service=odiwlscoherencewk2
sudo firewall-cmd --permanent --service=odiwlscoherencewk2 --set-description="ODI WLS coherence WKA2"
sudo firewall-cmd --permanent --service=odiwlscoherencewk2 --add-port=8096/tcp
sudo firewall-cmd --permanent --add-service=odiwlscoherencewk2
sudo firewall-cmd --reload

TCPリング・ポート32783 – Coherenceクラスタ

ファイアウォールを実行している場合は、指定したアドレスおよびポートを使用できるように構成する必要があります。ファイアウォールは、通常はクラスタ・メンバー間で設定されません。ソリューションでファイアウォールを使用する必要がある場合は、次を確認します。

  • マルチキャストとユニキャストの両方の構成のUDPとTCPの両方用に、クラスタ・ポート(デフォルトで7574)が開かれている。
  • Coherence TCPリング/IPモニター停止検出機能用に、TCPポート7が開かれている。
  • UDPとTCPの両方のトラフィック用に、ユニキャスト・ポート範囲が開かれている。システムによって割り当てられているエフェメラル・ポートに依存するのではなく、ユニキャストのリスニング・ポート範囲が明示的に設定されていることを確認します。

クラスタ・メンバーのユニキャスト・ポートは、オペレーティング・システムの使用可能なエフェメラル・ポートの範囲から自動的に割り当てられます。これにより、Coherenceと他のアプリケーションの間でポートの競合が誤って発生することがなくなります。ただし、クラスタ・メンバー間でファイアウォールが必要な場合は(特殊な構成)は、ポートを手動で構成する必要があります。

ユニキャスト・ポートは、次に示すように-D引数を使用して指定できます:

-Dcoherence.localport=9000 -Dcoherence.localport.adjust=9200

オペレーション・オーバーライド・ファイルを使用するかわりに、システム・プロパティであるcoherence.localhostcoherence.localportおよびcoherence.localport.adjustを使用して、ユニキャスト・ポートと自動ポート調整の設定を指定できます。coherence.localport.adjust値は、ローカル・ポートの自動調整の上限です。前述の例では、使用されるポート範囲の値は9000および9200です。他の任意のポート範囲を使用できます。

両方のノードに次のファイアウォール・ルールを追加する必要があります:

sudo firewall-cmd --permanent --new-service=odicoherencecluster
sudo firewall-cmd --permanent --service=odicoherencecluster --set-description="ODI Coherence Cluster TCP Ring"
sudo firewall-cmd --permanent --service=odicoherencecluster --add-port=32783/tcp
sudo firewall-cmd --permanent --add-service=odicoherencecluster
sudo firewall-cmd --reload

TCPポート7 – Coherence停止検出

両方のノードに次のファイアウォール・ルールを追加する必要があります:

sudo firewall-cmd --permanent --new-service=odicoherencedeathdetect
sudo firewall-cmd --permanent --service=odicoherencedeathdetect --set-description="ODI Coherence Cluster TCP Ring"
sudo firewall-cmd --permanent --service=odicoherencedeathdetect --add-port=7/tcp
sudo firewall-cmd --permanent --add-service=odicoherencedeathdetect
sudo firewall-cmd –reload

sudo firewall-cmd --list-all

両方のノードへのロード・バランサHTTPトラフィック

両方のノードに次のファイアウォール・サービスを追加する必要があります:

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --reload