Amazon ELBは負荷を分散するためにどのアルゴリズムを使用しますか?


13

これは公式のELBドキュメントで見つけました

デフォルトでは、ロードバランサーは各リクエストを最小の負荷でアプリケーションインスタンスに個別にルーティングします。

しかし、Newvemの記事では、ELBはラウンドロビンアルゴリズムのみをサポートしていると述べています

Amazon ELBでサポートされるアルゴリズム -現在、Amazon ELBはラウンドロビン(RR)およびセッションスティッキーアルゴリズムのみをサポートしています。

それでどちらですか?

[1] http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/US_StickySessions.html

[2] http://www.newvem.com/dissecting-amazon-elastic-load-balancer-elb-18-facts-you-should-know/?lead_source=popup_ebook&oid=00DD0000000lsYR&email=muneeb%40olacabs.com


1
私は、そうでないと信じる理由が与えられない限り、ランダムなブログで1年以上前の非公開の記事で公式ドキュメントを読みます。ただし、「最小負荷のインスタンス」は特定のゾーンにのみ適用されることに注意してください-ゾーンAに1つのインスタンスがあり、ゾーンBに2つのインスタンスがある場合、AWSコンソールはリクエストのバランスが崩れることを警告します。
ceejayoz

「ただし、「最小負荷のインスタンス」は特定のゾーンにのみ適用されることに注意してください」<公式ドキュメントでどこかに言及されていますか?
kn330

どこかに言及されていると思いますが、インスタンスをELBに追加するときにAWSコンソールで間違いなく言及されます。スクリーンショットは次のとおり
image

アブドゥル、正しい答えを受け入れてください、それはcrizCraigのものです。
tedder42

回答:


14

HTTP(S)に基づくリクエストカウント、その他のラウンドロビンです。

http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/TerminologyandKeyConcepts.html#request-routing

クライアントは、ロードバランサーにリクエストを送信する前に、最初にドメインネームシステム(DNS)サーバーでロードバランサーのドメイン名を解決します。DNSサーバーはDNSラウンドロビンを使用して、特定のアベイラビリティーゾーンのどのロードバランサーノードがリクエストを受信するかを決定します。

選択されたロードバランサーノードは、同じアベイラビリティーゾーン内の正常なインスタンスにリクエストを送信します。正常なインスタンスを判断するために、ロードバランサーノードは、ラウンドロビン(TCP接続の場合)または最も未解決の要求(HTTP / HTTPS接続の場合)ルーティングアルゴリズムを使用します。最も未解決の要求ルーティングアルゴリズムは、接続または未処理の要求が最も少ないバックエンドインスタンスを優先します。


2
この情報は少し古くなっています。クロスゾーン機能がオフの場合、ロードバランサーは同じアベイラビリティーゾーン内の正常なインスタンスにのみリクエストを送信します。クロスゾーン機能のデフォルト設定が有効になっているため、ロードバランサーは、HTTP / HTTPSの最小未処理リクエストとTCP接続のラウンドロビンを使用して、ロードバランサーに登録されている正常なインスタンスにリクエストを送信します。
ColtonCat

ちょっと@ColtonCat情報のソースをリンクしてください
murarisumit


2

使用するELBのタイプによって異なります。AWSは、長い間、アプリケーションELBとネットワークELBをクラシックELBとともに導入してきました。

Application Load Balancersリスナールールを適用し、(HTTP / HTTPS)要求をターゲットグループに割り当てます。を使用して、そのターゲットグループからターゲットを選択しますround robin routing algorithm

Network Load Balancers 接続を受信するノードは、を使用してターゲットグループからターゲットを選択します flow hash routing algorithm

Classic Load Balancers用途round robin routing algorithmTCPリスナーのためとleast outstanding requests routing algorithmHTTPとHTTPSリスナーのために

TLDR;

最新のELBはround robin routing algorithm、HTTP / HTTPS要求およびflow hash routing algorithmTCP要求に使用します。

round robin routing algorithmTCP要求およびleast outstanding requests routing algorithmHTTPおよびHTTPS要求に使用されるクラシックELB

ソース/参考資料:https : //docs.aws.amazon.com/elasticloadbalancing/latest/userguide/how-elastic-load-balancing-works.html#routing-algorithm

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.