OCI Full Stack Disaster Recoveryを使用したJD Edwardsディザスタ・リカバリの構成について

Oracle Cloud Infrastructure (OCI)でホストされているJD Edwards (JDE)アプリケーションの堅牢で自動化されたスケーラブルなディザスタ・リカバリ(DR)戦略を確保するには、Oracle Cloud Infrastructure Full Stack Disaster Recovery (FSDR)サービスを使用します。FSDRは、インフラストラクチャ・コンポーネントとアプリケーション・コンポーネントの両方のリージョン間でフェイルオーバー・プロセスとフェイルバック・プロセスを調整することで、ビジネスの継続性を確保します。

このドキュメントでは、JD Edwardsアーキテクチャについて説明し、必要なセキュリティ、パフォーマンスおよびコンプライアンス要件を考慮した、OCI FSDRを使用したDR環境の設定に関連する構成および実装手順を示します。

JD Edwardsアーキテクチャ

この図は、プライマリ・リージョンとセカンダリ・リージョンの両方を備えたJD Edwardsアプリケーションのデプロイメント・アーキテクチャの概要を示しています。



jde-dr-fsdr-oracle.zip

プライマリ・リージョン

プライマリ・リージョンでは、JDE環境はVirtual Cloud Network (VCN)内にデプロイされ、3つの専用サブネットにセグメント化されます。このサブネットは、次に示すように、アプリケーション・リソース機能によって分離されます。

  • ロード・バランサ層

    ロード・バランサ層は、エンド・ユーザーのJDE Webサービスへのアクセスを提供するOCIロード・バランサをホストします。

  • アプリケーション階層

    アプリケーション層には、エンタープライズ・サーバー、Webサーバー、アプリケーション・インタフェース・サービス(AIS)サーバーなどのコア・アプリケーション・コンポーネントが含まれます。

  • 管理層

    管理層には、デプロイメント・サーバーやServer Managerコンソール・サーバーなど、JDEの管理用ツールおよびサービスが含まれます。

  • データベース階層

    データベース・レイヤーでは、JDEデータベースはAutonomous Transaction Processing–Shared (ATP-S)にデプロイされます。アプリケーション・サーバーは、エンドポイントを使用してデータベースに接続します。Oracle Autonomous Data Guardが有効になり、セカンダリ・リージョンにスタンバイ・データベースが作成され、高可用性およびディザスタ・リカバリのためのリアルタイム・データ・レプリケーションが保証されます。

  • ストレージとデータ保護

    コンピュート・インスタンスによって使用されるブロック・ボリューム・グループは、リージョン間ボリューム・グループ・レプリケーションによって保護され、セカンダリ・リージョンはレプリケーション・ターゲットとして構成されます。

セカンダリ・リージョン

セカンダリ・リージョンはディザスタ・リカバリ・サイトとして機能し、プライマリregion.Itの重要なコンポーネントには次が含まれます。

  • プライマリ・リージョンのネットワーク・レイアウトに一致するレプリケートされたVCN構造。
  • フェイルオーバー中のアクセスの継続性を確保するためのレプリカ・ロード・バランサ。
  • Autonomous Data Guardを使用してプライマリとの同期を維持するスタンバイATP-Sデータベース。
  • ボリューム・グループのレプリカ。プライマリ・リージョンに障害が発生した場合にデータの可用性を確保します。

JD Edwards構成関連ファイルの理解

JDEは、複数の構成ファイルを使用して、そのコンポーネントと、データベースや認証サービスなどの他の参加層間の接続を管理します。これらのファイルは、接続パラメータ、ランタイム設定および統合動作の定義において重要な役割を果たします。これらのファイルとその内容を適切に理解することは、シームレスなアプリケーション機能を確保するためにディザスタ・リカバリ(DR)シナリオを構成する際に不可欠です。
次に、主要な構成ファイルのサマリーを示します。

フル・スタック・ディザスタ・リカバリの概念

