ロード バランサを作成して、指定したインスタンス間で受信要求を分散できます。ロード バランサを使用すると、インスタンス間でワークロードを計画的に共有し、システム リソースをより効率的に使用できます。

VMware Integrated OpenStack 7.2 は OpenStack Octavia コンポーネントをサポートします。
注:
  • VIO 7.1 以降で、Octavia フレーバーを使用できます。これは NSX-T ポリシー プラグインでのみサポートされています。Octavia フレーバーのサポートにより、ロードバランサで OpenStack Octavia フレーバー機能の利用が可能になります。OpenStack Octavia フレーバーの詳細については、https://docs.openstack.org/octavia/latest/admin/flavors.html を参照してください。

前提条件

  • ネットワークにパブリック サブネットおよびルーターを作成します。NSX Data Center for vSphere デプロイでは、ルーター タイプを exclusive にする必要があります。
    注: テナントのサブネットにロード バランサを作成できますが、ロード バランサにフローティング IP アドレスを割り当てる必要があります。
  • 1 つ以上のクライアントと 2 つ以上のサーバ インスタンスを構成します。
  • Horizon または OpenStack CLI の操作が可能になる以下のロールのいずれかがあることを確認します。
    ロール 説明
    load-balancer_observer ロード バランサの読み取り専用 API へのアクセス権を持つユーザー。
    load-balancer_global_observer 他のユーザーが所有しているリソースを含む、ロード バランサの読み取り専用 API へのアクセス権を持つユーザー。
    load-balancer_member ロード バランサの読み取りおよび書き込み API へのアクセス権を持つユーザー。
    load-balancer_quota_admin 割り当て API のみの管理者。
    load-balancer_admin 他のユーザーが所有しているリソースを含む、すべてのロード バランサ API の管理者。
    admin すべての API に対する管理者。

手順

  1. VMware Integrated OpenStack ダッシュボードにログインします。
  2. タイトル バーのドロップダウン メニューからプロジェクトを選択します。
  3. [プロジェクト] > [ネットワーク] > [ロード バランサ] の順に選択して、[ロード バランサの作成] をクリックします。
  4. [ロード バランサの詳細] 画面で、必要な設定を入力し、[次へ] をクリックします。
    オプション 説明

    [名前]

    ロード バランサの名前を入力します。

    [説明]

    (オプション)ロード バランサの説明を入力します。

    [IP アドレス]

    (オプション)ロード バランサの IP アドレスを入力します。

    [サブネット]

    ロード バランサのサブネットを選択します。このサブネットのメンバーのみを LBaaS プールに追加できます。

  5. [リスナーの詳細] 画面で、必要な設定を入力し、[次へ] をクリックします。
    オプション 説明

    [名前]

    リスナーの名前を入力します。

    [説明]

    リスナーの説明を入力します。

    [プロトコル]

    リスナーが使用するプロトコルを選択します。以下のプロトコルがサポートされています。

    • HTTP
    • TCP
    • Terminated HTTPS
    • HTTPS

    Terminated HTTPS をプロトコルとして選択する場合は、TLS コンテナの ID も指定する必要があります。

    [ポート]

    リスナーが使用するポートを入力します。

  6. LBaaS プールの名前、説明、ロード バランシング メソッドを指定し、[次へ] をクリックします。
    サポートされているロード バランシング メソッドは次のとおりです。
    メソッド 説明
    [LEAST_CONNECTIONS]

    新しいクライアント要求は、接続数が最も少ないサーバに送信されます。

    [ROUND_ROBIN]

    各サーバは、割り当てられている重み付けに従って順番に使用されます。

    [SOURCE_IP]

    同じソース IP アドレスからのすべての接続は、プールの同じメンバーによって処理されます。

  7. ロード バランサ プールに追加するサーバおよびクライアント インスタンスを選択し、[次へ] をクリックします。
  8. 健全性監視のパラメータを指定し、[次へ] をクリックします。
    パラメータ 説明
    [監視タイプ]

    [HTTP][PING]、または [TCP] を指定します。

    [間隔]

    メンバーにプローブを送信してから次のプローブを送信するまでの時間を入力します。

    [再試行回数]

    メンバーのステータスを INACTIVE に変更する前に、許可される接続失敗回数を入力します。

    [タイムアウト]

    タイムアウトまでに、接続の確立を監視が待機する秒数を入力します。

    タイムアウトの値は間隔の値よりも小さくする必要があります。

    [HTTP] を選択する場合は、HTTP メソッド、期待するステータス コード、および URL も設定する必要があります。
  9. リスナーの詳細で TERMINATED_HTTPS プロトコルを選択した場合は、リスナーの証明書を 1 つ以上指定し、[次へ] をクリックします。
  10. [ロード バランサの作成] をクリックします。
  11. テナントのサブネットにロード バランサを作成した場合は、ロード バランサにフローティング IP アドレスを関連付けます。
    1. ロード バランサの右側にある下矢印をクリックし、[フローティング IP アドレスの関連付け] を選択します。
    2. フローティング IP アドレスまたはプールを選択し、[関連付け] をクリックします。
  12. (オプション) LBaaS 構成を検証するためのテスト要求を送信します。
    1. Integrated OpenStack Managerroot ユーザーとしてログインします。
      ssh root@mgmt-server-ip
    2. テスト用の index.html ファイルを作成します。
    3. 同じディレクトリで、Web サーバを起動します。
      sudo python -m SimpleHTTPServer 80
    4. クライアント インスタンスにログインします。
    5. wget コマンドを実行し、実行した要求がプール内のサーバ間で適切に負荷分散されているかどうかを確認します。
       wget -O - http://mgmt-server-ip

次のタスク

ロード バランサを開き、[リスナーの作成] をクリックすると、リスナーを追加できます。