VMware では、vSphere IaaS control plane 環境で使用できるオープン ソースの HAProxy ロード バランサの実装を提供しています。[ワークロード管理] に vSphere Distributed Switch (vDS) ネットワークを使用している場合は、HAProxy ロード バランサをインストールして、構成することができます。

HAProxy ロード バランサで使用する スーパーバイザー の vSphere Distributed Switch の作成

vSphere ネットワーク スタックおよび HAProxy ロード バランサを使用する スーパーバイザー として vSphere クラスタを構成するには、vSphere Distributed Switch にホストを追加する必要があります。Distributed Switch 上で、スーパーバイザー のワークロード ネットワークとして構成するポート グループを作成する必要があります。

クラスタで実行される Kubernetes ワークロードに指定した隔離のレベルに応じて、 スーパーバイザー のさまざまなトポロジから選択できます。

前提条件

手順

  1. vSphere Client で、データセンターに移動します。
  2. データセンターを右クリックして、[Distributed Switch] > [新しい Distributed Switch] の順に選択します。
  3. スイッチの名前(ワークロード Distributed Switch など)を入力して、[次へ] をクリックします。
  4. スイッチのバージョン 7.0 を選択して、[次へ] をクリックします。
  5. [ポート グループ名]プライマリ ワークロード ネットワーク と入力し、[次へ] をクリックして [終了] をクリックします。
    1 つのポート グループを持つ新しい Distributed Switch がデータセンターに作成されます。このポート グループは、作成する スーパーバイザー のプライマリ ワークロード ネットワークとして使用できます。プライマリ ワークロード ネットワークは、Kubernetes 制御プレーン仮想マシンのトラフィックを処理します。
  6. ワークロード ネットワークの分散ポート グループを作成します。
    作成するポート グループの数は、 スーパーバイザー 用に実装するトポロジによって異なります。隔離されたワークロード ネットワークが 1 つ含まれるトポロジの場合は、 スーパーバイザー のすべての名前空間用のネットワークとして使用する分散ポート グループを 1 つ作成します。ネットワークが名前空間ごとに隔離されているトポロジの場合は、作成する名前空間と同じ数のポート グループを作成します。
    1. 新しく作成した Distributed Switch に移動します。
    2. スイッチを右クリックして、[分散ポート グループ] > [新規分散ポート グループ] の順に選択します。
    3. ポート グループの名前(ワークロード ネットワーク など)を入力して、[次へ] をクリックします。
    4. デフォルトのままにして、[次へ] をクリックし、[終了] をクリックします。
  7. スーパーバイザー として構成する vSphere クラスタのホストを Distributed Switch に追加します。
    1. Distributed Switch を右クリックして、[ホストの追加と管理] を選択します。
    2. [ホストの追加] を選択します。
    3. [新規ホスト] をクリックし、スーパーバイザー として構成する vSphere クラスタからホストを選択して [次へ] をクリックします。
    4. 各ホストから物理 NIC を選択して、Distributed Switch 上のアップリンクに割り当てます。
    5. ウィザードの残りの各画面で [次へ] をクリックし、最後に [終了] をクリックします。

結果

ホストが Distributed Switch に追加されます。以上で、スイッチ上に作成したポート グループを スーパーバイザー のワークロード ネットワークとして使用できます。

HAProxy ロード バランサ制御プレーン仮想マシンのデプロイ

Kubernetes ワークロードに vSphere ネットワーク スタックを使用する場合は、HAProxy 制御プレーン仮想マシンをインストールして、Tanzu Kubernetes クラスタにロード バランシング サービスを提供します。

前提条件

Distributed Switch ネットワークおよび HAProxy と vSphere IaaS control plane の併用方法を示すデモが役立つ場合があります。「Getting Started Using vSphere with Tanzu」のビデオを確認してください。

