制御プレーン エンドポイント プロバイダとしての NSX ALB

Tanzu Kubernetes Grid と統合すると、NSX ALB はエンドポイント VIP をクラスタに提供し、クラスタの制御プレーン ノードでロード バランシングを実行できます。この機能を使用すると、クラスタの API サーバ ポートとエンドポイント VIP ネットワークをカスタマイズすることもできます。

次の表に、NSX ALB と Kube-Vip でサポートされる機能の比較を示します。

NSX ALB Kube-Vip
IP アドレス管理のクラスタ エンドポイント VIP NSX ALB によって提供
ユーザーが手動で管理
制御プレーン ノードのロード バランシング トラフィックはすべての制御プレーン ノードにロード バランシングされます
トラフィックはリーダー制御プレーン ノードにのみルーティングされます
API サーバのポート 任意のポート(デフォルトは 6443)
任意のポート(デフォルトは 6443)

クラスタ エンドポイント VIP プロバイダとしての NSX ALB の構成

NSX ALB を管理クラスタのクラスタ エンドポイント VIP プロバイダとして構成するには、次の手順を実行します。

  1. 管理クラスタ構成 YAML ファイルを作成し、ファイルに次のフィールドを追加します。

    AVI_CONTROL_PLANE_HA_PROVIDER: true
    
    
  2. エンドポイント VIP に固定 IP アドレスを使用する場合は、ファイルに次のフィールドを追加します。

    VSPHERE_CONTROL_PLANE_ENDPOINT: <IP-ADDRESS>
    
    

    VIP ネットワークで指定された固定 IP アドレス プールに VIP が存在することを確認します。

  3. API サーバのポートを指定する場合は、ファイルに次のフィールドを追加します。

    AVI_CONTROL_PLANE_HA_PROVIDER: true
    CLUSTER_API_SERVER_PORT: <PORT-NUMBER>
    
    

    管理クラスタとそのワークロード クラスタは、このポートを使用して API サーバに接続します。

  4. tanzu management-cluster create コマンドを使用して管理クラスタを作成します。

NSX ALB が管理クラスタのエンドポイント VIP プロバイダとして構成されました。

NSX ALB をワークロード クラスタのクラスタ エンドポイント VIP プロバイダとして構成するには、次の手順を実行します。

  1. ワークロード クラスタ構成 YAML ファイルを作成し、次のフィールドを追加します。

    AVI_CONTROL_PLANE_HA_PROVIDER: true
    
  2. エンドポイント VIP に固定 IP アドレスを使用する場合は、ファイルに次のフィールドを追加します。

    AVI_CONTROL_PLANE_HA_PROVIDER: true
    VSPHERE_CONTROL_PLANE_ENDPOINT: <IP-ADDRESS>
    
    

    VIP ネットワークで指定された固定 IP アドレス プールに VIP が存在することを確認します。

  3. tanzu cluster create コマンドを使用してワークロード クラスタを展開します。

NSX ALB がワークロード クラスタのエンドポイント VIP プロバイダとして構成されました。

クラスタ エンドポイントとワークロード サービスの個別の VIP ネットワーク

NSX ALB Essentials Edition でこの機能を使用する場合は、使用しているネットワークにファイアウォールまたはネットワーク ポリシーが構成されていないことを確認します。ネットワークでファイアウォールまたはネットワーク ポリシーを構成している場合は、自動ゲートウェイ機能を備えた NSX ALB Enterprise Edition を展開して、この機能を使用します。

NSX ALB を使用してクラスタ エンドポイント VIP を提供する場合は、クラスタ エンドポイントとワークロード サービス(ロード バランサと入力方向)の外部 IP アドレスの VIP ネットワークをカスタマイズできます。これらを異なる VIP ネットワークに分離して、セキュリティを強化し、他のネットワーク トポロジ要件を満たすことができます。

管理クラスタとワークロード クラスタに個別の VIP ネットワークを構成する