FSDRを構成および実装する場合、次の概念および用語を理解する必要があります。

  • DR保護グループ
    • 定義: DR保護グループには、完全なアプリケーション・スタックを形成するコンピュート・インスタンス、ボリューム・グループ、ロード・バランサ、データベースなど、必要なすべてのOCIリソースが含まれます。
    • 利点: DR保護グループは、フェイルオーバー、フェイルバックおよびテスト・シナリオの単一ユニットとして扱われます。これにより、すべてのリソースがまとめてリカバリされるため、ダウンタイムとデータ損失が最小限に抑えられます。
  • DR計画

    DR計画は、FSDRによって作成される自動ランブックで、プライマリDR保護グループ内のすべてのリソースのディザザスタ・リカバリを実行します。これは、プライマリDR保護グループ・リージョン内のすべてのリソースをそのピア・セカンダリDR保護グループ・リージョンに遷移する方法を定義するステップで構成されます。様々なタイプのDR計画を次に示します。

    • フェイルオーバー(計画外):プライマリ・リージョンのサービスの停止を試行せずに、スタンバイ・リージョンのアプリケーション・スタックを起動することで即時遷移を実行する場合は、フェイルオーバー計画を使用します。フェイルオーバー計画は通常、停止または障害がプライマリ・リージョンに影響する場合にDR遷移を実行するために使用されます。
    • スイッチオーバー(計画):プライマリ・リージョン内のアプリケーション・スタックを停止してから、スタンバイ・リージョンでそれを起動することで、順次遷移を実行する場合は、スイッチオーバー計画を使用します。スイッチオーバー計画は通常、計画済サイト・メンテナンス、ソフトウェアのパッチ適用、DRテストおよび検証の目的で使用されます。
    • 開始ドリル:開始ドリルは、プライマリDR保護グループ・リソースを中断することなく、DRドリルを実行する計画を生成します。スタンバイDR保護グループにリソースのレプリカを作成します。
    • ストップ・ドリル: このDR計画は、スタート・ドリルによって作成されたリソースのレプリカを削除することで、DRドリルを停止します。
  • 移動インスタンス
    • 定義: プライマリ・リージョンにのみデプロイされるインスタンス。
    • ユース・ケース: コールドDRトポロジで共通。アプリケーションまたはサービスの一部または全員のコンポーネントがスタンバイ・リージョンに事前デプロイされる必要のないDRトポロジ。
    • 動作: 障害イベント中、インスタンスの移動は、プライマリ・リージョンのDR保護グループからスタンバイ・リージョンのDR保護グループに移動します。
    • 利点:スタンバイ・リージョンのリソースが継続的に稼働していないため、コスト効率が高くなります。
    • 考慮事項:この方法では、スタンバイ・リージョンでインスタンスをプロビジョニングおよび起動する必要があるため、リカバリ時間が長くなります。
  • 非移動インスタンス
    • 定義:プライマリ・リージョンとスタンバイ・リージョンの両方に事前にデプロイされたインスタンス。
    • ユース・ケース: アクティブ/パッシブDRトポロジで共通です。このトポロジでは、アプリケーションまたはサービスの一部または全部のコンポーネントがスタンバイ・リージョンに事前デプロイされ、今後のDR遷移に備えます。
    • 動作: DR操作中に、これらのインスタンスは、リージョン間でサービスを遷移するために、必要に応じて起動または停止されます。
    • 利点:この方法では、スタンバイ・リージョンに既存のインフラストラクチャがあるため、リカバリが高速になります。
    • 考慮事項:インフラストラクチャを両方のリージョンでメンテナンスする必要があるため、コストが高くなる可能性があります。

フル・スタック・ディザスタ・リカバリの前提条件

FSDRプロセスに進む前に、次の前提条件を満たす必要があります。

  • DRリージョンにVCN、サブネット、ルート表、セキュリティ・リストおよびネットワーク・ゲートウェイをプロビジョニングします。フェイルオーバー機能および接続をサポートするには、ネットワーク構成がプライマリ・リージョンのものと同じであることを確認します。
  • DR環境の一部として作成されたインスタンスに管理者権限を付与するポリシーを許可する動的グループを定義します。
  • コンピュート・インスタンスでスクリプトを実行するには、管理者権限が必要です。実行コマンド・プラグインは、ocarunユーザーを使用してこれらのスクリプトを実行します。このユーザーに適切な権限があることを確認します。
    1. oracle-cloud-agent-run-commandを開いて編集します。
       vi ./101-oracle-cloud-agent-run-command
    2. 構成ファイルに次の行を追加します。
      ocarun ALL=(ALL) 
      NOPASSWD:ALL
    3. その後、次を実行します。
      vi sudo -cf ./101-oracle-cloud-agent-run-command
    4. 構成ファイルを/etc/sudoers.dに追加します:
      sudo cp ./101-oracle-cloud-agent-run-command /etc/sudoers.d/
  • ボリューム・グループのリージョン間バックアップ機能をアクティブ化します。
  • セカンダリ・リージョンにロード・バランサをデプロイします。FSDR構成の一部として、バックエンド・セット(インスタンス)のみがプライマリ・リージョンからスタンバイ・リージョンに移動されます。ロード・バランサ自体は、事前にスタンバイ・リージョンに手動で作成する必要があります。
  • アプリケーション・フェイルオーバーをサポートするために、DRリージョンで対応する(ピア)データベース・インスタンスを設定します。
  • プライマリ・リージョンにログ用のオブジェクト・ストレージ・バケットを作成します。このバケットには、環境に固有のDRログおよびアーティファクトが格納されます。
  • スタンバイ・リージョンに追加のオブジェクト・ストレージ・バケットを作成します。このバケットは、スタンバイ・リージョンでのDR準備状況を確保するために、レプリケーションまたはロギング目的で使用されます。
  • 次のカスタム・スクリプトを適切な場所に配置します。

カスタム・スクリプトは適用

これらのカスタム・スクリプトは、FSDRプロセス中に実行されます。