手順

  1. vSphere Client を使用して、vCenter Server にログインします。
  2. HAProxy OVA ファイルから新しい仮想マシンを作成します。
    オプション 説明
    コンテンツ ライブラリ OVA をローカル コンテンツ ライブラリにインポートした場合:
    • [メニュー] > [コンテンツ ライブラリ] の順に選択します。
    • OVA をインポートしたライブラリを選択します。
    • vmware-haproxy-vX.X.X テンプレートを選択します。
    • 右クリックして、[このテンプレートから仮想マシンを新規作成] を選択します。
    ローカル ファイル

    OVA ファイルをローカル ホストにダウンロードした場合:

    • [ワークロード管理] を有効にする vCenter Server クラスタを選択します。
    • 右クリックして [OVF テンプレートのデプロイ] を選択します。
    • [ローカル ファイル] を選択し [ファイルのアップロード] をクリックします。
    • vmware-haproxy-vX.X.X.ova ファイルを参照して選択します。
  3. [仮想マシン名]haproxy などの名前を入力します。
  4. HAProxy をデプロイする [データセンター] 選択して、[次へ] をクリックします。
  5. [ワークロード管理] を有効にする vCenter Server クラスタを選択して、[次へ] をクリックします。
  6. デプロイの詳細を確認して、[次へ] をクリックします。
  7. 使用許諾契約書を承諾して、[次へ] をクリックします。
  8. デプロイの設定を選択してください。詳細については、『vSphere IaaS 制御プレーンの概念と計画』のHAProxy ネットワーク トポロジを参照してください。
    構成 説明
    デフォルト 管理ネットワーク用と単一ワークロード ネットワーク用の 2 つの NIC を持つアプライアンスをデプロイする場合は、このオプションを選択します。
    フロントエンド ネットワーク 3 つの NIC を持つアプライアンスをデプロイする場合は、このオプションを選択します。フロントエンド サブネットは、開発者がクラスタ制御プレーンにアクセスするために使用するネットワークからクラスタ ノードを隔離する場合に使用されます。
  9. 仮想マシンに使用するストレージ ポリシーを選択し、[次へ] をクリックします。
  10. ロード バランサに使用するネットワーク インターフェイスを選択し、[次へ] をクリックします。
    ソース ネットワーク ターゲット ネットワーク
    管理 仮想マシン ネットワークなどの管理ネットワークを選択します。
    ワークロード [ワークロード管理] 用に構成された Distributed Switch ポートグループを選択します。
    フロントエンド フロントエンド サブネットに構成された Distributed Switch ポートグループを選択します。フロントエンド構成を選択しなかった場合、この設定はインストール中に無視されるため、デフォルトのままにすることができます。
    注: ワークロード ネットワークは、管理ネットワークとは別のサブネットに配置してください。『 vSphere IaaS 制御プレーンの概念と計画』の Requirements for Enabling a Three-Zone Supervisor with HA Proxy Load Balancerおよび Requirements for Enabling a Single-Cluster Supervisor with VDS Networking and HAProxy Load Balancerを参照してください。
  11. アプリケーション構成設定をカスタマイズします。アプライアンスの設定を参照してください。
  12. ネットワーク構成の詳細を指定します。ネットワークの構成を参照してください。
  13. ロード バランシングを構成します。ロード バランシングの設定を参照してください。
  14. [次へ] をクリックして、OVA の構成を完了します。
  15. デプロイ構成の詳細を確認し、[完了] をクリックして OVA をデプロイします。
  16. [タスク] パネルを使用して、仮想マシンのデプロイを監視します。
  17. 仮想マシンのデプロイが完了したら、パワーオンします。

次のタスク

HAProxy ロード バランサが正常に展開されて、パワーオンされたら、 [ワークロード管理] の有効化を続行します。 スーパーバイザー の構成と管理を参照してください。

HAProxy ロード バランサのカスタマイズ

構成設定、ネットワーク設定、ロード バランシング設定などを行って、HAProxy 制御プレーン仮想マシンをカスタマイズします。

アプライアンスの設定

次の表に、HAProxy アプライアンス構成のパラメータの一覧と説明を示します。
パラメータ 説明 注釈または例
root パスワード root ユーザーの初期パスワード(6 ~ 128 文字)。 以降のパスワード変更は、オペレーティング システムで実行する必要があります。
root ログインの許可

root ユーザーに、SSH を使用して仮想マシンにリモートでログインすることを許可するオプション。

root ログインはトラブルシューティングのために必要になることがありますが、root ログインを許可した場合のセキュリティ面の影響を考慮する必要があります。
TLS 認証局 (ca.crt)

自己署名 CA 証明書を使用するには、このフィールドを空白のままにします。

独自の CA 証明書 (ca.crt) を使用するには、証明書の内容をこのフィールドに貼り付けます。

Base64 によるコンテンツのエンコードが必要になる場合があります。https://www.base64encode.org/

