このトピックでは、複数のアベイラビリティーゾーンにデプロイすることで、PolarDB for MySQL クラスタの高可用性(HA)を構成する方法について説明します。マルチゾーンデプロイメントは優れたディザスタリカバリを提供し、データセンターレベルの障害からデータベースを保護します。
コンセプト
アベイラビリティーゾーン(AZ)は、単一の地理的リージョン内の独立したデータセンターです。クラスタを複数のゾーンにデプロイメントすることで、データとインフラストラクチャの物理的に分離されたレプリカを作成します。
プライマリゾーンで大規模な障害(停電やネットワークの停止など)が発生した場合、クラスタはスタンバイゾーンまたはセカンダリゾーンに自動または手動でフェールオーバーでき、最小限のダウンタイムで業務継続性を確保します。
主な機能
アーキテクチャとデータ冗長性
マルチゾーンデプロイメントでは、プライマリゾーンとセカンダリゾーンの両方にデータの完全で独立したコピー(ゾーンごとに 3 レプリカ)が保存されるため、合計 6 つのデータレプリカにより高い信頼性が実現します。
プライマリゾーンは、アプリケーショントラフィックを提供するアクティブな計算ノードをホストします。セカンダリゾーンのリソースはスタンバイ状態にあり、フェールオーバー時に引き継ぐ準備ができています。
フェールオーバー機能
自動フェールオーバー: クロスゾーン自動スイッチオーバー 機能を有効にすると、元のプライマリゾーンで障害が検出された場合、システムは自動的にセカンダリゾーンを新しいプライマリに昇格させます。
手動フェールオーバー:いつでも 手動でフェールオーバー をトリガーすることもできます。これは、災害復旧訓練を実行する場合や、データベースをセカンダリゾーンで実行されているアプリケーション(ECS インスタンスなど)の近くに戦略的に移動する場合に役立ちます。
マルチゾーンモードを使用するには、以下を確認してください。
クラスタのリージョンには、使用可能な PolarDB リソースを持つゾーンが少なくとも 2 つ必要です。
セカンダリゾーンには十分な計算リソースが必要です。
マルチゾーンデプロイメント機能は、中国(青島)、中国(フフホト)、中国(成都)、韓国(ソウル)、フィリピン(マニラ)、タイ(バンコク)の各リージョンでは使用できません。
仕組み
PolarDB は、耐障害性とコストに対するさまざまなニーズに合わせて、いくつかの高可用性モードを提供しています。次の図は、さまざまなデプロイメントソリューションのアーキテクチャを示しています。
以下の表を使用して、主な違いを理解し、ワークロードに最適なオプションを選択してください。
モード | 最適な用途 | 仕組み(図に基づく) | 主な考慮事項 |
シングルゾーン | 開発、テスト、および重要度の低いアプリケーション。 | すべてのデータ(3 レプリカ)と計算ノードは 1 つのゾーンにあります。 (図には示されていません) | コストは最も低いですが、ゾーン全体の障害発生時の復旧時間が長くなります。 |
ストレージスタンバイ付きデュアルゾーン | 高可用性を必要とする一般的な本番ワークロード。 | データの完全なコピー(追加の 3 レプリカ)はスタンバイゾーンに保持されます。計算ノード(プライマリ、読み取り専用)はプライマリゾーンにのみ存在します。 | データセンターの障害に対する耐障害性を高めるために、ストレージコストが 2 倍になります。 |
ストレージと計算スタンバイ付きデュアルゾーン | フェールオーバー後のサービス低下を許容できないミッションクリティカルなアプリケーション。 | 完全なデータコピー と 一致する計算ノードのセット(セカンダリ、読み取り専用)がスタンバイゾーンに保持されます。 | コストが高くなります(ストレージと計算)が、フェールオーバー後の完全なパフォーマンスを保証します。 |
強力な整合性を備えた 3 ゾーン | データ損失ゼロ(RPO=0)を必要とする金融サービスおよびコアエンタープライズシステム。 | データと計算レプリカに 2 つのゾーンを使用し、特別なロガーノードに 3 つ目のゾーンを使用します。このアーキテクチャは、X-Paxos プロトコルを使用して、データ損失ゼロのフェールオーバーを保証します。 | 最高レベルのデータ保護と可用性。最も耐障害性の高いオプションです。 |
高可用性モード
ソリューションの概要
シングルゾーン
データベースサービスは、プライマリゾーンのクラスタによってのみ提供されます。このソリューションはコストが低くなります。
ただし、プライマリゾーンに障害が発生した場合、サービスの復旧に時間がかかります。クロスゾーンの高可用性が必要な場合は、ホットスタンバイクラスタ機能を有効にすることをお勧めします。
切り替えルール
デュアルゾーン(ホットスタンバイストレージクラスタ有効)またはデュアルゾーン(ホットスタンバイストレージクラスタと計算クラスタ有効)に切り替えることができます。
シナリオ
小規模な Web サイトとアプリケーション
日常的な O&M タスクを Alibaba Cloud にオフロードし、アプリケーションの開発に集中できます。
個人的な学習
PolarDB を初めて使用する場合は、Standard Edition をテストと学習に使用できます。
開発とテスト
PolarDB は非常に高速なプロビジョニングを備えており、ビジネス要件に合わせてデータベースを柔軟にスケーリングできます。これにより、R&D とテストの効率が大幅に向上します。
ストレージスタンバイ付きデュアルゾーン
データは複数のゾーンに分散されます。プライマリゾーンとセカンダリゾーンにはそれぞれデータの完全なコピーが保存され、高いサービスレベル契約(SLA)が保証されます。
計算ノードはプライマリゾーンにデプロイする必要があります。セカンダリゾーンのホットスタンバイストレージクラスタは、主にプライマリゾーンに障害が発生した場合のフェールオーバー用にデプロイされます。
切り替えルール
デュアルゾーン(ホットスタンバイストレージクラスタと計算クラスタ有効)にのみ切り替えることができます。
料金
データは複数のゾーンに分散されます。プライマリゾーンとセカンダリゾーンにはそれぞれ 3 つのデータレプリカが含まれており、合計 6 つのデータレプリカになります。そのストレージコストは、シングルゾーン(ホットスタンバイクラスタ無効)のコストよりも高くなります。
シナリオ
インターネット、IoT、オンライン小売、物流、ゲームなど、さまざまな業界の 80% 以上のユースケースに適しています。
ストレージと計算スタンバイ付きデュアルゾーン
データは複数のゾーンに分散されます。プライマリゾーンとセカンダリゾーンにはそれぞれデータの完全なコピーが保存され、高いサービスレベル契約(SLA)が保証されます。
プライマリゾーンに障害が発生した場合、ビジネスはセカンダリゾーンのホットスタンバイストレージクラスタに切り替えることができます。セカンダリゾーンの計算ノードの数は、プライマリゾーンと同じです。したがって、セカンダリゾーンは、フェールオーバー後に十分な読み取り専用ノードを提供して、サービス低下を防ぐことができます。
切り替えルール
デュアルゾーン(ホットスタンバイストレージクラスタ有効)にのみ切り替えることができます。
料金
計算ノード
クラスタを購入すると、計算ノードはホットスタンバイストレージクラスタが存在するセカンダリゾーンに追加されます。デフォルトでは、セカンダリゾーンの計算ノードの数と仕様は、プライマリゾーンと同じです。セカンダリゾーンの計算ノードは別途課金されます。
ストレージ
データは複数のゾーンに分散されます。プライマリゾーンとセカンダリゾーンにはそれぞれ 3 つのデータレプリカが含まれており、合計 6 つのデータレプリカになります。そのストレージコストは、シングルゾーン(ホットスタンバイクラスタ無効)のコストよりも高くなります。
シナリオ
ピーク時に多くの読み取りリクエストを処理したり、インテリジェントなデータ分析を実行したりする必要がある本番データベースを持つ大規模および中規模の企業に適しています。これらの企業には、金融機関、オンライン小売業者、自動車企業、教育企業、および企業資源計画(ERP)サービスプロバイダーが含まれます。
3 ゾーン
クロスゾーンの強力な整合性。半同期および非同期方式と比較して、1 つのプライマリ、1 つのセカンダリ、および 1 つのログの 3 ノードアーキテクチャが採用されています。物理レプリケーションは X-Paxos プロトコルと組み合わされて、より高い災害復旧機能を提供します。
プライマリゾーンに障害が発生した場合、プライマリゾーンとセカンダリゾーンの間でフェールオーバーが実行され、複数レプリカの強力な整合性レプリケーションがゾーン全体で実装されて、目標復旧時間(RTO)が 60 秒未満になるようにします。これにより、強力なデータ整合性も保証され、高い財務信頼性が提供されます。
切り替えルール
他の高可用性モードに切り替えることはできません。
料金
計算ノード
セカンダリノードとロガーノードは無料です。プライマリノードと読み取り専用ノードは、一般的な計算ノードとして課金されます。
ストレージ
データは複数のゾーンに分散されます。プライマリゾーンとセカンダリゾーンにはそれぞれ 3 つのデータレプリカが含まれており、合計 6 つのデータレプリカになります。そのストレージコストは、シングルゾーン(ホットスタンバイクラスタ無効)のコストよりも高くなります。
シナリオ
ピーク時に多くの読み取りリクエストを処理したり、インテリジェントなデータ分析を実行したりする必要がある本番データベースを持つ大規模および中規模の企業に適しています。これらの企業には、金融機関、オンライン小売業者、自動車企業、教育企業、および企業資源計画(ERP)サービスプロバイダーが含まれます。
計算ノードとストレージの課金ルールの詳細については、「課金」をご参照ください。
高可用性モードを構成する方法
新しいクラスタを作成するとき、または既存のクラスタを変更するときに、高可用性モードを有効にできます。
クラスタを購入するときは、[ネットワークとゾーン] セクションで高可用性モードを選択できます。
説明高可用性モードのオプションは、クラスタがデプロイされているリージョンで使用可能なゾーンとリソースによって制限されます。詳細については、購入ページを参照してください。

ページに移動します。クラスタをクリックします。[基本情報] ページの [データベース分散ストレージ] セクションで、[HA モードに切り替える] をクリックします。

ページに移動します。クラスタをクリックします。 を選択します。[クラスタの可用性] タブで、[HA モードに切り替える] をクリックします。

既存のクラスタで HA モードを切り替えるには、リソースの可用性とその他の制限が適用されます。オプションが使用できない場合は、目的の HA モードで新しいクラスタを作成し、Data Transmission Service(DTS)を使用してデータを 移行 する必要があります。
