vm.gowatana.jp

NEOにほんごVMware(仮)

自宅ラボ NSX-T 3.1 の構築。Step-03: 仮想スイッチの構成

NSX-T のネステッド ESXi 環境を利用したラボを構築してみます。

今回は、ネットワークや仮想スイッチまわりの準備について紹介します。

前回の投稿はこちら。

今回の内容です。

ネストの外側の仮想スイッチ構成

まずは、物理ネットワーク ~ 物理 NIC、物理 ESXi での仮想スイッチ/ポートグループの構成について説明します。

この投稿の前半は、次のイメージ図での赤枠の部分が説明対象です。

f:id:gowatana:20210128025543p:plain

物理ネットワークの準備について

ラボ環境では VLAN も利用するので、物理ネットワーク スイッチのポートでもトランクポートに設定して対象の VLAN ID が通過できるようにしておく必要があります。ただ、一般家庭で利用しているようなスイッチング ハブであれば、デフォルトで通るかなとは思います。

MTU は、オーバーレイ ネットワークを構成するためすこし大きめ(一般的な 1500 ではなく 1600 など)に設定する必要があり、物理スイッチがでもそのサイズの MTU に対応しておく必要があります。ちなみに、これも一般家庭で利用しているようなスイッチング ハブであれば、デフォルトで満たしているはずです。

なお、物理 ESXi での MTU は、個々の物理 NIC ポートに対して設定するわけでなはく、仮想スイッチで設定することになります。

物理 NIC の構成について

今回のラボで NSX-T をインストールするホストはネステッド ESXi なので、ネステッド ESXi にとっての物理 NIC は、ESXi VM の vNIC として作成することになります。そのため、物理 ESXi 側では、物理 NIC が1つだけでも十分です。(私の自宅ラボ物理マシンに搭載された物理 NIC ポートが1つだけという事情もあります。)

そこで、それぞれの物理 ESXi では、1つの 1Gbps の物理 NIC(vmnic0)だけ利用しています。

f:id:gowatana:20210127234749p:plain

仮想スイッチの構成

物理 ESXi での仮想スイッチは、標準仮想スイッチ(vSS)/分散仮想スイッチ(vDS)のどちらでも構いません。

私のラボでは、物理 ESXi 6 台でのクラスタで vDS を利用しています。

さきほどは ESXi から仮想スイッチ構成を確認したスクリーンショットを掲載しましたが、ネットワーク インベントリから確認すると、vDS のアップリンクとして各 ESXi の 物理 NIC「vmnic0」だけが接続されていることが分かります。

f:id:gowatana:20210127235058p:plain

MTU 設定

NSX-T のオーバーレイ ネットワークを通すために、仮想スイッチでは MTU を 1600 に拡張してあります。仮想スイッチでの MTU 設定は、仮想ポート単位ではなく、スイッチ全体での設定です。

vDS の設定の場合は(ESXi ごとに設定する vSS:標準仮想スイッチ の場合とは異なり)、vDS で 1回 MTU の設定を変更すれば、すべての ESXi に反映されます。

vDS の MTU は、下記のように vDS の「設定」→「プロパティ」画面で確認できます。

f:id:gowatana:20210127235716p:plain

ちなみに、ネステッド ESXi 側でも MTU 1600 に設定する部分がありますが、物理 ESXi 側でその値以上に MTU を拡張する必要はありません。

ネスト環境での仮想スイッチは、ネスト(入れ子)にしているというより、連結している構成となるので、通常の物理ネットワーク スイッチを連結するときのように、(外側 ESXi でより大きな MTU にするというわけではなく)経路での MTU を揃えておきます。

ポートグループの VLAN ID 設定

NSX-T ラボとなるネスト内側でのネットワーク構成は、できるだけ、本来構成したいネットワーク(仮想スイッチ/ポートグループ/vNIC)と同じ設定にしたいと思います。そこでネスト環境ならではの工夫は、できるだけネスト外側に設定します。ネスト環境での物理 ESXi の仮想スイッチでは、ポートグループで VLAN とセキュリティ ポリシーの設定に工夫が必要です。

物理 ESXi 側の仮想スイッチでは VLAN をそのまま通して、ネステッド ESXi 側の仮想スイッチで VLAN を終端させます。この設定は、物理 ESXi で vDS/vSS のどちらを利用しているかによって設定が異なります。

