このトピックでは、ApsaraDB RDS for PostgreSQL の RDS Cluster Edition のアーキテクチャ、メリット、適用シナリオについて説明します。
RDS Cluster Edition の概要
ApsaraDB RDS for PostgreSQL の RDS Cluster Edition は、1 つのプライマリノードと複数のセカンダリノードで構成される高可用性 (HA) アーキテクチャを採用し、コンピューティングとストレージの分離をサポートしています。RDS Cluster Edition は、次の機能を提供します:自動フェイルオーバー、プライマリ/セカンダリ スイッチオーバー、読み取り可能なセカンダリノード、ノードの追加と削除、マルチゾーンディザスタリカバリ、ノードレベルのモニタリング、クラスターのトポロジ管理。RDS クラスターは、セルフマネージドデータベースと比べて、コスト効率、柔軟性、信頼性に優れています。RDS クラスターとは、RDS Cluster Edition を実行する RDS インスタンスを指します。
次の表は、ApsaraDB RDS for PostgreSQL の RDS Basic Edition、RDS High-availability Edition、RDS Cluster Edition を比較したものです。
項目 | RDS Basic Edition | RDS High-availability Edition | RDS Cluster Edition |
ノードまたはインスタンス数 | 1 | 2 (デフォルト) 説明 RDS High-availability Edition では、デフォルトで 1 つのプライマリインスタンスと 1 つのセカンダリインスタンスが提供されます。さらにインスタンスが必要な場合は、読み取り専用インスタンスを作成できます。 | 2 ~ 9 説明 RDS Cluster Edition では、デフォルトで 1 つのプライマリノードと 2 つのセカンダリノードが提供されます。また、1 つのプライマリノードと 1 つのセカンダリノードで構成される RDS クラスターを作成することもできます。RDS クラスターの作成後に、クラスターにノードを追加できます。RDS クラスターには、1 つのプライマリノードと 8 つのセカンダリノードを含む最大 9 つのノードを含めることができます。 |
読み取り可能なセカンダリインスタンスまたはノード | 該当なし | サポートされていません | サポートされています |
エンドポイントタイプ | 読み取り/書き込みエンドポイント | 読み取り/書き込みエンドポイント |
|
使用不可となるインスタンスまたはノードの最大数 | 0 | 1 | n - 1。n は RDS クラスター内のノード数を示します。 |
ゾーン数 | 1 | 2 以下 | RDS クラスター内のノード数以下 |
アーキテクチャ
ApsaraDB RDS for PostgreSQL の RDS Cluster Edition は、1 つのプライマリノードと複数のセカンダリノードで構成される HA アーキテクチャを採用しています。アーキテクチャは次の図のとおりです。
メリット
ApsaraDB RDS for PostgreSQL では、RDS Cluster Edition は RDS High-availability Edition と比べて次のメリットがあります:
コスト効率の向上
RDS クラスター内のセカンダリノードは読み取り可能です。読み取り専用インスタンスを追加で作成する必要はありません。これにより、RDS クラスターの読み取り性能を線形に向上させ、リソースのオーバーヘッドとコストを削減できます。RDS High-availability Edition を使用していて RDS インスタンスの読み取り性能を向上させたい場合は、読み取り専用インスタンスを作成する必要があります。RDS High-availability Edition と比べて、RDS Cluster Edition はコストを 40% 削減します。
RDS クラスターの読み取り専用ルーティングエンドポイントを使用して、セカンダリノードにアクセスできます。 この読み取り専用ルーティングエンドポイントは無料で作成でき、複数のセカンダリノードを追加して読み取りウェイトを指定することで、負荷を分散できます。 詳細については、「ApsaraDB RDS for PostgreSQL インスタンスのエンドポイントとポート番号の表示と変更」をご参照ください。
柔軟性の向上
柔軟なノードデプロイ
RDS ベーシック版や RDS 高可用性版とは異なり、ノードトポロジー管理をサポートする RDS クラスター版では、RDS クラスターの作成後にビジネス要件に基づいて、よりコスト効率の高い方法でノードを追加または削除できます。詳細については、「RDS クラスターにノードを追加する」および「RDS クラスターからノードを削除する」をご参照ください。
ノードレベルのモニタリング
RDS Cluster Edition はノードレベルのモニタリングをサポートします。RDS クラスター内の各ノードのステータスを確認できます。
信頼性の向上
クロスゾーンディザスタリカバリ
RDS High-availability Edition では、HA を確保するために 1 つのプライマリインスタンスと 1 つのセカンダリインスタンスが提供されます。RDS Cluster Edition では、RDS クラスター内のすべてのセカンダリノードをディザスタリカバリに使用できます。クロスゾーンディザスタリカバリを実現するために、異なるゾーンにセカンダリノードをデプロイすることを推奨します。
セカンダリノードの信頼性向上
Alibaba Cloud の技術チームは、クラウドネイティブ技術を使用して ApsaraDB RDS を詳細に最適化しています。これにより、RDS クラスター内のセカンダリノードの信頼性が向上します。
RDS 高可用性 (HA) システムを再構築しました。これにより、セカンダリノードの障害検知に要する時間が分単位から秒単位に短縮されます。
EBS が提供する 1 桁秒バックアップ機能を使用しています。これにより、データの復元に要する時間が数十分から 1 分に短縮され、99% のケースでセカンダリノードが 10 分以内に障害から復旧できます。
制限事項
機能に関する制限事項
クロスゾーン移行はサポートされていません。
RDS クラスターの作成、RDS クラスターのクローン作成、RDS クラスターのメジャーエンジンバージョンのアップグレード、または RDS クラスターの再作成を行う場合、RDS クラスターに設定できるセカンダリノードは最大 2 つです。
メジャーエンジンバージョンをアップグレードする際、システムは読み取り専用ルーティングエンドポイントを自動的に変更しません。カットオーバー構成方式を使用してメジャーエンジンバージョンをアップグレードする場合は、まず対象の読み取り専用ルーティングエンドポイントを削除する必要があります。アップグレードの完了後、読み取り専用ルーティングエンドポイントを作成できます。
RDS エディションを、RDS Basic Edition または RDS High-availability Edition から RDS Cluster Edition に変更することはできません。
バージョンに関する制限事項
RDS Cluster Edition を実行する RDS インスタンスを作成するには、PostgreSQL 14 以降を選択する必要があります。
関連ドキュメント
RDS Cluster Edition を実行する RDS インスタンスの作成
詳細については、「インスタンスの作成」をご参照ください。