自己署名 CA 証明書を使用している場合は、証明書からパブリック キーとプライベート キーが生成されます。

キー (ca.key)

自己署名証明書を使用している場合は、このフィールドを空白のままにします。

CA 証明書を指定した場合は、このフィールドに証明書のプライベート キーの内容を貼り付けます。

ネットワークの構成

次の表に、HAProxy ネットワーク構成のパラメータの一覧と説明を示します。
パラメータ 説明 注釈または例
ホスト名 HAProxy 制御プレーン仮想マシンに割り当てるホスト名(または FQDN) デフォルト値:haproxy.local
DNS DNS サーバの IP アドレスのカンマ区切りリスト。

デフォルト値:1.1.1.1, 1.0.0.1

値の例:10.8.8.8

管理 IP

管理ネットワーク上の HAProxy 制御プレーン仮想マシンの固定 IP アドレス。

ネットワークのプリフィックス長を含む有効な IPv4 アドレス(例:192.168.0.2/24)。

管理ゲートウェイ

管理ネットワークのゲートウェイの IP アドレス。

例: 192.168.0.1

ワークロード IP アドレス

ワークロード ネットワーク上の HAProxy 制御プレーン仮想マシンの固定 IP アドレス。

この IP アドレスには、ロード バランサの IP アドレス範囲外のアドレスを指定する必要があります。

ネットワークのプリフィックス長を含む有効な IPv4 アドレス(例:192.168.10.2/24)。

ワークロード ゲートウェイ

ワークロード ネットワークのゲートウェイの IP アドレス。

例: 192.168.10.1

フロントエンド構成を選択した場合は、ゲートウェイを入力する必要があります。フロントエンドが選択されていても、ゲートウェイが指定されていない場合、デプロイは正常に実行されません。

フロントエンド IP アドレス

フロントエンド ネットワーク上の HAProxy アプライアンスの固定 IP アドレス。

この値は、フロントエンド デプロイ モデルが選択されている場合のみ使用されます。

ネットワークのプリフィックス長を含む有効な IPv4 アドレス(例:192.168.100.2/24)。

フロントエンド ゲートウェイ

フロントエンド ネットワークのゲートウェイの IP アドレス。

この値は、フロントエンド デプロイ モデルが選択されている場合のみ使用されます。

例: 192.168.100.1

ロード バランシングの設定

次の表に、HAProxy ロード バランサ構成のパラメータの一覧と説明を示します。
パラメータ 説明 例または注釈
ロード バランサの IP アドレス範囲

このフィールドには、CIDR 形式を使用する IPv4 アドレスの範囲を指定します。値には有効な CIDR 範囲を指定する必要があります。指定しなかった場合、インストールは失敗します。

HAProxy は、仮想 IP アドレス (VIP) 用の IP アドレスを予約します。割り当てが完了すると、各仮想 IP アドレスが割り当てられ、HAProxy はそのアドレスで要求に応答します。

vSphere Client を使用して vCenter Server[ワークロード管理] を有効にした場合、ここで指定する CIDR 範囲と仮想サーバに割り当てる IP アドレスが重複することはできません。
注: ロード バランサの IP アドレス範囲は、管理ネットワークとは異なるサブネットに配置する必要があります。管理ネットワークと同じサブネット上にロード バランサの IP アドレス範囲を設定することはできません。

たとえば、ネットワーク CIDR 192.168.100.0/24 は、ロード バランサに 256 個の仮想 IP アドレスを提供します(各アドレスの範囲は 192.168.100.0 - 192.168.100.255)。

たとえば、ネットワーク CIDR 192.168.100.0/25 は、ロード バランサに 128 個の仮想 IP アドレスを提供します(各アドレスの範囲は 192.168.100.0 - 192.168.100.127)。

データプレーン API の管理ポート

ロード バランサの API サービスが待機する HAProxy 仮想マシンのポート。

有効なポート。ポート 22 は SSH 用に予約されています。デフォルト値は 5556 です。

HAProxy のユーザー ID

ロード バランサ API のユーザー名

クライアントがロード バランサの API サービスの認証に使用するユーザー名です。

注: このユーザー名は、 スーパーバイザー を有効にするときに必要になります。
HAProxy のパスワード

ロード バランサ API のパスワード

クライアントがロード バランサの API サービスの認証に使用するパスワードです。

注: このパスワードは、 スーパーバイザー を有効にするときに必要になります。