(今回のラボでは vDS を利用しますが、)vSS を利用している場合は、トランクポートの設定ができないので、VLAN ID として 4095 (すべての VLAN ID を通す特別な VLAN)を設定することで、VLAN をそのまま通過させてネステッド ESXi 側の仮想スイッチ(のポートグループ)で終端します。

f:id:gowatana:20210128000724p:plain

vDS を利用している場合、トランクポートの設定ができるので、ネステッド ESXi で利用する VLAN ID の範囲を設定します。

逆に、vDS では VLAN ID 4095 が設定できないので、すべての VLAN ID を通す場合は「0-4094」や 「1-4094」のように設定します。

f:id:gowatana:20210128001155p:plain

ポートグループのセキュリティ ポリシー設定

ネステッド 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)を利用することもできるのですが、API での設定が必要です。このラボでは手軽に設定と確認ができる、無差別モードを利用しています。

f:id:gowatana:20210128001704p:plain

物理 ESXi に直接搭載する VCSA や NSX Manager の VM については、とくにネスト環境を意識することなく、vNIC には普通に作成したポートグループを割り当てます。

ネストの内側の仮想スイッチ構成

ここからはネスト内側になる ESXi(VM にゲスト OS としてインストールした ESXi)の、仮想スイッチとポートグループの構成について説明します。

ここからの後半の説明では、次のイメージ図のうち赤枠の部分が対象です。

f:id:gowatana:20210128025607p:plain

このラボでは、ネステッド ESXi ホスト(ゲスト OS が ESXi の VM)を、便宜上、次の 2種類として用意します。

  • NSX Edge 用 ESXi ホスト。オーバーレイ ネットワークへの入り口になる NSX Edge を搭載するホストで、このラボでは vSphere クラスタ「nsx-cluster-01」に追加。
  • コンピュート用 ESXi ホスト。一般の VM むけの オーバーレイ ネットワークを利用する ESXi ホストで、NSX における「ホスト トランスポート ノード」になる。このラボでは vSphere クラスタの「nsx-cluster-02」に追加。

この2種類のホストは 1台の ESXi ホストを兼用することもできますが、今回はネットワーク構成を理解しやすいように、あえて独立させました。

ちなみに「ネストの内側の」とは表現しているものの、物理マシンに NSX-T 環境を用意するときも同様の発想でいけるかなと思います。

NSX Edge 用ホストの構成

NSX-T によるオーバーレイ ネットワークへの入り口となる ESXi ホストでは、NSX Edge の VM を稼働させます。このホストは NSX-T のオーバーレイ ネットワークの入り口となりますが、その役割は NSX Edge VM がもつため、ESXi では特に NSX ならではの仮想スイッチやオーバーレイ ネットワークの構成が必要ではありません。

ちなみに、この NSX-T ラボのネステッド ESXi には 物理 NIC として vmnic0 ~ vmnic3 の 4つが用意してあります。その実体は ESXi VM に作成された vNIC です。それぞれ 2ポートずつのチーミング構成で、仮想スイッチを作成します。ここでの vmnic のチーミングは、ポートグループのチーミング ポリシーによる、vSphere での一般的な設定によるものです。

vSS vSwitch0 の構成(vmnic0 / vmnic1)

標準仮想スイッチ(vSS)である vSwitch0 には、vmnic0 / vmnic1 を割り当て、次の通信で利用しています。

  • ESXi の vmk0 による管理通信
  • NFS データストア接続、vMotion など、NSX の機能と直接関係しない通信

この 物理 NIC に構成される仮想スイッチには VLAN だけが通る(オーバーレイ ネットワークは通らない)ので、MTU は 1500 のままでも大丈夫です。

VLAN N-VDS では Edge VM の中で VLAN ID をうけるため、Edge VM での VLAN N-VDS の vNIC に接続するポートグループは、前回の投稿にあるような VLAN ID 4095(vDS であれば VLAN トランク)の設定をしておきます。

vSS vSwitch1 の構成(vmnic2 / vmnic3)

vmnic1 と vmnic2 は、アクティブ/スタンバイの構成にして、vSS「vSwitch1」として利用します。これは、おもに次の通信で利用します。

  • NSX Edge への入り口(アップリンク)となる VLAN。
  • NSX のオーバーレイ ネットワーク。

