第15章 Octavia を使用した Load Balancing-as-a-Service (LBaaS)

OpenStack Load-balancing サービス (Octavia) は、Red Hat OpenStack Platform director のインストール環境で、Load Balancing-as-a-Service (LBaaS) バージョン 2 の実装を提供します。本項では、Octavia を有効化する方法について説明します。Octavia サービスは、Networking API サーバーと同じノードでホストされていることを前提とします。デフォルトでは、負荷分散サービスはコントローラーノード上で実行されます。

注記

Red Hat では、Neutron-LBaaS から Octavia への移行パスをサポートしていません。ただし、サポート対象外のオープンソースツールを利用することが可能です。詳細は、「nlbaas2octavia-lb-replicator」を参照してください。

15.1. Octavia の概要

Octavia は、amphora と呼ばれるコンピュートノード上の一式のインスタンスを使用します。amphora との通信は、負荷分散の管理ネットワーク (lb-mgmt-net) 上で行われます。

Octavia には以下のサービスが含まれています。

API コントローラー (octavia_api container)
設定更新および amphora インスタンスのデプロイ、モニタリング、削除でコントローラーワーカーと通信します。
コントローラーワーカー (octavia_worker container)
LB ネットワーク上で設定および設定の更新を amphora に送信します。
ヘルスマネージャー
個々の amphora の正常性をモニタリングし、amphora で予期せずにエラーが発生した場合にフェイルオーバーイベントを処理します。
重要

PING タイプのヘルスモニターは、メンバーが到達可能で ICMP エコーリクエストに応答するかどうかを確認します。PING は、そのインスタンスで実行中のアプリケーションが正常かどうかを検出しません。PING は、ICMP エコーリクエストが有効なヘルスチェックである特定のケースでのみ使用してください。

ハウスキーピングマネージャー
古い (削除済みの) データベースレコードのクリーンアップ、spares プールの管理、amphora の証明書のローテーションの管理を行います。
ロードバランサー
負荷分散エンティティーを表す最上位の API オブジェクト。仮想 IP アドレスは、ロードバランサーの作成時に確保されます。ロードバランサーの作成時には、amphora インスタンスがコンピュートノードで起動します。
Amphora
負荷分散を行うインスタンス。Amphora は、通常コンピュートノード上で実行されるインスタンスで、リスナー、プール、ヘルスモニター、L7 ポリシー、メンバーの設定に応じた負荷分散パラメーターにより設定されます。Amphora はヘルスマネージャーに定期的なハートビートを送信します。
リスナー
負荷が分散されるサービスのリスニングエンドポイント (例: HTTP)。リスナーは複数のプールを参照し、レイヤー 7 ルールを使用してそれらのプールを切り替える場合があります。
プール
ロードバランサー (amphora) からのクライアント要求を処理するメンバーのグループ。1 つのプールは 1 つのリスナーにのみ関連付けられます。
メンバー
プール内のロードバランサー (amphora) の背後で、トラフィックを処理するコンピュートインスタンス

以下の図には、プールメンバーへの HTTPS トラフィックフローを示しています。

OpenStack Networking Guide 471659 0518 LBaaS Topology