web-dev-qa-db-ja.com

AWSは加重負荷分散をサポートしていますか?

AWSは加重負荷分散をネイティブにサポートしていますか?

私が見たところ、ELBはラウンドロビン負荷分散のみをサポートしています(構成可能な重みはありません)。しかし、信頼できるドキュメントは見つかりませんでした。


私が考えることができる最も簡単なことは、Nginxのようなロードバランサーをその前に置くことです。たとえば、次のようになります。

upstream backend  {
  server backend1.example.com weight=1;
  server backend2.example.com weight=2;
  server backend3.example.com weight=4;
}

ここでは、7つのリクエストのうち、1つはバックエンド1に、2つはバックエンド2に、4つはバックエンド4に送信されます。

それは機能しますが、それはあなたがそのためだけにNginxでサーバーをセットアップしなければならないことも意味します。 AWSが加重負荷分散を直接サポートする場合、セットアップははるかに簡単になります。

7
Philipp Claßen

Elastic Load Balancingの仕組み ドキュメントページには次のように記載されています。

Classic Load Balancerを使用すると、要求を受信するロードバランサーノードは、ラウンドロビンルーティングを使用して登録済みインスタンスを選択しますTCPリスナーおよびHTTPおよびHTTPSリスナーの最も未処理のリクエストルーティングアルゴリズムのアルゴリズム-)。

Application Load Balancerを使用すると、要求を受信するロードバランサーノードは、リスナールールを優先順に評価して、適用するルールを決定してから、 ラウンドロビンルーティングアルゴリズムを使用したルールアクションのターゲットグループからのターゲット。ターゲットが複数のターゲットグループに登録されている場合でも、ルーティングはターゲットグループごとに個別に実行されます。

Elastic Load Balancingサービスはnotサポートweightedラウンドロビン(ここで重みを指定します)。

加重ルーティングポリシーでAmazon Route53を使用できます。 ルーティングポリシーの選択 ドキュメントページから:

同じ機能を実行する複数のリソース(たとえば、同じWebサイトにサービスを提供するWebサーバー)があり、Amazon Routeが必要な場合は、加重ルーティングポリシーを使用します53指定した比率でトラフィックをこれらのリソースにルーティングします(たとえば、4分の1を1つのサーバーに、4分の3を他のサーバーに)。

7
John Rotenstein

Route53を使用できます weight サーバーまたは複数のELBに直接ルーティングします

2
Shimon Tolts

AWS Route 53をDNSサービスとして使用している場合は、DNSレコードのウェイトエイジを設定できます。

DNSの重み-年齢は2.2を参照

Amazon Route53はWeightedRoundRobinをサポートしています。加重ラウンドロビンを使用すると、さまざまな応答が提供される頻度を指定するために、リソースレコードセットに加重を割り当てることができます。この機能を使用してA/Bテストを実行し、ソフトウェアを変更したサーバーにトラフィックのごく一部を送信することをお勧めします。たとえば、1つのDNS名に関連付けられた2つのレコードセットがあるとします。1つは重み3、もう1つは重み1です。この場合、Route 53は75%の確率で重み3のレコードセットを返し、25%の確率でレコードセットを返します。 Route 53は、重み1のレコードセットを返します。重みは、0〜255の任意の数値にすることができます。

2
notionquest

AWSの新機能に基づく更新

元々、LoadBalancerで加重ルーティングを行うことはできませんでした。しかし、それは最近変わった

アプリケーションロードバランサーを使用している場合は、加重ポリシーを使用するListenerRuleを設定できます。

手順:

  1. ロードバランサーを作成する
  2. ロードバランサーにリスナーを追加する
  3. リスナーにリスナールールを追加する
  4. 必要なIFステートメントに基づいてトラフィックを転送するポリシーを追加します
  5. 複数のターゲットグループを追加し、これらを追加して、それぞれに加重量を割り当てるオプションがあります。

これを強調するAWSブログ投稿をここで見ることができます: https://aws.Amazon.com/blogs/aws/new-application-load-balancer-simplizes-deployment-with-weighted-target-groups/

1
DanielC