Oracle Data Guardファスト・スタート・フェイルオーバーについて学習
Oracle Exadata Database MachineおよびOracle Real Application Clusters (Oracle RAC)の高可用性、パフォーマンスおよびスケーラビリティが組み込まれており、Azureベースのアプリケーションのレイテンシは低くなります。
別の可用性ゾーンまたはリージョンのスタンバイ・データベースを使用してソリューションを拡張すると、データ・センターおよびリージョンの停止に対するデータ保護およびディザスタ・リカバリが提供されます。
Data Guardは、データをスタンバイ・データベースに同期的に転送して、データ損失をゼロにします。ファスト・スタート・フェイルオーバーにより、ブローカは手動フェイルオーバーのステップを実行せずに、ターゲット・スタンバイ・データベースをプライマリ・ロールに自動的にフェイルオーバーできます。
オブザーバ・サイトにより、ファスト・スタート・フェイルオーバー環境を監視します。オブザーバは、プライマリ・データベースおよびスタンバイ・データベースとは異なるコンピュートVM上で実行され、プライマリ・データベースの可用性を監視する個別のクライアント側コンポーネントです。
ファスト・スタート・フェイルオーバーは、構成可能なリカバリ時間目標(RTO)により高速フェイルオーバーを実現し、同期モードではデータ損失ゼロ、非同期モードではバインドされたリカバリ・ポイント目標(RPO)のいずれかを実現します。
このソリューション・プレイブックでは、Oracle Exadata Database Service on Exascale Infrastructureを使用して、Data Guardを構成およびデプロイし、Oracle AI Database@Azure可用性ゾーン全体でファスト・スタート・フェイルオーバーを有効にする方法を学習します。Oracle Exadata Database Service on Dedicated Infrastructureにも同じソリューションが適用されます。
開始する前に
始める前に、次のことを確認してください。
- Exascale VMクラスタは、異なるAzure可用性ゾーンにデプロイされます。
- Oracle AI Database 26aiは、プライマリ可用性ゾーンに作成されます。
- プライマリおよびスタンバイExascale VMクラスタのネットワークIP CIDR範囲は重複しません。
次の解決方法を確認してください。
次に、AzureでコンピュートVMをプロビジョニングして、オブザーバ(できればプライマリ・データベースとスタンバイ・データベースとは異なる可用性ゾーン)をホストする必要があります。オブザーバは、プライマリ・データベースおよびスタンバイ・データベースに接続するOracleクライアントとして動作するため、軽量VM上で実行できます。
アーキテクチャ
次のアーキテクチャは、オブザーバが別の可用性ゾーンで実行されているクロスゾーンData Guardを示しています:
cross-zones-dg-oracledb-azure-oracle.zip
Data Guardトラフィックは、Oracle Cloud Infrastructure (OCI)またはAzureネットワークを介してルーティングできます。このアーキテクチャにより、Azureネットワークを介したData Guardネットワーク・トラフィックが、すべてのデータをAzureプラットフォーム内に保持するように指示されます。OCIサイトのVCNsは、Oracle AI Database@Azure上のOracle Exadata Database Service on Exascale Infrastructure VMクラスタがプライマリ・データベースおよびスタンバイ・データベースに対して作成された後に作成されます。
このアーキテクチャの内容は、次のとおりです。
- プライマリExascale VMクラスタは、CIDR
10.10.0.0/16および委任サブネットCIDR10.10.1.0/24を使用して、VNet1のプライマリ可用性ゾーンにデプロイされます。 - スタンバイExascale VMクラスタは、CIDR
10.20.0.0/16および委任サブネットCIDR10.20.1.0/24を使用して、VNet2のスタンバイ可用性ゾーンにデプロイされます。 - オブザーバは、CIDR
10.30.0.0/16およびサブネットCIDR10.30.1.0/24を使用してVNet3にデプロイされます。 VNet1は、Data Guardトラフィックがプライマリ・データベースとスタンバイ・データベース間で流れるように、VNet2とピアリングされます。VNet3は、オブザーバが両方のデータベースに接続できるように、VNet1とVNet2の両方とピアリングされます。
このアーキテクチャには次のコンポーネントがあります。
- Azureリージョン
Azureリージョンは、可用性ゾーンと呼ばれる1つ以上の物理Azureデータ・センターが存在する地理的領域です。リージョンは他のリージョンから独立しており、長距離の場合は複数の国または大陸にまたがる領域を分離できます。
AzureおよびOCIリージョンは、ローカライズされた地理的領域です。Oracle AI Database@Azureの場合、AzureリージョンはOCIリージョンに接続され、Azureの可用性ゾーン(AZ)はOCIの可用性ドメイン(AD)に接続されます。AzureとOCIリージョンのペアは、距離とレイテンシを最小限に抑えるために選択されます。
- Azure可用性ドメイン
Azure Availability Domain (可用性セット)は、仮想マシンの論理グループです。
- Azure Virtual Networkおよびサブネット
Azure Virtual Network (VNet)を使用すると、Azureリソースを、定義した論理的に分離されたプライベート・ネットワークにデプロイできます。このネットワークは従来のオンプレミス・ネットワークに似ていますが、Azureのスケーラブルで可用性の高いクラウド・インフラストラクチャの恩恵を受けています。VNetを作成した後、それを1つ以上のサブネットにセグメント化して、ワークロードのネットワーク・トラフィックを編成および制御できます。
- Azure委任サブネット
委任サブネットは、Oracle AI Database@Azureサービスに予約および委任されたVNetサブネットであり、Oracleはプライベート・ネットワークIP領域内に必要なデータベース・リソースをデプロイおよび管理できます。
- Azure Virtual Networkインタフェース・カード(VNIC)
Azureデータ センターのサービスには、物理ネットワーク インターフェイス カード(NIC)があります。仮想マシン・インスタンスは、物理NICに関連付けられている仮想NIC (VNIC)を使用して通信します。各インスタンスには、起動時に自動的に作成およびアタッチされるプライマリVNICがあり、インスタンスの存続期間中に使用できます。
- Microsoft AzureコンピュートVM
Azure Virtual Machines (VM)は、オンデマンドでスケーラブルなコンピュート リソースを提供し、物理サーバーやデスクトップのように使用できます。オペレーティングシステムとソフトウェア環境を完全に制御する必要がある場合は、VMを使用します。
物理ハードウェアを管理する必要はなくなりますが、仮想マシンで実行されているソフトウェアを構成、パッチ適用および管理することはできます。カスタム・ワークロードとレガシー・ワークロードをサポートしています。
- OCIのリージョン
OCIリージョンとは、可用性ドメインをホストする1つ以上のデータ・センターを含む、ローカライズされた地理的領域のことです。リージョンは他のリージョンから独立しており、長距離の場合は複数の国または大陸にまたがる領域を分離できます。
- 可用性ドメイン
可用性ドメインは、リージョン内の独立したスタンドアロン・データ・センターです。各可用性ドメイン内の物理リソースは、他の可用性ドメイン内のリソースから分離されているため、フォルト・トレランスが提供されます。可用性ドメインどうしは、電力や冷却、内部可用性ドメイン・ネットワークなどのインフラを共有しません。そのため、あるアベイラビリティ・ドメインでの障害が、リージョン内の他のアベイラビリティ・ドメインに影響を及ぼすことはありません。
- OCI仮想クラウド・ネットワークおよびサブネット
仮想クラウド・ネットワーク(VCN)は、ソフトウェアで定義されたカスタマイズ可能なネットワークであり、OCIリージョン内に設定します。従来のデータ・センター・ネットワークと同様に、VCNsではネットワーク環境を制御できます。VCNには、VCNの作成後に変更できる重複しないクラスレス・ドメイン間ルーティング(CIDR)ブロックを複数指定できます。VCNをサブネットにセグメント化して、そのスコープをリージョンまたは可用性ドメインに設定できます。各サブネットは、VCN内の他のサブネットと重複しない連続した範囲のアドレスで構成されます。サブネットのサイズは、作成後に変更できます。サブネットはパブリックにもプライベートにもできます。
- ネットワーク・セキュリティ・グループ(NSG)
NSGは、クラウド・リソースのバーチャル・ファイアウォールとして機能します。ゼロトラスト・セキュリティ・モデルであるOCIでは、VCN内のネットワーク・トラフィックを制御します。NSGは、単一のVCN内の指定された仮想ネットワーク・インタフェース・カード(VNIC)のセットにのみ適用されるイングレスおよびエグレス・セキュリティ・ルールのセットで構成されます。
- Oracle Data Guard
Oracle Data GuardおよびActive Data Guardは、1つ以上のスタンバイ・データベースを作成、管理および監視する包括的なサービスのセットを提供し、本番環境Oracleデータベースを障害なく使用できるようにする。Oracle Data Guardでは、インメモリー・レプリケーションを使用して、これらのスタンバイ・データベースを本番データベースのコピーとして維持します。計画停止または計画外停止により、本番データベースが使用できなくなった場合、Oracle Data Guardはいずれかのスタンバイ・データベースを本番ロールに切り替えることで、停止に伴う停止時間を最小化できます。Oracle Active Data Guardには、read-mostlyワークロードをスタンバイ・データベースにオフロードする追加機能と、高度なデータ保護機能があります。
- Oracle AI Database@Azure
Oracle AI Database@Azureは、Microsoft Azureデータセンターに導入されたOCIで実行されるOracle Databaseサービス(Oracle Exadata Database Service on Dedicated InfrastructureおよびOracle Autonomous AI Database Serverless)です。このサービスは、OCIの機能と価格パリティを提供します。Azure Marketplaceでサービスを購入します。
Oracle AI Database@Azureは、Oracle Exadata Database Service、Oracle Real Application Clusters (Oracle RAC)およびOracle Data GuardテクノロジをAzureプラットフォームに統合します。ユーザーは、Azureコンソールおよび Azure自動化ツールでサービスを管理します。このサービスは、Azure Virtual Network (VNet)にデプロイされ、Azure IDおよびアクセス管理システムと統合されています。OCIおよびOracle AI Databaseの汎用メトリックおよび監査ログは、Azureでネイティブに利用できます。このサービスでは、ユーザーにAzureサブスクリプションとOCIテナンシが必要です。
Autonomous AI Databaseは、Oracle Exadataインフラストラクチャ上に構築されており、自己管理、自己保護、自己修復が可能で、手動によるデータベース管理と人的エラーを排除できます。Autonomous AI Databaseは、選択した大規模言語モデル(LLM)と導入場所を使用して、組み込みのAI機能を使用して、あらゆるデータでスケーラブルなAI搭載アプリを開発できます。
Oracle Exadata Database ServiceとOracle Autonomous AI Database Serverlessの両方がネイティブのAzure Portalを介して簡単にプロビジョニングされるため、より広範なAzureエコシステムにアクセスできます。
レコメンデーション
実際の要件は、ここで説明するアーキテクチャとは異なる場合があります。
- オブザーバを別の3番目のサイトのホストに配置します。これにより、プライマリ・サイトまたはスタンバイ・サイトが完全に失敗した場合、オブザーバはフェイルオーバーを調整したり、残りのサイトを監視するためにアクティブのままになります。
- 使用可能なサード・サイトがない場合は、オブザーバをプライマリ・サイトに配置します。
- 高可用性を実現するために、異なるサーバー上に複数のオブザーバを構成します。プライマリ・オブザーバにできるオブザーバは1つのみですが、追加のオブザーバはバックアップ・オブザーバとして機能します。
- ファスト・スタート・フェイルオーバーのプロパティ(
FastStartFailoverThreshold、FastStartFailoverLagLimit、FastStartFailoverAutoReinstateなど)など、ファスト・スタート・フェイルオーバー構成プロパティの値を設定するには、Oracleのドキュメントに従います。 - Data Guard構成内のOracle AI Databaseホームと同じメジャー・リリースおよびパッチ・レベル(リリース更新[RU])を使用して、常にData Guard Brokerオブザーバを実行します。この組み合わせは、最も徹底的なテストを受け、運用上のリスクを最小限に抑えます。また、クライアント側(オブザーバ)コードとサーバー側(データベース)コードの両方に影響する修正が、いつでも適用されるようにします。オブザーバとデータベース間で最大1つの主要な長期サポート・リリース(LTS)の違いが許可されており、主にローリング・アップグレードを促進し、停止時間を最小限に抑えることができます。たとえば、26aiのオブザーバと19cのオブザーバ(アップグレード手順中またはその逆)。
考慮事項
- オブザーバをスタンバイ・データベースと同じサイトに配置しないでください。スタンバイ・サイトが停止すると、オブザーバと通信できず、完全な停止につながるため、プライマリも停止します。
- オブザーバは軽量VM上で実行できます。ただし、プライマリ・データベースとスタンバイ・データベースへのネットワーク接続の安定性は、適切な操作を確保し、不要なフェイルオーバーを回避するために重要です。
- データ損失がゼロになるように、Data Guard最大可用性モードを構成します。最小限のデータ損失よりもプライマリ・データベースのパフォーマンスを重ねる場合は、構成の保護モードを最大パフォーマンスに設定してファスト・スタート・フェイルオーバーを有効化することを検討してください。
-
フェイルオーバー時間は、ターゲット・スタンバイ・データベース(プライマリ・データベースから受け取ったREDOデータをすべて適用したかどうかによって決まります。スタンバイ・データベースへのREDOデータの適用がプライマリ・データベースのREDO適用率と一致した状態が保たれるように、リカバリを最適化するステップを実行すると、ファスト・スタート・フェイルオーバーが高速になります。Data Guardのブローカの概要のドキュメントのファスト・スタート・フェイルオーバーのパフォーマンスに関する考慮事項に関する項を参照してください。
- フェイルオーバー時間は、スタンバイ・データベースのREDO適用状態によって異なります。
必要なサービスおよびロールについて
このソリューションには、次のサービスおよびロールが必要です。
- Oracle Exadata Database Service on Exascale Infrastructure
- Oracle Cloud Infrastructure Networking
各サービスに必要なロールは次のとおりです。
| サービス名: ロール | 必須... |
|---|---|
OCIデータベース: manage database-family |
Data Guardスタンバイ・データベースの作成 |
OCIネットワーキング: manage vcn-family |
OCIでのネットワーク・セキュリティ・グループの管理 |
必要なものを得るには、Oracle製品、ソリューションおよびサービスを参照してください。
