ロード・バランサ・ポリシー

ロード・バランサ・ポリシーを適用してバックエンド・サーバーに対するトラフィック分散を制御する方法について説明します。

ロード・バランサを作成した後は、トラフィック分散を制御するポリシーをバックエンド・サーバーに適用できます。ロード・バランサ・サービスは、3つの主要なポリシー・タイプをサポートしています:

処理の負荷または容量がバックエンド・サーバー間で異なる場合、これらの各ポリシー・タイプをバックエンド・サーバーの重み付けに従って調整できます。重み付けは、各サーバーに送信されるリクエストの割合に影響します。たとえば、重み付け3のサーバーの接続数は、重み付け1のサーバーの3倍になります。各サーバーのトラフィック処理容量など、選択した基準に基づいて重みを割り当てます。重みの値は1から100である必要があります。

ロード・バランサ・ポリシーの決定は、TCPロード・バランサ、Cookieベースのセッション永続HTTPリクエスト(スティッキーなリクエスト)およびスティッキーではないHTTPリクエストに別々に適用されます。

  • TCPロード・バランサでは、最初の受信リクエストをバックエンド・サーバーに送信するために、ポリシーと重みの基準が考慮されます。この接続に対する後続のすべてのパケットは、同じエンドポイントに送信されます。

  • Cookieベースのセッション永続性を処理するように構成されたHTTPロード・バランサは、Cookieのセッション情報で指定されたバックエンド・サーバーにリクエストを転送します。

  • スティッキーではないHTTPリクエストの場合、ロード・バランサは、すべての受信リクエストにポリシーと重みの基準を適用し、適切なバックエンド・サーバーを決定します。同じクライアントからの複数のリクエストが、異なるサーバーに送信されることがあります。

ノート

予約IPを持つロード・バランサを作成する場合は、次のポリシーを追加します:

Allow group group_name to manage floating-ips in tenancy

ポリシーの一般情報は、ポリシーの開始を参照してください。

ラウンド・ロビン

ラウンド・ロビンは、デフォルトのロード・バランサ・ポリシーです。このポリシーによって、受信トラフィックは、バックエンド・セット・リストの各サーバーに順番に分散されます。各サーバーが接続を受信すると、ロード・バランサはリストを同じ順序で繰り返します。

ラウンド・ロビンは、単純なロード・バランシング・アルゴリズムです。最もよく機能するのは、すべてのバックエンド・サーバーの容量が類似しており、各リクエストで要求される処理の負荷が大きく異ならない場合です。

最少接続

最少接続ポリシーでは、スティッキーではない受信リクエスト・トラフィックは、アクティブ接続が最も少ないバックエンド・サーバーにルーティングされます。このポリシーは、バックエンド・サーバーでアクティブな接続を均等に分散するのに役立ちます。ラウンド・ロビン・ポリシーと同様に、各バックエンド・サーバーに重みを割り当て、トラフィック分散をさらに制御できます。

ノート

TCPのユース・ケースでは、接続はアクティブであっても、現在のトラフィックがない可能性があります。このような接続は、良好な負荷メトリックとして機能しません。

IPハッシュ

IPハッシュ・ポリシーでは、受信リクエストのソースIPアドレスがハッシュ・キーとして使用され、スティッキーではないトラフィックが同じバックエンド・サーバーにルーティングされます。ロード・バランサは、サーバーが使用可能であるかぎり、同じクライアントから同じバックエンド・サーバーにリクエストをルーティングします。このポリシーでは、初期接続を確立するときにサーバーの重み設定が考慮されます。

IPハッシュにより、バックエンド・サーバーが使用可能であるかぎり、特定のクライアントからのリクエストが常に同じバックエンド・サーバーに転送されることが保証されます。

バックアップとしてマークされたバックエンド・サーバーは、IPハッシュ・ポリシーを使用するバックエンド・セットに追加できません。

重要

プロキシまたはNATルーターを介してロード・バランサに接続する複数のクライアントは、同じIPアドレスを持つように見えます。IPハッシュ・ポリシーをバックエンド・セットに適用すると、ロード・バランサは、受信IPアドレスに基づいてトラフィックをルーティングし、それらのプロキシ設定されたクライアント・リクエストを同じバックエンド・サーバーに送信します。プロキシ設定されたクライアント・プールが大きい場合、リクエストでバックエンド・サーバーが一杯になる可能性があります。