セントラル・ステージングの場所を使用したrsyncの実装
この実装では、rsyncテクノロジを使用し、中央のステージング場所に基づいてモデルに従います。このモデルには、コーディネータとして機能する要塞ホスト・ノードがあります。レプリケートする必要がある各ホストに接続し、コンテンツを共通のステージング場所にコピーします。
ステージングの場所を中央に配置してrsyncを実装する利点は次のとおりです。
- これは任意の中間層に適用可能な汎用ソリューションであるため、複数のシステムがある場合は、それらのすべてで同じアプローチを使用できます。
- これは、基礎となるストレージ・タイプに依存しません。ブロック・ボリューム、NFSなどに存在するファイル・アーティファクトのレプリケートに有効です。
- ストレージはセカンダリ・ノードにマウントされたままにできます。したがって、スイッチオーバーまたはフェイルオーバー操作ごとにセカンダリにストレージを接続またはマウントする追加の手順は必要ありません。
- ピア・ツー・ピアの実装と比較して、スクリプトを実行するための中央ノードがあるため、メンテナンスが簡単になります。
中央のステージングの場所でrsyncを実装する際の考慮事項は次のとおりです。
- 各環境のカスタム・スクリプトを作成し、定期的に実行することはユーザーの責任です。
- レプリカの方向を逆にする方法を実装するのはユーザーの責任です。
- このモデルでは、中央のステージングの場所に追加のホストとストレージが必要です。
ピアツーピア・モデルと同様に、rsyncスクリプトではプル・モデルまたはプッシュ・モデルを使用できます。プル・モデルでは、リモート・ノードからローカル・ノードにファイルがコピーされます。"push"モデルでは、スクリプトはローカル・ノードからリモート・ノードにファイルをコピーします。Oracleでは、プル・モデルを使用してプライマリ・ホストからコンテンツを取得することをお薦めします。これは、プライマリ・ノードがコピーのオーバーヘッドからオフロードされるためです。
セントラル・ステージングを使用したrsyncのレプリケーションの設定
中央のステージングの場所でrsyncを実装するには、次のことが必要です。
- すべてのホスト(プライマリとセカンダリの両方)へのSSH接続を持つ要塞ホスト。
- レプリケートされる中間層ファイル・システムの内容を格納するのに十分な領域がある、要塞ホスト内のステージング・フォルダ。
rsyncを使用して中間層ファイル・アーティファクトをこのステージング・フォルダとの間でコピーするスクリプト。rsyncスクリプトは、コピーから特定のフォルダ(ロック・ファイル、ログ、一時ファイルなど)をスキップできます。- サイト固有の情報を管理する方法。コピーからその情報を除外するか、レプリカの後に適切な情報で更新します。
- これらのスクリプトを定期的に実行するようにスケジュールします。
- スイッチオーバーまたはフェイルオーバー後にレプリカの方向を変更するメカニズム。このメカニズムは、サイトの役割を識別する動的チェック、またはスイッチオーバーまたはフェイルオーバー後の手動変更(たとえば、適切なスクリプトの無効化および有効化)である場合があります。
- 例1: 『Oracle Fusion Middleware障害時リカバリ・ガイド』のスクリプトの使用
- 例2: WLS-HYDRフレームワークの使用
ノート:
この例は、すべての中間層システムに適用されます。参照として、『Oracle Fusion Middleware障害時リカバリ・ガイド』で提供されるスクリプトを使用して、Oracle WebLogic DRシステムの中間層レプリカ(rsync_for_WLS.shおよびrsync_copy_and_validate.sh)を実行します。しかし、これらのスクリプトは一般的に適用可能で、OCIの中間層ファイル・システム・アーティファクトを同期するのに十分な柔軟性を提供します。
『Oracle Fusion Middleware障害時リカバリ・ガイド』には、中間層システムでリモート・コピーを実行するためのrsyncスクリプトが用意されています。これらのスクリプトは、すべてのrsyncモデルに対して有効です。この特定の例は、中央ステージング・モデルで使用する方法を示しています。この実装では、2つのステップでプル操作を使用します。
- 要塞ホストは、すべてのプライマリ・ホストからコンテンツをプルし、中央のステージングに格納します。
- 次に、すべてのセカンダリ・ノードがプル操作を実行して、中央のステージングから内容を収集します。
これらのスクリプトを使用して中間層レプリケーションを設定するには、『Oracle Fusion Middleware障害時リカバリ・ガイド』のプライマリ・ファイル・システムのセカンダリ・サイトへのレプリケートに関する項、特にレプリケーションの再同期アプローチに関する項およびステージングの場所の使用に関する項のステップを参照してください。
ノート:
この例は、Oracle WebLogic Serverシステムに適用されます。WLS-HYDRフレームワークのレプリケーション・モジュールを使用しますが、WLS-HYDRフレームワークを使用して作成されたかどうかに関係なく、Oracle WebLogic Server DR環境に適用されます。
このモデルでは、中央ホスト・ノードが合計コーディネータとして機能し、プル操作およびプッシュ操作を実行します。レプリケートする必要がある各ホストに接続し、コンテンツを共通のステージング場所にコピーします。このノードは、ステージングの場所から宛先ホストへのコピーも調整します。このアプローチでは、コピーのオーバーヘッドから個々のノードをオフロードします。
WLS-HYDRフレームワークは、DR設定時の初期コピーにこのアプローチを使用します。その後、フレームワークのレプリケーション・モジュールを再利用してプルを繰り返し、定期的にプッシュできます。WLS-HYDRフレームワークおよびその他のリソースへのリンクについては、このプレイブックの「詳細」を参照してください。
要塞ノードは、次の2つのステップでレプリカを実行します。
- プル操作。この操作では、プライマリ・ホストに接続し、ファイル・システムのコンテンツを要塞ホストのステージング・フォルダにコピーします。
- プッシュ操作。この操作では、内容が要塞のステージング・フォルダからすべてのセカンダリ・ホストにコピーされます。
中央ノードはすべての操作を実行するため、スケジューリング、ログ、メンテナンスなどはそのノードに一元化されます。システムに多数のノードがある場合、これはピアツーピア・モデルまたは前の例と比較して効率的です。
レプリカ-wls-hydr-framework-oracle.zip
WLS-HYDRフレームワークを使用してセカンダリ・システムを作成した場合、要塞ホストはレプリカを実行する準備が整っています。それ以外の場合は、この時点で構成できます。レプリカを設定するには、次のステップに従います。
セントラル・ステージングを使用したrsyncのレプリケーションの検証
スイッチオーバーまたはフェイルオーバー操作では、プロセスが起動される前に、レプリケートされた情報がスタンバイ・サイトで使用可能である必要があります。これは、(スタンバイ・データベースをスナップショット・モードでオープンして)セカンダリ・システムを検証する場合にも必要です。
この実装では、ストレージはセカンダリ・サイトで常に使用可能であるため、ボリュームをアタッチまたはマウントする必要はありません。必要な唯一のアクションは、コンテンツの最新バージョンが含まれていることを確認することです。
その後、システムの検証に必要な追加のステップを実行できます。
セントラル・ステージングの場所を使用したrsyncの進行中のレプリケーションの実行
レプリケーション・スクリプトを定期的に実行して、セカンダリ・ドメインとプライマリの同期を維持します。
この実装を使用する場合は、進行中のレプリケーションに関する次の推奨事項に従ってください。
- OS
crontabまたは別のスケジューリング・ツールを使用して、レプリケーション・スクリプトを定期的に実行します。たとえば、ディザスタ・リカバリ・ガイドで提供されるrsyncスクリプトを使用する場合は、『Oracle Fusion Middlewareディザスタ・リカバリ・ガイド』のRsyncスクリプトを使用した進行中のレプリケーションのスケジュールに関する項のステップに従います。これらのリソースやその他のリソースへのリンクについては、このプレイブックの「詳細」を参照してください。レプリケーションの頻度については、このプレイブックの前述の中間層ファイル・アーティファクトで説明されているガイドラインに従ってください。 - 中間層プロセスをスタンバイ・サイトで停止したままにします。変更のレプリケート中にサーバーがスタンバイ・サイトで稼働している場合、その変更は次回起動時に有効になります。スタンバイ・サイトを検証する場合、またはスイッチオーバーまたはフェイルオーバーの手順中にのみ起動します。
- 各サイトに固有の情報を最新の状態に維持します。たとえば、ファイル・システムにAutonomous Databaseに接続するためのアーティファクトを含むフォルダが含まれている場合は、このフォルダのバックアップ・コピーを保持します。ウォレットで更新を実行する場合は、ウォレット・フォルダのバックアップを更新してください。このようにして、後続のスイッチオーバーおよびフェイルオーバーで正しくリストアされます。
- スイッチオーバーまたはフェイルオーバー後、レプリカの方向を逆にします。これは、特定の実装によって異なります。これは、アクティブ・サイトのユーザーを識別する動的チェックを使用するか、スイッチオーバーまたはフェイルオーバー後の手動変更を使用して、適切なスクリプトを無効化および有効化することで実行できます。
ヒント :
- DRガイドで提供されている
rsyncスクリプト(例1)を使用する場合は、レプリカをもう一方の方向で実行するための同等のスクリプトを作成してください。crontabまたはスケジュール済ツールで、実際のロールに適したスクリプトのみを有効にします。 - WLS-HYDR (例2)を使用する場合は、WLS-HYDRフレームワークでプライマリの役割を変更し、次のレプリケーションが別の方向に進むようにします。このため、
WLS-HYRDR/lib/DataReplication.pyを編集し、次から変更します。if True: PRIMARY = PREM STANDBY = OCI else: PRIMARY = OCI STANDBY = PREM次のようになります。if False: PRIMARY = PREM STANDBY = OCI else: PRIMARY = OCI STANDBY = PREM
- DRガイドで提供されている

