Joe が読み取り要求を
複数の RDS リードレプリカに
分散させる方法を説明する

requests-rds-read-replicas-Joe

読み取り要求を複数の Amazon Relational Database Service (Amazon RDS) リードレプリカに分散させるにはどうすればいいですか。

Amazon Route 53 加重レコードセットを使用すると、要求を複数のリードレプリカに分散させることができます。Route 53 ホステッドゾーン内で、リードレプリカに関連付けられた各 DNS エンドポイントに対して、個々のレコードセットを作成して、それぞれに同じ重みを割り当てます。そして、要求をレコードセットのエンドポイントに向かわせます。

リードレプリカの DNS エンドポイントの URL を見つける

  1. Amazon RDS コンソールを開きます。
  2. ナビゲーションペインで [Instances (インスタンス)] を選択して、各リードレプリカを選択します。
  3. [Endpoint (エンドポイント)] の横にある DNS エンドポイントの URL をメモ (コピー) します。

Route 53 ホステッドゾーンの作成 注: ホステッドゾーンが既に存在する場合、このステップはスキップすることができます。

  1. Route 53 コンソールの [Hosted Zones (ホステッドゾーン)] を開きます。
  2. [Create Hosted Zone] をクリックします。[Name (名前)] と [Comment (コメント)] には、名前とコメントを入力します。外部リソースからのリードレプリカへのアクセスをブロックするには、[Type (タイプ)] で、リードレプリカが存在している VPC の [Private Hosted Zone (プライベートホステッドゾーン)] を選択します。それ以外の場合、[Type (タイプ)] は [Public (パブリック)] のままにしておきます。注記: [Public (パブリック)] と指定する場合、ホステッドゾーンで指定したドメインの所有権を持っている必要があります。
  3. [Create (作成)] を選択します。

レコードセットの作成

ホステッドゾーンを作成した後、それを選択して、[Create Record Set (レコードセットの作成)] を選択し、以下の属性を使用します。

  • [Name (名前)] に名前を入力します。これはリードレプリカにアクセスするためのエンドポイントの URL として使用します。
  • [Type (タイプ)] に [CNAME] を設定します。
  • [TTL value (TTL 値)] には、ニーズに合わせて任意の値を設定することができます。これにより、各リードレプリカがどのくらいの頻度で要求を受け付けるかが決まります。
  • [Value (値)] フィールドに、最初のリードレプリカの DNS エンドポイントを埋め込みます。
  • [Routing Policy (ルーティングポリシー)] では、[Weighted (重み付け)] を選択します。
  • 各レプリカのレコードセットで同じ値を使用する場合、[Weight (重み)] フィールドに値を入力します。
  • [Set ID (ID の設定)] に、名前を入力します。
  • [Health Check (ヘルスチェック)] を構成するのはオプションです (が、それがベストプラクティスです)。詳細については、「Amazon Route 53 のヘルスチェックと DNS フェールオーバー」を参照してください。

レコードセットを構成したら、[Create (作成)] を選択します。

以上のステップを繰り返して、各追加リードレプリカのレコードセットを作成します。すべてが同じ名前、同じ生存時間 (TTL) の値、および同じ重みの値を使用していることを確認します。これにより、要求を均等に分散させることができます。

アプリケーションのエンドポイントを変更せずに、より多くの接続、あるいは高いリソース使用率に対応するために、より多くのリードレプリカを追加することができます。Route 53 ヘルスチェックを導入すれば、Route 53 に確実にトラフィックを利用不可能なリードレプリカ以外に向かわせることができます。


このページは役に立ちましたか? はい | いいえ

AWS サポートナレッジセンターに戻る

サポートが必要ですか?AWS サポートセンターをご覧ください。

公開日: 2016 年 12 月 23 日

更新: 2018 年 4 月 10 日