すべてのプロダクト
Search
ドキュメントセンター

ApsaraDB RDS:読み取り専用ルーティングエンドポイントを有効にして読み書き分離を実装する

最終更新日:Nov 07, 2024

ApsaraDB RDS for SQL Serverでは、データベースシステムで読み取り専用のApsaraDB RDS for SQL Serverインスタンスを管理し、データベースシステムに読み取り専用のルーティングエンドポイントを提供します。 プライマリRDSインスタンスのエンドポイントと読み取り専用ルーティングエンドポイントをアプリケーションに追加して、読み書き分離を実装できます。 読み書き分割は、データベースシステムのパフォーマンスとスケーラビリティを向上させ、プライマリRDSインスタンスからの読み取り要求をオフロードするのに役立ちます。 これは、アプリケーションにおける効率的な読み書き分割を実現するのに役立ちます。

概要

読み取り専用RDSインスタンスを作成した後、読み取り専用ルーティングエンドポイントを有効にして読み書き分離を実装し、プライマリRDSインスタンスのエンドポイントと読み取り専用ルーティングエンドポイントをアプリケーションに追加できます。 これにより、書き込み要求はプライマリRDSインスタンスに転送され、読み取り要求は読み取り専用ルーティングエンドポイントに転送されます。 次に、読み取り専用ルーティングエンドポイントは、読み取り専用RDSインスタンスの読み取り重みに基づいて、読み取り要求を読み取り専用RDSインスタンスに配信します。

image

メリット

  • 統一された読み取り専用ルーティングエンドポイントでメンテナンスを容易にします

    読み取り専用ルーティングエンドポイントが提供され、読み取り要求を読み取り専用RDSインスタンスに配信するために使用されます。これにより、メンテナンスコストが削減されます。 読み取り専用RDSインスタンスを作成して、アプリケーション設定を変更することなく、データベースシステムの読み取り機能を向上させることができます。

  • さまざまな要件を満たす設定可能な読み取り重み

    読み取り専用RDSインスタンスの読み取り重みを指定して、さまざまなシナリオのビジネス要件を満たすことができます。

  • 高可用性を確保するためのインスタンスレベルのヘルスチェック

    読み書き分離は、読み取り専用RDSインスタンスのヘルスステータスをプロアクティブにチェックします。 読み取り専用RDSインスタンスに障害が発生した場合、またはデータレプリケーションのレイテンシが指定されたしきい値を超えた場合、システムは読み取り専用RDSインスタンスへの読み取りリクエストの転送を停止し、これらの読み取りリクエストを他の正常な読み取り専用RDSインスタンスにリダイレクトします。 インスタンスレベルのヘルスチェックにより、単一の読み取り専用RDSインスタンスで障害が発生した場合にサービスの可用性が確保されます。 障害のある読み取り専用RDSインスタンスが回復した後、システムは読み取り専用RDSインスタンスへの読み取りリクエストの転送を再開します。

    説明

    単一障害点 (SPOF) の影響を軽減するために、少なくとも2つの読み取り専用RDSインスタンスを作成することを推奨します。

読み取り専用ルーティングエンドポイントと内部およびパブリックエンドポイントの概要

読み取り専用ルーティングエンドポイントをアプリケーションに追加して、読み取り /書き込み分割を実装します。 アプリケーションからの読み取り要求は、読み取り専用ルーティングエンドポイントに転送され、関連するセカンダリRDSインスタンスまたは読み取り専用RDSインスタンスに、これらのインスタンスの読み取り重みに基づいて配信されます。

プライマリRDSインスタンスの内部エンドポイントまたはパブリックエンドポイントのみがアプリケーションに追加された場合、すべてのリクエストはプライマリRDSインスタンスに転送されます。

前提条件

読み取り専用RDSインスタンスが作成されました。 詳細については、「読み取り専用ApsaraDB RDS For SQL Serverインスタンスの作成」をご参照ください。

使用上の注意

  • 読み取り専用ルーティングエンドポイントは固定されており、読み取り専用ルーティングエンドポイントを複数回有効または無効にしても変更されません。 読み取り専用ルーティングエンドポイントを手動で変更することはできません。 アプリケーションの設定を更新する必要はありません。 これにより、保守コストが削減されます。

  • 読み取り専用ルーティングエンドポイントは無料です。 ただし、使用する読み取り専用RDSインスタンスの料金は引き続き必要です。 詳細については、「ApsaraDB RDS for SQL Server の読み取り専用インスタンスの概要」をご参照ください。

  • 読み取り専用ルーティングエンドポイントは、クラシックネットワークではサポートされていません。

読み書きの分離を有効にする

