ロードバランサーの構成要素
基本的に、ロードバランシングは3つのコンポーネントで構成されています:
- プール: 1つ以上のエンドポイントを含みます。
- エンドポイント: 個々のリクエストに応答します。
- ロードバランサー: 各プールにどのトラフィックを送るかを決定します。
通常、アプリケーションへのリクエストは個々のサーバーに直接送信されます。
ロードバランサーを使用すると、リクエストは最初にロードバランサーを通過します。次に、ロードバランサーがリクエストを特定のプールにルーティングします。
flowchart LR
accTitle: Load balancing flow
accDescr: Load balancing involves a load balancer, pools, endpoints, monitors, and health monitors.
B[Request 1] --> A
C[Request 2] --> A
D[Request 3] --> A
A[Load balancer] -- Request 1 --> P1
A -- Request 2 --> P2
A -- Request 3 --> P3
subgraph P1 [Pool 1]
Endpoint1((Endpoint 1))
Endpoint2((Endpoint 2))
end
subgraph P2 [Pool 2]
Endpoint3((Endpoint 3))
Endpoint4((Endpoint 4))
end
subgraph P3 [Pool 3]
Endpoint5((Endpoint 5))
Endpoint6((Endpoint 6))
end
各プール内では、リクエストが個々のエンドポイントに送信されます。そして、そのエンドポイントがリクエストに応答します。
flowchart LR
accTitle: プールのトラフィックフロー
accDescr: 受信リクエストがプールに到達すると、それはプール内のエンドポイントに送信されます。
A[リクエスト 1] --プールによってルーティング--> Endpoint2
subgraph P1 [プール]
Endpoint1((エンドポイント 1))
Endpoint2((エンドポイント 2))
end
このロードバランサー —> プール —> エンドポイントの進行は、ロードバランサーの動作の核心部分です。