VMware NSX-T は、クラウド ネイティブのアプリケーション環境を構築する俊敏性に優れた Software-Defined Infrastructure を提供します。NSX-T は、異種のエンドポイント環境やテクノロジー スタックを含む新しいアプリケーション フレームワークやアーキテクチャの運用におけるネットワーク、セキュリティ、自動化、および操作の簡素化を提供することに重点を置いています。このトピックでは、NSX Advanced Load Balancer と NSX-T の統合の設計について詳しく説明します。
NSX-T は、クラウド ネイティブのアプリケーション、ベアメタル ワークロード、マルチ ハイパーバイザー環境、パブリック クラウド、および複数のクラウドをサポートします。VMware NSX-T の詳細については、VMware NSX-T のドキュメントを参照してください。
アーキテクチャ
このソリューションは、API を使用して、インフラストラクチャを検出するために NSX-T Manager および vCenter Server とインターフェイスする NSX Advanced Load Balancer Controller で構成されます。また、サービス エンジン (SE) のライフサイクルとネットワーク構成も管理します。Controller は、ユーザーがアプリケーションのロード バランシングを構成するための制御プレーンと管理コンソールを提供し、サービス エンジンは分散および Elastic ロード バランシング ファブリックを提供します。
NSX Advanced Load Balancer Controller は、SE OVA イメージを vCenter Server のコンテンツ ライブラリにアップロードし、vCenter Server API を使用して SE 仮想マシンを展開します。クラウドを構成する前に、vCenter Server 管理者がコンテンツ ライブラリを作成する必要があります。詳細については、「コンテンツ ライブラリの作成」を参照してください。
プロトコル ポートの要件
次の表に、統合に必要なプロトコルとポートを示します。
送信元 |
宛先 |
プロトコル |
ポート |
---|---|---|---|
NSX Advanced Load Balancer Controller 管理 IP アドレスとクラスタ VIP |
NSX-T Manager 管理 IP アドレス |
TCP |
443 |
NSX Advanced Load Balancer Controller 管理 IP アドレスとクラスタ VIP |
vCenter Server 管理 IP アドレス |
TCP |
443 |
NSX Advanced Load Balancer Controller およびサービス エンジンで使用されるプロトコルとポートの詳細については、VMware Ports and Protocolsを参照してください。
NSX-T ゲートウェイ ファイアウォールが有効な場合、NSX 管理者は、NSX Edge ポリシーを管理する必要があります。
サポート可能性
NSX-T と NSX Advanced Load Balancer のサポート マトリックス の詳細については、相互運用性マトリックスを参照してください。
ロード バランサ トポロジ
SE は、NSX-T 環境での展開のワンアーム モードのみをサポートします。つまり、仮想サービスの場合、クライアントから VIP へのトラフィックと SE からバックエンド サーバへのトラフィックは、両方とも同じ SE データ インターフェイスを使用します。SE 仮想マシンは 9 個のデータ インターフェイスがあり、複数の論理セグメントに接続できますが、それぞれが異なる VRF に配置されるため、他のすべてのインターフェイスから隔離されます。
図に示すように、SE の展開には次の 2 つのトポロジを使用できます。
専用論理セグメントの SE の場合、次のとおりです。
SE インターフェイスの IP アドレス割り当てを個別に管理できます。
現在のバージョンでは、Avi のクラウド構成に追加する前に、このセグメントを NSX-T に作成する必要があります。
共有論理セグメントの SE の場合、次のとおりです。
SE インターフェイスは、同じ論理セグメント上のサーバ仮想マシンと同じアドレス空間を共有します。
注:Tier-1 ルーターに接続されている論理セグメントのみがサポートされます。NSX-T 統合のためのクラウド自動化では、Tier-0 ルーターに直接接続された論理セグメントに SE を配置することはできません。
Avi バージョン 20.1.5 より前では、Avi SE 管理ネットワークをオーバーレイ論理セグメントに接続する必要があります。Avi バージョン 20.1.6 以降では、SE 管理ネットワークとデータ ネットワークを VLAN で NSX-T にバッキングされた論理セグメントに接続できます。詳細については、「NSX Advanced Load Balancer VLAN 論理セグメント」を参照してください。
次のトポロジはサポートされません。
SE データ
VIP サブネット
クライアント サブネット
セグメント A-T1a-T0
セグメント B-T1b-T0
セグメント B-T1b-T0
スタティック ルートは T1a で構成されています。したがって、プロキシ ARP を実行できるのは T1a と T0 のみです。T1b にはそのスタティック ルートがないため、VIP の ARP をプロキシできません。
VIP ネットワーク
これらの SE に配置された仮想サービスの場合、VIP は接続されている論理セグメントのサブネット、または他の未使用のサブネットに属することができます。仮想サービスが SE に配置されると、Controller は、仮想サービス配置用に選択された論理セグメントに関連付けられている Tier-1 ルーター上の VIP スタティック ルートを更新します。NSX 管理者は、これらのスタティック ルートを Tier-0 に再配分するように、Tier-1 ルーターを構成する必要があります。VIP の North-South の到達可能性を実現するために、管理者は、BGP を介して VIP ルートを外部ルーターにアドバタイズするように Tier-0 を構成する必要があります。
Tier-1 ごとに構成できる VIP の数には、それぞれの Tier-1 ゲートウェイの NSX Manager でサポートされるスタティック ルートの最大数が適用されます。論理ルーティング制限の詳細については、NSX-T Data Center Configuration Limitsを参照してください。
次に説明する 2 つのトラフィック シナリオがあります。
North-South トラフィック
上の図に示すように、外部クライアントが VIP に要求を送信すると、外部ルーターから Tier-0 にルーティングされ、ここから正しい Tier-1 に転送され、SE の VIP にルーティングされます。
East-West トラフィック
NSX オーバーレイ上のクライアントが VIP に到達しようとすると、直接接続された Tier-1 のデフォルト ゲートウェイに要求が送信されます。VIP の配置場所に応じて、次の 2 つのサブシナリオがあります。
別の Tier-1 に接続されている SE の VIP:トラフィックは Tier-0 にルーティングされ、トラフィックはここから正しい Tier-1 ルーターに転送されます。Tier-1 ルーターは、トラフィックを SE にルーティングします。
同じ Tier-1 に接続されている SE の VIP:トラフィックは同じ Tier-1 の SE にルーティングされます。
HA モードとスケールアウト
NSX-T 環境では、すべての HA モード(アクティブ/アクティブ、N+M、およびアクティブ/スタンバイ)がサポートされます。VIP が SE に配置されると、Controller は、Tier-1 ルーターに対し、SE のデータ インターフェイスをネクスト ホップとして持つスタティック ルートを追加します。
アクティブ/アクティブ モードと N+M HA モードの場合、仮想サービスがスケールアウトされると、Controller は仮想サービスが配置されている各 SE を参照する等コストのネクスト ホップを追加します。Tier-1 は、等価コストのマルチパス (Equal Cost Multi-Pathing: ECMP) を使用して、SE を介して受信接続を分散します。
アクティブ/スタンバイで、仮想サービスが有効な SE が 1 つしかないか、N+M HA モードがスケールアウトされていない場合、Avi Controller プログラムはアクティブ SE にのみルーティングします。ECMP はここでは不要です。
管理ネットワーク
NSX Advanced Load Balancer Controller クラスタ仮想マシンは、管理ポート グループに接続された NSX-T Manager に隣接して展開する必要があります。NSX Advanced Load Balancer SE 管理用に専用の Tier-1 ゲートウェイと論理セグメントを設定することをお勧めします。
すべての SE 仮想マシンの最初のネットワーク インターフェイスが管理セグメントに接続されます。SE の管理 IP アドレスは、NSX Advanced Load Balancer Controller からアクセスできる必要があります。ロード バランシング(仮想サーバ/VIP)を外部ルーターにアドバタイズするには、Tier-0 のアドバタイズされた Tier-1 サブネット設定ですべての接続されたセグメントおよびサービス ポートと LB VIP を有効にして、学習したルートを BGP を使用して外部ルーターにアドバタイズする必要があります。
NSX-T Cloud 構成モデル
任意のインフラストラクチャを持つ NSX Advanced Load Balancer の統合ポイントは、クラウドと呼ばれます。NSX-T 環境では、NSX-T Cloud を構成する必要があります。NSX-T Cloud の構成の詳細については、「NSX-T と NSX Advanced Load Balancer との統合の概要」を参照してください。
NSX-T Cloud は、NSX-T Manager とトランスポート ゾーンによって定義されます。NSX-T Manager に複数のトランスポート ゾーンがある場合、それぞれが新しい NSX-T Cloud にマッピングされます。複数の NSX-T 環境のロード バランシングを管理するために、各 NSX-T Manager は新しい NSX-T Cloud にマッピングされます。
NSX-T Cloud には、次の構成も必要です。
vCenter オブジェクト
各 NSX-Cloud には、1 つ以上の vCenter Server を関連付けることができます。vCenter Server オブジェクトは、ESXi ホストがあり、NSX-T Cloud で構成されたトランスポート ゾーンに属する NSX-T に追加されたすべての vCenter Server コンピュート マネージャに対して、NSX Advanced Load Balancer で構成する必要があります。
NSX Advanced Load Balancer Controller が SE OVA をアップロードするコンテンツ ライブラリを選択します。
ネットワーク構成
NSX-T Cloud は 2 種類のネットワーク構成が必要:管理ネットワーク:SE 仮想マシンの管理接続に使用する論理セグメントを選択する必要があります。
VIP 配置ネットワーク:NSX Advanced Load Balancer Controller は、すべての NSX-T 論理セグメントは同期しません。Tier-1 ルーターと 1 つの接続された論理セグメントを VIP ネットワークとして選択する必要があります。Tier-1 ルーターごとに、1 つの VIP ネットワークのみが許可されます。これは、複数の Tier-1 ルーターがある場合に繰り返すことができます。選択した VIP 論理セグメントのみが、NSX Advanced Load Balancer のネットワーク オブジェクトとして同期されます。Tier-1 ごとに構成できる VIP の数には、それぞれの Tier-1 の NSX Manager でサポートされるスタティック ルートの最大数が適用されます。詳細については、config max ツールのRoutes Per Distributed Routerを参照してください。
VRF コンテキスト
NSX Advanced Load Balancer は、VIP ネットワークの構成中に選択されたすべての Tier-1 ゲートウェイに対して VRF コンテキストを自動的に作成します。これは、異なる Tier-1 に接続された論理セグメントが同じサブネットを持つことがあるためです。仮想サービスの作成時に VRF を選択して、VIP が正しいローカル セグメントに配置され、VIP ルートが正しい Tier-1 ルーターで構成されるようにする必要があります。
プール構成
特定の仮想サービスの場合、プール サーバの論理セグメントと VIP の論理セグメントは、同じ Tier-1 ルーターに属している必要があります。VIP とプールが異なる Tier-1 に接続されている場合、トラフィックは Tier-0 を通過し、NSX-T Edge を通過する場合があります(管理者が構成した NSX-T サービスによって異なる)。これにより、データ パスのパフォーマンスが低下するため、回避する必要があります。プール メンバーは、次の 2 つの方法で構成できます。
NSGroup:サーバを NSX-T Manager の NSGroup に追加でき、プール構成で同じサーバを選択できます。NSGroup が解決するすべての IP アドレスは、NSX Advanced Load Balancer にプール メンバーとして追加されます。また、NSX Advanced Load Balancer は NSGroup への変更をポーリングします(デフォルトは 5 分ごと)。NSGroup に動的メンバーシップがある場合、またはメンバーが手動で追加または削除された場合、NSX Advanced Load Balancer プールは最終的に新しいサーバ IP アドレスを同期します。
IP アドレス:IP アドレスの静的リストをプール メンバーとして指定できます。
セキュリティの自動化
SE および NSX Advanced Load Balancer Controller 管理 IP アドレスのための NSGroup の作成は、NSX-T Cloud によって自動化されます。
次の操作を手動で実行します。
SE NSGroup を除外リストに追加します。これは、SE 間トラフィックを許可するために必要であり、アプリケーション トラフィックの非対称ルーティングが発生した場合に、ステートフル DFW によるパケット ドロップを防止するために必要です。
SE NSGroup から NSX Advanced Load Balancer Controller NSGroup への管理トラフィックを許可するための DFW ポリシーを作成します。
注:SE は、Controller 管理 IP アドレスへの TCP 接続を開始します。
NSX Advanced Load Balancer で構成されたすべての仮想サービスについて、SE NSGroup からプールとして構成された NSGroup/IP グループへのトラフィックを許可する DFW ポリシーを作成します。
NSX-T Cloud Connector は、さまざまな NSX Advanced Load Balancer オブジェクトの NSGroup を作成して管理します。ただし、DFW ルールの作成は現在サポートされていません。仮想サービスの作成前に、サービス エンジン NSGroup を除外リストに追加します。
SE が除外リストにある場合、クライアントから VIP へのトラフィックに DFW を適用することはできません。これは、NSX Advanced Load Balancer の仮想サービスでネットワーク セキュリティ ポリシーを構成することで保護できます。NSX-T ゲートウェイ ファイアウォールが有効な場合は、外部クライアントから VIP トラフィックを許可するように、Edge ポリシーを手動で構成する必要があります。
仮想サービスでクライアント IP アドレスの保存が有効な場合、クライアント IP アドレスがサーバに送信されます。これは、次のことを意味します。
バックエンド プール接続用に構成された DFW ルールで、クライアント IP アドレスが DFW ルールを通過できるようにする必要があります。
健全性モニターは、SE インターフェイスからプールに送信されます。これは、DFW ルールでも許可する必要があります。
Tier-1 および Tier-0 の VIP のプロキシ ARP
NSX Advanced Load Balancer と NSX-T 3.1.0 統合では、NSX Advanced Load Balancer LB VIP の Tier-0 ゲートウェイと Tier-1 ゲートウェイの両方でプロキシ ARP 機能を使用できます。
次の使用事例を考えます。
Tier-0 ゲートウェイのプロキシ ARP:クライアントと VIP は同じセグメントにありますが、クライアントは Tier-0 を介して VIP に到達します。ARP または VIP のプロキシは、Tier-0 によって外部クライアントに対して実行されます。
(Tier-1 ゲートウェイのプロキシ ARP):クライアントがローカル(同じ Tier-1)の場合、Tier-1 は VIP のプロキシ ARP を実行します。SE と Tier-1 が接続されている場合、これらが応答します。
Tier-0 でプロキシ ARP を実行するには、Tier-1 の [すべてのロード バランサ VIP ルート] を有効にします。
NSX-T Manager から、
の順に移動します。Tier-Gateway を追加するか、既存のゲートウェイを編集します。
ルート アドバタイズで、[すべてのロード バランサ VIP ルート] を有効にします。
[保存] をクリックします。次の図から、2 つの異なるクラウドに作成された 2 つのプロキシ ARP 仮想サービスがあります。
これらの仮想サービスは次のとおりです。
ProxyVS1 では、クライアントと VIP が同じセグメントにあり、DataNIC は同じです (seg50a)。
proxyVS2 では、クライアントと VIP は同じセグメント (seg50a) にありますが、SE DataNIC は異なります (seg51a)。