読み取り専用ルーティングエンドポイントを有効にし、読み取り専用RDSインスタンスの読み取り重みを設定すると、システムは設定した読み取り重みに基づいて読み取りリクエストを処理します。

  1. ApsaraDB RDSコンソールにログインし、[インスタンス] ページに移動します。 上部のナビゲーションバーで、RDS インスタンスが存在するリージョンを選択します。 RDSインスタンスを見つけ、インスタンスIDをクリックします。

  2. 左側のナビゲーションウィンドウで、クラスター管理 をクリックします。 表示されるページで、有効にする.

  3. 表示されるダイアログボックスで、読み取り専用ルーティングエンドポイントのタイプと、プライマリRDSインスタンス、セカンダリRDSインスタンス、読み取り専用RDSインスタンスなどの各RDSインスタンスの読み取り重みを設定します。

    RDS Cluster Edition for ApsaraDB RDS for SQL Serverでは、プライマリRDSインスタンスとセカンダリRDSインスタンスがデータベースシステムにプロビジョニングされます。 読み取り専用RDSインスタンスを手動で作成できます。 詳細は、「RDS Cluster Edition」をご参照ください。

    image

    パラメーター

    説明

    ネットワークタイプ

    • 内部 (VPC): このタイプの読み書き分離エンドポイントは、RDSインスタンスを、Elastic Compute Service (ECS) インスタンスなどの同じ仮想プライベートクラウド (VPC) にあるインスタンスに内部ネットワークを介して接続する場合にのみ使用できます。

    • インターネット: このタイプの読み書き分離エンドポイントは、別のVPCまたはオンプレミスデバイスにあるアプリケーションをインターネット経由でRDSインスタンスに接続するために使用されます。 このタイプの読み書き分離エンドポイントを使用する場合は、事前にパブリックエンドポイントを申請する必要があります。 詳細については、「パブリックエンドポイントの申請またはリリース」をご参照ください。

    説明

    インターネット経由での接続は変動しやすいため、内部読み書き分離エンドポイントを使用してRDSインスタンスに接続することを推奨します。 詳細については、「内部およびパブリックエンドポイント」をご参照ください。

    重量分布を読む

    プライマリRDSインスタンス、セカンダリRDSインスタンス、読み取り専用RDSインスタンスなど、各RDSインスタンスの読み取り重み。 読み取り専用RDSインスタンスの読み取り重みは、読み取り専用RDSインスタンスが作成された場合にのみ表示されます。 読み取り重みが大きいほど、読み取りリクエストを多く処理することを示します。 たとえば、プライマリRDSインスタンスに読み取り重みが100、200、200の3つの読み取り専用RDSインスタンスがある場合、読み取り専用RDSインスタンスは1:2:2の比率で読み取りリクエストを処理します。

    • 自動設定: システムは、RDSインスタンスの仕様に基づいて、データベースシステム内の各RDSインスタンスに読み取り重みを自動的に割り当てます。

      読み取り専用RDSインスタンスを作成すると、作成された読み取り専用RDSインスタンスに読み取り重みが自動的に割り当てられます。 作成された読み取り専用RDSインスタンスの読み取り重みを手動で指定する必要はありません。 詳細については、「システムによる重み割り当てのルール」をご参照ください。

    • カスタム設定: 読み取り専用RDSインスタンスごとに読み取り重みを手動で指定する必要があります。 有効な値: 0 ~ 10000

      読み取り専用RDSインスタンスを作成すると、読み取り専用RDSインスタンスの読み取り重みが0に設定されます。 作成した読み取り専用RDSインスタンスの読み取り重みを手動で変更する必要があります。

    重要

    読み取り専用RDSインスタンスがリリースされると、読み取り専用RDSインスタンスの読み取り重みが自動的に削除されます。

  4. [OK] をクリックします。

クラスター情報の表示

[クラスター管理] ページで、RDSクラスターの基本情報と設定を確認できます。 RDSクラスターとは、RDS cluster Editionを実行するApsaraDB RDS for SQL Serverインスタンスのことです。

基本情報

[基本情報] セクションでは、読み取り専用ルーティングエンドポイントポート番号ネットワークタイプ読み取り重み分布、および関連インスタンス数を表示できます。

image

設定

[インスタンス] セクションでは、RDSクラスター内のすべての関連インスタンス、およびインスタンスのステータスロール読み取り重みを表示できます。 インスタンスリストで異なるロールのインスタンスを表示および管理することもできます。

image

関連する API 操作

  • ビジネス要件に基づいて、読み取り専用RDSインスタンスの読み取り重みを変更できます。 読み取り専用ルーティングエンドポイントは、新しい読み取り重みに基づいて、読み取りリクエストをセカンダリRDSインスタンスと読み取り専用RDSインスタンスに配信します。 詳細については、「読み取り重みの変更」をご参照ください。

  • RDSインスタンスで読み書き分離が不要になった場合は、読み取り専用ルーティングエンドポイントを無効にすることで読み書き分離を無効にできます。 詳細については、「読み取り専用ルーティングエンドポイントを無効にして読み書き分離を無効にする」をご参照ください。