スキップしてコンテンツを表示

読み取りリクエストを複数の Amazon RDS リードレプリカに分散する方法を教えてください。

所要時間1分
0

複数の Amazon Relational Database Service (Amazon RDS) リードレプリカに読み取りリクエストを分散させようと考えています。

簡単な説明

Amazon Route 53 加重レコードセットを使用して、リクエストを複数のリードレプリカに分散させることができます。Route 53 ホストゾーン内で、リードレプリカに関連付けられた各 DNS エンドポイントに対して、個別のレコードセットを作成します。次に、同じ重みを付けて、レコードセットのエンドポイントにリクエストを転送します。

解決策

リードレプリカの DNS エンドポイント URL を検索する

  1. Amazon Aurora と RDS コンソールを開きます。
  2. ナビゲーションペインで [データベース] をクリックし、リードレプリカをそれぞれ選択します。
  3. [エンドポイント] の横にある DNS エンドポイント URL をメモ (またはコピー) します。

Route 53 ホストゾーンを作成する

注: ホストゾーンが既にある場合は、この手順をスキップしてください。

  1. Route 53 コンソールを開き、ナビゲーションペインから [ホストゾーン] を選択します。
  2. [ホストゾーンの作成] をクリックします。
  3. [ドメイン名] と [コメント] に、名前とコメントを入力します。
  4. [タイプ] には、リードレプリカがある VPC の [プライベートホストゾーン] を選択します。プライベートホストゾーンを選択すると、外部リソースからのリードレプリカへのアクセスがブロックされます。または、[タイプ] を [パブリック] のままにします。
    注: [パブリック] を指定する場合は、ホストゾーンで指定したドメインの所有者である必要があります。
  5. [作成] をクリックします。

レコードセットを作成する

ホストゾーンが作成されたら、それを選択し、[レコードセットの作成] をクリックします。次の属性を使用します。

  • [名前] には、名前を入力します。これは、リードレプリカにアクセスするためのエンドポイント URL として使用します。
  • [タイプ] を [CNAME] に設定します。
  • [TTL 値] には、ニーズに合わせて適切な値を設定します。これにより、各リードレプリカがリクエストを受信する頻度が決まります。
  • [値] フィールドに、最初のリードレプリカの DNS エンドポイントを貼り付けます。
  • [ルーティングポリシー] で、[加重] を選択します。
  • [重み] フィールドに値を入力します。各レプリカのレコードセットには必ず同じ値を使用してください。
  • [セット ID] に、名前を入力します。
  • ヘルスチェックを設定するのがベストプラクティスです。詳細については、「Creating Amazon Route 53 health checks and configuring DNS failover」(Amazon Route 53 ヘルスチェックの作成と DNS フェイルオーバーの設定) を参照してください。

レコードセットを設定したら、[作成] をクリックします。

これらの手順を繰り返して、追加のリードレプリカごとにレコードセットを作成します。レコードセットがすべて同じ名前を使用し、保持期間 (TTL) と重みの値も同じであることを確認してください。これにより、リクエストを均等に分散させることができます。

アプリケーションのエンドポイントを変更せずに、リードレプリカをさらに追加してより多くの接続数やリソース使用量に対応できます。Route 53 ヘルスチェックを組み込み、Route 53 が使用できないリードレプリカからトラフィックを確実に引き離すように誘導できます。

関連情報

Choosing a routing policy (ルーティングポリシーの選択)

Working with private hosted zones (プライベートホストゾーンの使用)

1コメント

This article was reviewed and updated on 2022-09-26.

エキスパート

応答済み 3ヶ月前

関連するコンテンツ