ファイル・システム・アーティファクトのOCIへのレプリケート

セカンダリ中間層には、プライマリのSOAドメインで使用されるアーティファクトのレプリカが必要です。アーティファクトは、変更の頻度に応じて静的または動的に設定できます。DR設定の一部として、アーティファクトの初期レプリケーションを実行する必要があります。この初期レプリカは、システムのライフサイクル中にリフレッシュされます。

アーティファクトについて

レプリケートする必要があるアーティファクトのタイプを決定します。

  • 静的アーティファクト:頻繁には変更されないファイルやディレクトリです。これには次が含まれます:
    • Oracleホーム:通常は、OracleホームとOracle WebLogic Serverホームで構成されます。Oracle Fusion Middlewareでは、単一のバイナリ・ファイルのインストールから複数のOracle WebLogic Serverの管理対象サーバーを作成できます。共有ストレージの1つの場所にバイナリ・ファイルをインストールし、異なるノードのサーバーでこのインストールを再利用できます。可用性を最大化するため、Oracleでは冗長バイナリ・インストールを使用することをお薦めします。
    • Oracle Inventory: orainventoryは、既存のOracleホームのリストを含むフォルダで、Oracleホームとは別のフォルダにあります。/etc/oraInst.locファイルは、orainventoryの場所を決定します。
  • 動的アーティファクト:頻繁に変更されるファイルです。アーティファクトは次のとおりです。
    • ドメイン・ホーム:管理サーバーおよび管理対象サーバーのドメイン・ディレクトリ。EDGトポロジでは、ASERVER_HOMEは共有の場所にあり、MSERVER_HOMEはプライベートの場所にあり、各サーバーには独自のMSERVER_HOMEがあります(ただし、NFSにも格納できます)。
    • .earファイルや.warファイルなどのアプリケーション・アーティファクト。
    • MDSリポジトリやSOAINFRAスキーマなどのデータベース・アーティファクト。
    • JMSプロバイダやトランザクション・ログなどの永続ストア。Oracleでは、これらのアーティファクトをデータベースに格納することをお薦めします。これはEDGトポロジで推奨されるアプローチであり、特にディザスタ・リカバリ(DR)環境にとって役立ちます。これは、これらが基礎となるOracle Data Guardを介してスタンバイ・サイトに自動的にレプリケートされるためです。
    • デプロイメント・プラン。ファイル・アダプタやJMSアダプタなどのテクノロジ・アダプタの更新に使用されます。これらは、アーティファクトがデプロイされているクラスタ内のすべてのノードにアクセスできる場所に保存する必要があります。
    • ファイル・アダプタで使用されるファイル、MFTによって転送されたファイル、その他のカスタム・ランタイム・アーティファクトなど、その他のランタイム・アーティファクト。

データベースに存在するすべてのコンテンツ(MDSリポジトリ、SOAINFRAスキーマ、JMSおよびTLOG、カスタム・データなど)は、Oracle Data Guardを介してセカンダリ・サイトに自動的にレプリケートされます。

障害時リカバリ・トポロジでファイル・システムに存在するコンテンツ(Oracle HomeやWebLogicドメイン構成など)をレプリケートするには、様々なアプローチを使用できます。最も一般的なものは、ストレージ・レベルのレプリケーション、rsyncベースのレプリカまたはDBFSベースのレプリカです。

ここで説明するハイブリッドDRモデルは、プライマリがオンプレミスで、セカンダリがOCIの場合です。ストレージ・レベルのレプリケーションは、ハイブリッドDRモデルでは使用できません。かわりに、rsyncは、プライマリからスタンバイにアーティファクトをレプリケートするための推奨アプローチです。Oracle Database File System (DBFS)ベースのレプリカを使用して、いくつかのアーティファクトをレプリケートできます。詳細は、Oracle Database File Systemについての「さらに学ぶ」を参照してください。

フォルダおよびファイル・システムのアーティファクトの識別

プライマリ環境のプライマリSOAホストとそのコンテンツで使用されるNFSボリュームおよびフォルダを識別します。