NSX では、ESXi だけでなく、NSX Edge VM の内部にも、NSX の仮想スイッチ(N-VDS)が構成されます。

外部ネットワークと NSX ネットワークの境界になる、NSX Edge の(Tier-0 ゲートウェイの)アップリンク インターフェースは、NSX-T による仮想スイッチに接続されます。

また、このホストでは NSX Edge がオーバーレイ ネットワークの終端となります。つまり NSX Edge VM 内部に、トンネルのエンドポイント(TEP)が作成されます。ESXi の TEP と Edge の TEP は、おたがい VLAN での通信となりますが、そのトンネルの中を GENEVE によるオーバーレイ ネットワークが通ります。

この仮想スイッチではオーバーレイ ネットワークが通るので、MTU は 1600 以上に拡張しておきます。

Edge VM 内部 N-VDS で TEP の VLAN が終端されるため、Edge VM 内部の N-VDS にひもづく vNIC には、物理ホスト側の仮想スイッチ / ポートグループと同様に、次の設定をしたポートグループを割り当てます。

  • VLAN ID 4095(vDS であれば VLAN トランク)。
  • セキュリティ ポリシー「無差別モード」「偽装転送」を承諾。

NSX Edge 用 ESXi ホストに、vSS vSwitch0 と vSwitch1 が作成されている様子です。

f:id:gowatana:20210128024615p:plain

コンピュート用 ESXi ホストの構成

NSX-T によるオーバーレイ ネットワークを VM が利用する ESXi ホストでは、vDS に NSX の仮想スイッチの機能が統合されます。ちなみに以前の NSX-T 2.x までは、ESXi でも NSX-T 独自の仮想スイッチ(N-VDS)が vDS / vSS とは別に作成されましたが、今後は廃止されるようです。

オーバーレイ ネットワークの ESXi ホスト同士や NSX Edge との通信については、トンネルのエンドポイント(TEP。ESXi では )同士で通信をすることになります。

前述の Edge 用 ESXi ホストと同様に、物理 NIC は 4つ(vmnic0 ~ vmnic3)用意してあります。 

vSS vSwitch0 の構成(vmnic0 / vmnic1)

標準仮想スイッチ(vSS)である vSwitch0 には、vmnic0 / vmnic1 を割り当て、次の通信で利用しています。これは Edge 用ホストと同様の構成です。

  • ESXi の vmk0 による管理通信
  • NFS データストア接続、vMotion など、NSX の機能と直接関係しない通信

この 物理 NIC に構成される仮想スイッチには VLAN だけが通る(オーバーレイ ネットワークは通らない)ので、MTU は 1500 のままでも大丈夫です。

vDS の構成(vmnic2 / vmnic3)

vmnic1 と vmnic2 は、アクティブ/スタンバイの構成にして、vDS にて利用します。これは、おもに次の通信で利用します。

  • NSX のオーバーレイ ネットワーク。

vDS は、バージョン 7.0 で作成します。そして、オーバーレイ ネットワークが通るので、vDS の MTU は 1600 などに設定します。

f:id:gowatana:20210128021007p:plain

物理 NIC である vmnic2 と vmnic3 は vDS のアップリンクに割り当てますが、チーミング ポリシーは、ポートグループではなく NSX-T の「アップリンク プロファイル」で設定します。(のちほど、NSX Manager での設定で)アップリンク プロファイルでは、下記のような設定をすることになります。

  • 物理 NIC のチーミング ポリシー。
  • オーバーレイ TEP の VLAN ID 設定。 

コンピュート用 ESXi ホストに、vDS と vSS vSwitch0 が作成されている様子です。

f:id:gowatana:20210128025034p:plain

ネスト内側の仮想スイッチでのチーミング ポリシーについて

このラボでは、ネステッド ESXi の仮想スイッチには物理 NIC ポートを 2つずつ割り当てて、冗長化している雰囲気を出しています。vmnic0 と vmnic1、vmnic2 と vmnic3 をチームにしています。

ただ、実際の物理ホストは 1つしか NIC ポートがないので、これは冗長化が目的ではなく「見た目の確認」的な意味合いで設定しています。

この構成ではアクティブ / アクティブ構成にすると問題が発生しやすいので、基本的には アクティブ / スタンバイ構成にしておきます。

つづく・・・

自宅ラボ NSX-T 3.1 の構築。Step-04: NSX Manager のデプロイ - vm.gowatana.jp