ネステッド ESXi 環境を利用した NSX ラボを構築します。今回は、ネットワークや仮想スイッチまわりの準備について紹介します。
- ラボの概要: Step-01: はじめに
- 前回の投稿: Step-02: 物理 / ネストの外側での準備
今回の内容です。
- 1. 物理ネットワーク / NIC での準備
- 2. ネスト外側での仮想スイッチ構成
- 3. ネスト内側での仮想スイッチ構成
1. 物理ネットワーク / NIC での準備
まずは、物理ネットワーク ~ 物理 NIC での準備について説明します。下図赤枠のあたりです。
1-1. 物理ネットワークの準備について
ラボ環境では VLAN も利用するので、物理ネットワーク スイッチのポートでもトランクポートに設定して、対象の VLAN ID が通過できるようにしておく必要があります。
NSX ラボ環境のために、4つのネットワーク(VLAN)を用意してあります。
- 管理ネットワーク: 192.168.10.0/24 → VLAN 10
- Edge Uplink ネットワーク(NSX - 外部の境界): 192.168.120.0/24 → VLAN 120
- Host(ESXi)TEP ネットワーク: 192.168.121.0/24 → VLAN 121
- Edge TEP ネットワーク: 192.168.122.0/24 → VLAN 122
MTU は、オーバーレイ ネットワークを構成するためすこし大きめ(一般的な 1500 ではなく 1700 など)に設定する必要があり、物理スイッチでもそのサイズの MTU に設定しておく必要があります。
ちなみに、このラボのように、Host TEP と Edge TEP が別ネットワークになっている場合は、その間をルーティングするルータ(L3 スイッチ)のインターフェースも MTU を 1700 に設定します。
1-2. 物理 NIC の構成について
ネステッド ESXi にとっての物理 NIC は、ESXi VM の vNIC として作成することになります。そのため、ネスト外側の ESXi 側(物理マシン)では、物理 NIC が1ポートのみでも十分です。これは、私の自宅ラボ物理マシンに、物理 NIC ポートが1つしかないという事情もあります。
2. ネスト外側での仮想スイッチ構成
ネスト外側の ESXi での仮想スイッチ / ポートグループの構成については、標準仮想スイッチ(vSS)と分散仮想スイッチ(vDS)のどちらでも構いません。このラボでは vDS を利用します。
2-1. 仮想スイッチ - 物理 NIC の接続
この環境では、物理マシンによるネスト外側の ESXi では vDS を利用しています。
vDS には、物理マシンの物理 NIC が1ポートだけ接続してあります。物理 NIC ポートの名前は、通常は vmnic0 として認識されますが、USB NIC の場合は vusb0 です。
2-2. MTU 設定
NSX のオーバーレイ ネットワークを通すためには、仮想スイッチでは MTU を 1600 以上に拡張する必要があります。仮想スイッチでの MTU 設定は、仮想ポート単位ではなく、スイッチ全体での設定です。
NSX の一連のインストールの中で、デフォルトでは MTU が 1700 に設定されるようです。そこで、このラボでは基本的に MTU を 1700 にします。
vDS の設定は(ESXi ごとに設定する vSS とは異なり)、vDS の1箇所で MTU を変更すれば ESXi 全台に反映されます。
vDS の MTU は、下記のように vDS の「設定」→「プロパティ」画面で確認できます。
ちなみに、ネステッド ESXi 側でも MTU 1700 に設定しますが、ネスト外側の仮想スイッチや物理スイッチで、MTU をその値以上に拡張する必要はありません。
ネスト環境での仮想スイッチは、入れ子にしているというより、スイッチ同士を連結している構成となります。そこで、通常の物理ネットワーク スイッチを連結するときのように、(外側 ESXi でより大きな MTU にするというわけではなく)オーバーレイ ネットワークの経路上で MTU を揃えておきます。
2-3. ポートグループの VLAN ID 設定
NSX ラボとなるネスト内側でのネットワーク構成は、できるだけ、本来構成したいネットワーク(仮想スイッチ/ポートグループ/vNIC)と同じ設定にしたいと思います。そこでネスト環境ならではの工夫は、できるだけネスト外側に設定します。
ネスト環境での物理 ESXi の仮想スイッチでは、ポートグループで VLAN とセキュリティ ポリシーの設定に工夫が必要です。
物理 ESXi 側の仮想スイッチでは VLAN をそのまま通して、ネステッド ESXi 側の仮想スイッチで VLAN を終端させます。この設定は、物理 ESXi で vDS/vSS のどちらを利用しているかによって設定が異なります。
今回のラボでは vDS を利用しますが、vSS を利用している場合は、トランクポートの設定ができないので、VLAN ID として 4095 (すべての VLAN ID を通す特別な VLAN)を設定することで、VLAN をそのまま通過させてネステッド ESXi 側の仮想スイッチ(のポートグループ)で終端します。
vDS を利用している場合、トランクポートの設定ができるので、ネステッド ESXi で利用する VLAN ID の範囲を設定します。
逆に、vDS では VLAN ID 4095 が設定できないので、すべての VLAN ID を通す場合は「0-4094」「1-4094」「120-122」のように設定します。
2-4. ポートグループのセキュリティ ポリシー設定
ネステッド ESXi の環境では、ESXi VM 自身の vNIC(ネステッド ESXi での vmnic0 などにあたる)に設定される MAC アドレスと、ネステッド ESXi 上の vmk ポートや vNIC とで MAC アドレスとが、不一致になります。
そのため、物理 ESXi 側の仮想スイッチではセキュリティ設定を緩和(「承諾」に変更)しておく必要があります。必要な設定は、次の2つです。
- 無差別モード: 承諾
- 偽装転送: 承諾
この設定は、vDS / vSS どちらも共通で必要が、デフォルトのポリシーは異なります。 vDS のほうがセキュリティが厳しく、すべてのポリシーが「拒否」に設定されています。
なお、標準的にインストールした ESXi の vmk0 ポートは vmnic0 と MAC アドレスが一致するようになっており、この設定をしなくても、ネステッド ESXi の vmk0 だけは通信ができるはずです。
なお、vSphere 6.7 からは、無差別モードのかわりに MAC Learning Policy(MacLearningPolicy)を利用することもできるのですが、vSphere 8.0 以前では API での設定が必要です。このラボは vSphere 7.0 U3 なので、手軽に設定と確認ができる、無差別モードを利用しています。
ネスト外側の ESXi に直接搭載する VCSA や NSX Manager の VM については、とくにネスト環境を意識することなく、vNIC には普通に作成したポートグループを割り当てます。
3. ネスト内側での仮想スイッチ構成
ここからはネスト内側になる ESXi(VM にゲスト OS としてインストールした ESXi)の、仮想スイッチとポートグループの構成について説明します。
イメージ図の赤枠部分が対象です。
3-1. ESXi ホストの種類
このラボでは、ネステッド ESXi ホスト(ゲスト OS が ESXi の VM)を、便宜上、次の 2種類として用意します。
- NSX Edge 用 ESXi ホスト。オーバーレイ ネットワークへの入り口になる NSX Edge を搭載するホストで、このラボでは、vSphere クラスタ「lab-cluster-21」に追加します。
- コンピュート用 ESXi ホスト。ユーザ VM むけの オーバーレイ ネットワークを利用する ESXi ホストで、NSX における「ホスト トランスポート ノード」になる。このラボでは vSphere クラスタ「lab-cluster-22」に追加します。
この2種類のホストは 1台の ESXi ホストを兼用することもできますが、今回はネットワーク構成を理解しやすいように、あえて独立させました。
3-2. NSX Edge 用ホストの構成
この ESXi ホストでは、NSX Edge の仮想マシンを稼働させます。NSX Edge が NSX ネットワークの入り口やオーバーレイ ネットワークの終端(TEP)になりますが、ESXi 側での NSX のインストールは不要です。
ちなみに、この NSX ラボのネステッド ESXi には 物理 NIC として vmnic0 ~ vmnic3 の 4つが用意してあります。その実体は ESXi VM に作成された vNIC です。それぞれ 2ポートずつのチーミング構成で、仮想スイッチを作成します。ここでの vmnic のチーミングは、ポートグループのチーミング ポリシーによる、vSphere での一般的な設定によるものです。
NSX Edge の N-VDS 構成
NSX では、ESXi だけでなく、NSX Edge VM の内部にも NSX 仮想スイッチ(N-VDS)が構成されます。外部ネットワークと NSX ネットワークの境界になる、NSX Edge の(Tier-0 ゲートウェイの)アップリンク インターフェースも、NSX Edge VM 内部の N-VDS に接続されます。
また NSX Edge は、オーバーレイ ネットワークの終端にもなります。つまり NSX Edge VM 内部に、トンネルのエンドポイント(TEP)が作成されます。ESXi の TEP と Edge の TEP は VLAN での通信となりますが、そのトンネルの中を GENEVE によるオーバーレイ ネットワークが通過します。
NSX Edge では、VLAN とオーバーレイ ネットワークの両方で N-VDS を共用することも、それぞれ別の N-VDS を構成することもできます。今回は、あえてVLAN / オーバーレイで別の N-VDS を構成します。
NSX Edge の N-VDS では、Edge VM の vNIC を専有することになります。それにともない、VLAN / オーバーレイそれぞれにあわせた設定のポートグループも作成することになります。
vSS vSwitch0 の構成(vmnic0 / vmnic1)
標準仮想スイッチ(vSS)である vSwitch0 には、vmnic0 / vmnic1 を割り当て、次の通信で利用します。
- ESXi の vmk0 による管理通信
- NFS データストア接続、vMotion など、NSX の機能と直接関係しない通信
この仮想スイッチでは VLAN のみが通過する(つまりオーバーレイ ネットワークは通過しない)ため、MTU は 1500 のままで大丈夫です。
VLAN N-VDS では Edge VM の中で VLAN ID をうけるため、Edge VM での VLAN N-VDS の vNIC に接続するポートグループには、VLAN ID 4095(vDS であれば VLAN トランク)の設定をしておきます。
なお、vmnic1 については今後の検証で割り当てられるように用意してありますが、ラボ構築の時点では未使用です。
管理ネットワーク用のポートグループ: pg-mgmt
NSX Edge VM をデプロイする際に、1つめのネットワーク アダプタを接続する管理用のネットワークです。VLAN ID 10 を設定しただけの、普通のポートグループです。
vSS vSwitch1 の構成(vmnic2 / vmnic3)
vmnic1 と vmnic2 は、アクティブ/スタンバイの構成にして、vSS「vSwitch1」として利用します。これは、おもに次の通信で利用します。
- NSX Edge への入り口(アップリンク)となる VLAN
- NSX のオーバーレイ ネットワーク(TEP のネットワーク)
この仮想スイッチではオーバーレイ ネットワークが通るので、MTU は 1700 以上に拡張しておきます。
NSX Edge アップリンク(VLAN N-VDS)用のポートグループ: pg-edge-uplink
Edge VM 内部の N-VDS で TEP の VLAN が終端されます。そのため、その N-VDS にひもづく Edge VM 内のインターフェースか、vNIC のポートグループのどちらかで VLAN を終端する必要があります。
- パターンA: Edge VM 内のインターフェースで VLAN 終端するパターン
- NSX のアップリンク プロファイルで TEP の VLAN ID を指定。
- ポートグループは VLAN トランクを設定。
- VLAN / オーバーレイで N-VDS を共用する場合はこちらになる。
- パターンB: vNIC のポートグループで VLAN を終端パターン
- NSX のアップリンク プロファイルで TEP の VLAN ID を空欄のままに。
- ポートグループは VLAN ID を設定。
今回は、ポートグループ(pg-edge-uplink)側で VLAN ID を設定してみます。(上記のパターンB)
NSX Edge TEP(オーバーレイ N-VDS)用のポートグループ: pg-edge-tep
NSX Edge のアップリンクには複数のインターフェースや VLAN を設定することになるため、その N-VDS にひもづく vNIC には、以下の設定をしたポートグループを割り当てます。
- vDS であれば VLAN トランク。今回は vSS なので VLAN 4095。
- セキュリティ ポリシーの「無差別モード」と「偽装転送」を承諾。
NSX Edge 用 ESXi ホストに、vSS vSwitch0 と vSwitch1 が作成されている様子です。
3-3. コンピュート用 ESXi ホストの構成
NSX によるオーバーレイ ネットワークを利用する ESXi ホストには、NSX のモジュールをインストールします。そして、vDS に NSX の機能が統合されます。
ちなみに以前の NSX-T 2.x までは、ESXi でも NSX-T 独自の仮想スイッチ(N-VDS)が vDS / vSS とは別に作成されましたが、現在ではもう利用されません。
ESXi ホスト同士や NSX Edge とのオーバーレイ ネットワークは、トンネル エンド ポイント(TEP)同士での通信になります。
コンピュート用 ESXi ホストでも、Edge 用 ESXi ホストと同様に物理 NIC を 4ポート(vmnic0 ~ vmnic3)用意してあり、仮想スイッチごとに 2ポートずつ利用できるようにしてあります。
vSS vSwitch0 の構成(vmnic0 / vmnic1)
標準仮想スイッチ(vSS)である vSwitch0 には、vmnic0 / vmnic1 を割り当て、次の通信で利用しています。これは Edge 用ホストと同様の構成です。
- ESXi の vmk0 による管理通信
- NFS データストア接続、vMotion など、NSX の機能と直接関係しない通信
この 物理 NIC に構成される仮想スイッチには VLAN だけが通る(オーバーレイ ネットワークは通らない)ので、MTU は 1500 のままでも大丈夫です。
vmnic1 については、今後の検証で割り当てられるように用意してありますが、ラボ構築の時点では未使用です。
vDS の構成(vmnic2 / vmnic3)
vmnic1 と vmnic2 は、アクティブ/スタンバイの構成にして、vDS にて利用します。これは、おもに次の通信で利用します。
- NSX のオーバーレイ ネットワーク
vDS は、バージョン 8.0 で作成します。そして、オーバーレイ ネットワークが通るので、MTU は 1700 などに設定します。
物理 NIC である vmnic2 と vmnic3 は vDS のアップリンクに割り当てますが、チーミング ポリシーは、ポートグループではなく NSX の「アップリンク プロファイル」で設定します。(のちほど、NSX Manager での設定で)アップリンク プロファイルでは、下記のような設定をすることになります。
- 物理 NIC のチーミング ポリシー
- オーバーレイ TEP の VLAN ID 設定
コンピュート用 ESXi ホストに、vDS と vSS vSwitch0 が作成されている様子です。
3-4. ネスト内側の仮想スイッチでのチーミング ポリシーについて
このラボでは、ネステッド ESXi の仮想スイッチには物理 NIC ポートを 2つずつ割り当てられるようにして、冗長化している雰囲気を出しています。vmnic0 と vmnic1、vmnic2 と vmnic3 をチームにする想定です。
ただ、実際の物理ホストは 1つしか NIC ポートがないので、これは冗長化が目的ではなく「見た目の確認」的な意味合いで設定しています。
この構成ではアクティブ / アクティブ構成にすると問題が発生しやすいので、基本的には アクティブ / スタンバイ構成にしておきます。
つづく。