次の表に、この例で使用されるプライマリ・ファイル・システム・アーティファクトの例を示します。

ファイル・システム・ボリューム ホスト マウント・ポイント・フォルダ コメント アーティファクトのタイプ
NFS VOLFMW1 /export/soa/products1 SOAHOST1 /u01/oracle/products JDKおよびFMWバイナリ・ファイルのボリューム。 静的
NFS VOLFMW2 /export/soa/products2 SOAHOST2 /u01/oracle/products JDKおよびFMWバイナリ・ファイルのボリューム。 静的
NFS VOLADMIN/export/soa/config SOAHOST1、SOAHOST2 /u01/oracle/config 管理サーバーのドメイン・ディレクトリおよびその他の共有構成(デプロイメント・プラン、アプリケーション、キーストアなど)。 動的
ローカル* /u02/oracle/config SOAHOST1 /u02/oracle/config SOAHOST1のプライベート構成のボリューム 動的
ローカル* /u02/oracle/config SOAHOST2 /u02/oracle/config SOAHOST2のプライベート構成のボリューム 動的
NFS VOLRUNTIME /export/soa/runtime SOAHOST1、SOAHOST2 /u01/oracle/runtime

ファイル・アダプタで使用されるファイルなどの共有ランタイム・コンテンツのボリュームおよびその他のランタイム・アーティファクト。

ノート:このフォルダではなくJDBC永続ストアを使用して、JMSメッセージおよびTLOGSをデータベースに格納することをお薦めします。

動的

*ローカル・ファイル・システム・ボリュームは、ローカル・ストレージではなくNFSでプライベート(非共有)マウントできます。

次の表に、フォルダの場所のEDG変数の例を示します。

EDG変数 Value
ORACLE_BASE /u01/oracle/products
ORACLE_HOME /u01/oracle/products/fmw
JAVA_HOME /u01/oracle/products/jdk
SHARED_CONFIG_DIR /u01/oracle/config
APPLICATION_HOME /u01/oracle/config/applications/mysoadomain
DEPLOY_PLAN_HOME /u01/oracle/config/dp
KEYSTORE_HOME /u01/oracle/config/keystores
ASERVER_HOME /u01/oracle/config/domains/mysoadomain
PRIVATE_CONFIG_DIR /u02/oracle/config
MSERVER_HOME /u02/oracle/config/domains/mysoadomain
NM_HOME /u02/oracle/config/nodemanager
ORACLE_RUNTIME /u01/oracle/runtime

プライマリ・ホストとスタンバイ・ホスト間の接続の確認

プライマリSOAホストは、リモート・スタンバイOracle Cloud Infrastructure (OCI)SOAホストに接続する必要があり、その逆も同様です。

リモートSOAホストの物理名は、DNSで解決可能であるか、リモート・ピアSOAホストの物理名およびIPを/etc/hostsファイルに含めることができます。つまり、セカンダリSOAホストの物理名とそのIPをプライマリSOAホストの/etc/hostsファイルに追加します。同様に、プライマリSOAホスト物理名とそのIPをセカンダリSOAホストの/etc/hostsファイルに追加します。

ノート:

プライマリが仮想ホスト名を使用せず、サーバーのリスニング・アドレスとして物理ノードのホスト名を使用する場合は、これらのステップを実行しないでください。このシナリオでは、プライマリ物理ノードのホスト名は、スタンバイのOCI SOAホストIPによって解決される必要があります。このシナリオでは、次のステップを実行するかわりに、ホストのIPを使用してSSHでリモート・ノードに接続します。
  1. プライマリ・オンプレミスSOAホストの/etc/hostsファイルを編集して、リモート・ピアSOAホストに物理名およびIPアドレスを含めます。
    次に、オンプレミス・ホストの別名の例を示します。
    
    #################################
    # ALIASES in on-prem
    #################################
    10.10.10.20   host-vip1.myopnetwork.com    host-vip1          ADMINVHN.example.com   ADMINVHN 
    10.10.10.13   host3.myopnnetwork.com       host3              SOAHOST1.example.com    SOAHOST1
    10.10.10.14   host4.myopnnetwork.com       host4              SOAHOST2.example.com    SOAHOST2
    # Front-end name (resolved but primary Load Balancer IP
    10.10.10.100    mysoa.example.com
    # Remote OCI soa hosts physical names (without virtual host name aliases!)
    100.70.10.13    hydrsoa1.midTiersubnet.hydrvcn.oraclevcn.com      hydrsoa1        
    100.70.10.14   hydrsoa2.midTiersubnet.hydrvcn.oraclevcn.com       hydrsoa2
  2. スタンバイOCI SOAホストの/etc/hostsファイルを編集して、リモートのオンプレミスSOAホストの物理名を含めます。仮想ホスト名別名を含めないでください。
    次に、スタンバイOCI SOAホストの別名の例を示します。
    #################################
    # ALIASES in OCI
    #################################
    100.70.10.20   hydrsoa-vip.midTiersubnet.hydrvcn.oraclevcn.com   hydrsoa-vip    ADMINVHN.example.com    ADMINVHN
    100.70.10.13   hydrsoa1.midtiersubnet.hydrvcn.oraclevcn.com      hydrsoa1       SOAHOST1.example.com    SOAHOST1
    100.70.10.14   hydrsoa2.midtiersubnet.hydrvcn.oraclevcn.com      hydrsoa2       SOAHOST2.example.com    SOAHOST2
    # Front-end name (resolved by secondary OCI LBR IP)
    1070.70.70    mysoa.example.com
    # Remote on-prem soa hosts physical names (without virtual host name aliases!)
    10.10.10.13   host3.myopnnetwork.com       host3
    10.10.10.14   host4.myopnnetwork.com       host4
  3. SSHコマンドを使用して、プライマリのオンプレミスSOAホストからセカンダリOCI SOAホストへの相互接続を確認します。
    OCIコンピュート・インスタンスに接続する場合は、SSHキーが必要です。
    ssh -i my_private_key oracle@hydrsoa1.midtiersubnet.hydrvcn.oraclevcn.com
    ssh -i my_private_key oracle@hydrsoa2.midtiersubnet.hydrvcn.oraclevcn.com
  4. SSHコマンドを使用して、セカンダリOCI SOAホストとプライマリ・オンプレミスSOAホスト間の相互接続を確認します。
    sshキーは必要ない可能性があります。
    ssh  oracle@host3.myopnnetwork.com
    ssh  oracle@host4.myopnnetwork.com

セカンダリOCIホストのフォルダ構造の複製

この時点で、Oracle Cloud Infrastructure (OCI) SOAコンピュート・インスタンスにはすでにFSSがマウントされています。コンテンツをレプリケートする前に、EDGの適切なフォルダ構造を作成します。

次の例は、このドキュメントのEDG環境で使用されるEDGフォルダ構造を作成するためのコマンドを示しています。
  1. oracleユーザーとして、OCI SOAHOST1にフォルダを作成します。
    mkdir -p  /u01/oracle/products/fmw
    mkdir -p  /u01/oracle/products/jdk
    mkdir -p  /u01/oracle/products/oraInventory
    mkdir -p /u02/oracle/config
    mkdir -p /u01/oracle/config/domains/mysoadomain
    mkdir -p /u01/oracle/config/applications/mysoadomain
    mkdir -p /u01/oracle/config/dp/mysoadomain
    mkdir -p /u01/oracle/config/keystores
  2. oracleユーザーとして、OCI SOAHOST2にフォルダを作成します。
    mkdir -p  /u01/oracle/products/fmw
    mkdir -p  /u01/oracle/products/jdk
    mkdir -p  /u01/oracle/products/oraInventory
    mkdir -p /u02/oracle/config

ORACLE_HOMEおよびJAVA_HOMEをセカンダリ・ホストにコピーします

ORACLE_HOMEおよびJAVA_HOMEをプライマリ・ホストからセカンダリ・ホストにコピーします。