次の図は、管理クラスタとワークロード クラスタに個別の VIP ネットワークが構成されている場合のネットワーク トポロジを示しています。

管理クラスタとワークロード クラスタの個別の VIP ネットワーク

管理クラスタとワークロード クラスタに個別の VIP ネットワークを構成するには、次の手順を実行します。

  1. 管理クラスタ構成 YAML ファイルを作成し、ファイルに次のフィールドを追加します。

    AVI_CONTROL_PLANE_HA_PROVIDER: true
    
    # Network used to place workload clusters' services external IPs (load balancer & ingress services)
    AVI_DATA_NETWORK:
    AVI_DATA_NETWORK_CIDR:
    
    # Network used to place workload clusters' endpoint VIPs
    AVI_CONTROL_PLANE_NETWORK:
    AVI_CONTROL_PLANE_NETWORK_CIDR:
    
    # Network used to place management clusters' services external IPs (load balancer & ingress services)
    AVI_MANAGEMENT_CLUSTER_VIP_NETWORK_NAME:
    AVI_MANAGEMENT_CLUSTER_VIP_NETWORK_CIDR:
    
    # Network used to place management clusters' endpoint VIPs
    AVI_MANAGEMENT_CLUSTER_CONTROL_PLANE_VIP_NETWORK_NAME:
    AVI_MANAGEMENT_CLUSTER_CONTROL_PLANE_VIP_NETWORK_CIDR:
    

    管理クラスタ構成ファイルの作成方法については、「管理クラスタ構成ファイルの作成」を参照してください。

  2. tanzu management-cluster create コマンドを使用して管理クラスタを作成します。

クラスタのエンドポイント VIP とロード バランサ サービスの外部 IP アドレスが、異なるネットワークに配置されるようになりました。

ワークロード クラスタごとに個別の VIP ネットワークを構成する

次の図は、ワークロード クラスタごとに個別の VIP ネットワークが構成されている場合のネットワーク トポロジを示しています。

管理クラスタとワークロード クラスタの個別の VIP ネットワーク

ワークロード クラスタごとに VIP ネットワークを個別に構成するには、次の手順を実行します。

  1. 次の例に示すように、AKODeploymentConfig CR オブジェクトを作成します。

    apiVersion: networking.tkg.tanzu.vmware.com/v1alpha1
    kind: AKODeploymentConfig
    metadata:
      name: install-ako-for-dev-cluster
    spec:
      adminCredentialRef:
        name: avi-controller-credentials
        namespace: tkg-system-networking
      certificateAuthorityRef:
        name: avi-controller-ca
        namespace: tkg-system-networking
      controller: 1.1.1.1
      cloudName: Default-Cloud
      serviceEngineGroup: Default-Group
      clusterSelector:             # match workload clusters with dev-cluster: "true" label
        matchLabels:
          dev-cluster: "true"
      controlPlaneNetwork:         # clusters' endpoint VIP come from this VIP network
        cidr: 10.10.0.0/16
        name: avi-dev-cp-network
      dataNetwork:                 # clusters' services external IP come from this VIP network
        cidr: 20.20.0.0/16
        name: avi-dev-dp-network
    
    
  2. 管理クラスタに変更を適用します。

    kubectl --context=MGMT-CLUSTER-CONTEXT apply -f <FILE-NAME>
    
  3. ワークロード クラスタ構成 YAML ファイルで、次の例のように必須フィールドを追加します。

    AVI_CONTROL_PLANE_HA_PROVIDER:  true
    AVI_LABELS: '{"dev-cluster": "true"}'
    
  4. tanzu cluster create コマンドを使用してワークロード クラスタを作成します。

クラスタのエンドポイント VIP とロード バランサ サービスの外部 IP アドレスが、異なるネットワークに配置されるようになりました。

check-circle-line exclamation-circle-line close-line
Scroll to top icon