通常、ORACLE_HOMEおよびJAVA_HOMEは、oraInventoryとともに同じ製品フォルダの下にあります。前に特定した場所については、「フォルダおよびファイル・システム・アーティファクトの識別」を参照してください。

  1. オンプレミスのプライマリSOAHOST1からリモートSOAHOST1にproductsフォルダをコピーします。
  2. オンプレミスのプライマリSOAHOST2から製品ホーム・フォルダをコピーし、リモートのSOAHOST2に保存します。他のコンピュート・インスタンスについても繰り返します。
  3. プライマリ・ホストから/etc/oraInst.locファイルをコピーし、セカンダリ・ホストに保存します。
    このファイルにはoraInventoryの場所のみが含まれ、時間の経過とともに変化しないため、このコピーは1回かぎりのアクションです。

    この例では、oraInventory/u01/oracle/productsの下にあり、jdkおよびOracleホームとともにコピーされます。oraInventoryが別の場所にある場合は、セカンダリ・ホストにもコピーしてください。

    ノート:

    rsyncを使用して、製品フォルダをオンプレミスのプライマリSOAHOST1からリモートのSOAHOST1にコピーするサンプル・スクリプトは、「コードのダウンロード」にあります。同じ手順を繰り返して、製品ホームを他のセカンダリ・コンピュート・インスタンス(つまり、SOAHOST2からリモートのSOAHOST2)にコピーします。

スタンバイ・ホストへのWebLogicドメイン構成フォルダのコピー

WebLogicドメイン共有構成フォルダおよびプライベート構成フォルダをOracle Cloud Infrastructure (OCI) SOAホストにコピーします。

  1. オンプレミス・プライマリSOAHOST1のWebLogicドメイン共有構成フォルダをリモートOCI SOAHOST1にコピーします。
    WebLogicドメインの共有構成は、SHARED_CONFIG_DIR変数によって設計された場所にあり、APPLICATION_HOMEDEPLOY_PLAN_HOMEKEYSTORE_HOMEASERVER_HOMEなどの共有構成フォルダが含まれています。

    ノート:

    共有構成フォルダは、オンプレミスのプライマリSOAHOST1からリモートSOAHOST1にコピーできます。これは共有フォルダであるため、OCI SOAホストのいずれかにコピーするだけです。

    スクリプトの例は、「コードのダウンロード」にあります。

  2. オンプレミス・プライマリSOAHOST1のWebLogicドメイン・プライベート構成フォルダをコピーし、リモートOCI SOAHOST1に保存します
    WebLogicプライベート構成は、変数 PRIVATE_CONFIG_DIRで指定された場所にあり、MSERVER_HOMEおよびNM_HOMEフォルダが含まれています。これらのフォルダは共有されず、各SOAホストに固有(プライベート)です。したがって、各サーバーのコピーを実行する必要があります。オンプレミスSOAHOST1のプライベート構成をOCI SOAHOST1にコピーし、オンプレミスSOAHOST2のプライベート構成をOCI SOAHOST2にコピーする必要があり、以降も同様です。

    ノート:

    「コードのダウンロード」で、rsyncを使用してプライベート構成フォルダをオンプレミスのプライマリSOAHOST1からリモートのSOAHOST1にコピーするサンプル・スクリプトを確認できます。

共有ランタイム・フォルダのコピー

必要に応じて、共有ランタイム・フォルダをOracle Cloud Infrastructure (OCI) SOAホストにコピーします。

共有ランタイム・フォルダは、変数ORACLE_RUNTIMEで指定された場所にあります。前に特定した場所については、「フォルダおよびファイル・システム・アーティファクトの識別」を参照してください。

ノート:

JDBC永続ストアを使用して、JMS永続ストアとTLOGSストアをデータベースに格納することをお薦めします。これらはデータベース内にあるため、Oracle Data Guardを使用してセカンダリ・システムに自動的にレプリケートされます。
  • これはランタイム情報であるため、通常は設定フェーズでレプリケートする必要はありません。ただし、このフォルダをスタンバイ・ホストにレプリケートする必要がある場合は、WebLogicドメイン共有構成ファイルのコピーに使用した同様の方法でコンテンツをコピーできます。