ホストの分散論理ルーター (DLR) カーネル モジュールは、VXLAN ネットワーク間、および仮想ネットワークと物理ネットワーク間のルーティングを実行します。NSX Edge アプライアンス は、必要に応じて動的ルーティング機能を提供します。分散論理ルーターは、Cross-vCenter NSX 環境内のプライマリとセカンダリの NSX Manager に作成できますが、ユニバーサル分散論理ルーターはプライマリ NSX Manager にのみ作成できます。
- NSX Data Center for vSphere 6.2 以降では、分散論理ルーターでルーティングされる論理インターフェイス (LIF) を VLAN にブリッジされている VXLAN に接続できます。
- 分散論理ルーター インターフェイスおよびブリッジ インターフェイスは、VLAN ID が 0 に設定されている dvPortgroup には接続できません。
- 特定の分散論理ルーター インスタンスは、異なるトランスポート ゾーンに存在する論理スイッチには接続できません。これにより、すべての論理スイッチと分散論理ルーター インスタンスの整合性が確保されます。
- 分散論理ルーターが複数の vSphere Distributed Switch (VDS) にまたがる論理スイッチに接続されている場合、その分散論理ルーターを VLAN がバッキングするポートグループに接続することはできません。これにより、ホスト間で分散論理ルーター インスタンスが論理スイッチ dvPortgroup に正しく関連付けられるようになります。
- 2 つのネットワークが同じ vSphere Distributed Switch 内にある場合は、2 つの異なる分散ポート グループ (dvPortgroup) 上に同じ VLAN ID の分散論理ルーター インターフェイスを作成しないでください。
- 2 つのネットワークが別々の vSphere Distributed Switch 内にあっても、それらの vSphere Distributed Switch が同じホストを共有している場合は、2 つの異なる dvPortgroup 上に同じ VLAN ID の分散論理ルーター インターフェイスを作成しないでください。言い換えると、2 つの dvPortgroup が 2 つの異なる vSphere Distributed Switch 内にあっても、それらの vSphere Distributed Switch がホストを共有していなければ、2 つの異なるネットワーク上に同じ VLAN ID の分散論理ルーター インターフェイスを作成できます。
- VXLAN が設定されている場合、分散論理ルーター インターフェイスは、VXLAN が設定されている vSphere Distributed Switch の分散ポート グループに接続されている必要があります。他の vSphere Distributed Switch のポート グループには、分散論理ルーター インターフェイスを接続しないでください。
- 動的ルーティング プロトコル(BGP と OSPF)は、アップリンク インターフェイスでのみサポートされます。
- ファイアウォール ルールはアップリンク インターフェイスでのみ適用可能であり、対象は Edge 仮想アプライアンスに送信される制御トラフィックと管理トラフィックに限定されます。
- 分散論理ルーターの管理インターフェイスの詳細については、ナレッジベースの記事「Management Interface Guide: DLR Control VM - NSX」(http://kb.vmware.com/kb/2122060) を参照してください。
Cross-vCenter NSX 環境の NSX Edge で高可用性を有効にするには、アクティブとスタンバイの両方の NSX Edge アプライアンス が同じ vCenter Server 内に配置されている必要があります。NSX Edge 高可用性 (HA) ペアのいずれかのアプライアンスを別の vCenter Server に移行すると、高可用性の 2 台のアプライアンスがペアとして動作しなくなり、トラフィックの中断が発生する可能性があります。
前提条件
- Enterprise Administrator または NSX Administrator のロールが割り当てられている必要があります。
- 論理スイッチを作成する予定がない場合でも、ローカル セグメント ID プールを作成する必要があります。
- 分散論理ルーターを作成または変更する前に、コントローラ クラスタが稼動していて、使用可能であることを確認してください。分散論理ルーターは、NSX Controller を利用しないとホストにルーティング情報を配布できません。分散論理ルーターは、Edge Services Gateway (ESG) とは異なり、NSX Controller がなければ機能しません。
- 分散論理ルーターを VLAN dvPortgroup に接続する場合、分散論理ルーター アプライアンスがインストールされているすべてのハイパーバイザー ホストが UDP ポート 6999 で相互にアクセスできることを確認します。分散論理ルーターの VLAN ベース ARP プロキシを機能させるには、このポートで通信を行う必要があります。
- 分散論理ルーター アプライアンスの展開先を決めます。
- 宛先のホストが、新しい分散論理ルーターのインターフェイスに接続されている論理スイッチと同じトランスポート ゾーンに属している必要があります。
- ECMP セットアップで ESG を使用している場合は、そのアップストリーム ESG のいずれかと同じホストに配置しないようにしてください。これには DRS 非アフィニティ ルールを使用できます。分散論理ルーター転送時のホスト障害の影響を軽減することが可能です。1 つのアップストリーム ESG を単独で使用する場合、またはその ESG が高可用性モードの場合は、このガイドラインは適用されません。詳細については、https://communities.vmware.com/docs/DOC-27683にある『NSX Network Virtualization Design Guide 』を参照してください。
- 分散論理ルーター アプライアンスをインストールするホスト クラスタが NSX Data Center for vSphere 用に準備されていることを確認します。『NSX インストール ガイド』の「NSX 用ホスト クラスタの準備」を参照してください。
-
変更を加える適切な NSX Manager を決定します。
- スタンドアロン環境や単一の vCenter Server NSX の環境では、NSX Manager は 1 つしか存在しないため、NSX Manager を選択する必要はありません。
- ユニバーサル オブジェクトはプライマリ NSX Manager から管理する必要があります。
- NSX Manager に対してローカルなオブジェクトは、NSX Manager から管理する必要があります。
- 拡張リンク モードが有効になっていない Cross-vCenter NSX 環境で設定の変更を行うには、変更する NSX Manager にリンクされた vCenter Server から変更を行う必要があります。
- 拡張リンク モードの Cross-vCenter NSX 環境では、リンクされた任意の vCenter Server から、任意の NSX Manager の設定を変更できます。NSX Manager ドロップダウン メニューから、適切な NSX Manager を選択します。
- 追加する分散論理ルーターの種類を決定します。
- 論理スイッチを接続するには、分散論理ルーターを追加します。
- ユニバーサル論理スイッチを接続するには、ユニバーサル分散論理ルーターを追加します。
- ユニバーサル分散論理ルーターを追加する場合、Local Egress(ローカル出力方向)を有効にする必要があるかどうかを判断します。Local Egress を有効にすると、ルートをホストに選択的に送信できます。NSX デプロイが複数のサイトにまたがる場合は、この機能が必要になることがあります。詳細についてはCross-vCenter NSX トポロジを参照してください。ユニバーサル分散論理ルーターの作成後に Local Egress を有効にはできません。
手順
結果
次の例のトポロジでは、app 仮想マシンのデフォルト ゲートウェイが 172.16.20.1、web 仮想マシンのデフォルト ゲートウェイが 172.16.10.1 となります。仮想マシンがそのデフォルト ゲートウェイに ping を送信でき、仮想マシン同士でも ping を送信できることを確認します。
-
すべての分散論理ルーター インスタンス情報をリストします。
nsxmgr-l-01a> show logical-router list all Edge-id Vdr Name Vdr id #Lifs edge-1 default+edge-1 0x00001388 3
-
コントローラ クラスタから分散論理ルーターのルーティング情報を受信したホストをリストします。
nsxmgr-l-01a> show logical-router list dlr edge-1 host ID HostName host-25 192.168.210.52 host-26 192.168.210.53 host-24 192.168.110.53
出力には、指定した分散論理ルーター(この例では edge-1)に接続されている論理スイッチが属するトランスポート ゾーンのメンバーとして設定されているすべてのホスト クラスタのホストがすべて表示されます。
-
分散論理ルーターからホストに通知されるルーティング テーブル情報をリストします。ルーティング テーブル エントリはすべてのホストで一致している必要があります。
nsx-mgr-l-01a> show logical-router host host-25 dlr edge-1 route VDR default+edge-1 Route Table Legend: [U: Up], [G: Gateway], [C: Connected], [I: Interface] Legend: [H: Host], [F: Soft Flush] [!: Reject] [E: ECMP] Destination GenMask Gateway Flags Ref Origin UpTime Interface ----------- ------- ------- ----- --- ------ ------ --------- 0.0.0.0 0.0.0.0 192.168.10.1 UG 1 AUTO 4101 138800000002 172.16.10.0 255.255.255.0 0.0.0.0 UCI 1 MANUAL 10195 13880000000b 172.16.20.0 255.255.255.0 0.0.0.0 UCI 1 MANUAL 10196 13880000000a 192.168.10.0 255.255.255.248 0.0.0.0 UCI 1 MANUAL 10196 138800000002 192.168.100.0 255.255.255.0 192.168.10.1 UG 1 AUTO 3802 138800000002
-
いずれかのホストに基づいて、ルーターに関する追加情報をリストします。この出力は、ホストと通信しているコントローラを把握するのに便利です。
nsx-mgr-l-01a> show logical-router host host-25 dlr edge-1 verbose VDR Instance Information : --------------------------- Vdr Name: default+edge-1 Vdr Id: 0x00001388 Number of Lifs: 3 Number of Routes: 5 State: Enabled Controller IP: 192.168.110.203 Control Plane IP: 192.168.210.52 Control Plane Active: Yes Num unique nexthops: 1 Generation Number: 0 Edge Active: No
show logical-router host host-25 dlr edge-1 verbose コマンドの出力で [コントローラ IP アドレス] フィールドを確認します。
-
192.168.110.202 # show control-cluster logical-switches vni 5000 VNI Controller BUM-Replication ARP-Proxy Connections 5000 192.168.110.201 Enabled Enabled 0
VNI 5000 の出力では、接続がゼロであることが示され、VNI 5000 の所有者としてコントローラ 192.168.110.201 がリストされます。そのコントローラにログインして、VNI 5000 の詳細情報を収集します。192.168.110.201 # show control-cluster logical-switches vni 5000 VNI Controller BUM-Replication ARP-Proxy Connections 5000 192.168.110.201 Enabled Enabled 3
192.168.110.201 の出力は、接続数が 3 つであることを示しています。他の VNI を確認します。192.168.110.201 # show control-cluster logical-switches vni 5001 VNI Controller BUM-Replication ARP-Proxy Connections 5001 192.168.110.201 Enabled Enabled 3
192.168.110.201 # show control-cluster logical-switches vni 5002 VNI Controller BUM-Replication ARP-Proxy Connections 5002 192.168.110.201 Enabled Enabled 3
192.168.110.201 が 3 つの VNI 接続を所有しているため、もう一方のコントローラ 192.168.110.203 の接続数はゼロであると予想されます。192.168.110.203 # show control-cluster logical-switches vni 5000 VNI Controller BUM-Replication ARP-Proxy Connections 5000 192.168.110.201 Enabled Enabled 0
- MAC テーブルと ARP テーブルを確認する前に、一方の仮想マシンからもう一方の仮想マシンに ping を送信します。
app 仮想マシンから Web 仮想マシン:
vmware@app-vm$ ping 172.16.10.10 PING 172.16.10.10 (172.16.10.10) 56(84) bytes of data. 64 bytes from 172.16.10.10: icmp_req=1 ttl=64 time=2.605 ms 64 bytes from 172.16.10.10: icmp_req=2 ttl=64 time=1.490 ms 64 bytes from 172.16.10.10: icmp_req=3 ttl=64 time=2.422 ms
MAC テーブルを確認します。192.168.110.201 # show control-cluster logical-switches mac-table 5000 VNI MAC VTEP-IP Connection-ID 5000 00:50:56:a6:23:ae 192.168.250.52 7
192.168.110.201 # show control-cluster logical-switches mac-table 5001 VNI MAC VTEP-IP Connection-ID 5001 00:50:56:a6:8d:72 192.168.250.51 23
ARP テーブルを確認します。192.168.110.201 # show control-cluster logical-switches arp-table 5000 VNI IP MAC Connection-ID 5000 172.16.20.10 00:50:56:a6:23:ae 7
192.168.110.201 # show control-cluster logical-switches arp-table 5001 VNI IP MAC Connection-ID 5001 172.16.10.10 00:50:56:a6:8d:72 23
分散論理ルーター情報を確認します。各分散論理ルーター インスタンスは、いずれかのコントローラ ノードによって提供されます。
show control-cluster logical-routers コマンドの instance サブコマンドを実行すると、このコントローラに接続されている分散論理ルーターのリストが表示されます。
interface-summary サブコマンドでは、コントローラが NSX Manager から学習した LIF が表示されます。この情報は、トランスポート ゾーンで管理されているホスト クラスタ内のホストに送信されます。
-
このコントローラに接続しているすべての分散論理ルーターを一覧表示します。
controller # show control-cluster logical-routers instance all LR-Id LR-Name Universal Service-Controller Egress-Locale 0x1388 default+edge-1 false 192.168.110.201 local
LR-Id を書き留め、次のコマンドで使用します。
-
controller # show control-cluster logical-routers interface-summary 0x1388 Interface Type Id IP[] 13880000000b vxlan 0x1389 172.16.10.1/24 13880000000a vxlan 0x1388 172.16.20.1/24 138800000002 vxlan 0x138a 192.168.10.2/29
-
controller # show control-cluster logical-routers routes 0x1388 Destination Next-Hop[] Preference Locale-Id Source 192.168.100.0/24 192.168.10.1 110 00000000-0000-0000-0000-000000000000 CONTROL_VM 0.0.0.0/0 192.168.10.1 0 00000000-0000-0000-0000-000000000000 CONTROL_VM
[root@comp02a:~] esxcfg-route -l VMkernel Routes: Network Netmask Gateway Interface 10.20.20.0 255.255.255.0 Local Subnet vmk1 192.168.210.0 255.255.255.0 Local Subnet vmk0 default 0.0.0.0 192.168.210.1 vmk0
- コントローラから特定の VNI への接続を表示します。
192.168.110.203 # show control-cluster logical-switches connection-table 5000 Host-IP Port ID 192.168.110.53 26167 4 192.168.210.52 27645 5 192.168.210.53 40895 6
192.168.110.202 # show control-cluster logical-switches connection-table 5001 Host-IP Port ID 192.168.110.53 26167 4 192.168.210.52 27645 5 192.168.210.53 40895 6
これらのホスト IP アドレスは vmk0 インターフェイスです。VTEP ではありません。ESXi ホストとコントローラの間の接続は、管理ネットワーク上で作成されます。ここに示すポート番号は、ホストがコントローラとの接続を確立するときに ESXi ホスト IP スタックによって割り当てられる短期 TCP ポートです。
-
ホスト上では、このポート番号と一致するコントローラ ネットワーク接続が表示されます。
[[email protected]:~] #esxcli network ip connection list | grep 26167 tcp 0 0 192.168.110.53:26167 192.168.110.101:1234 ESTABLISHED 96416 newreno netcpa-worker
-
ホスト上のアクティブな VNI を表示します。ホスト間での出力の違いを確認してください。すべての VNI がすべてのホストでアクティブになるわけではありません。論理スイッチに接続されている仮想マシンがホストにある場合、そのホストの VNI がアクティブになります。
[[email protected]:~] # esxcli network vswitch dvs vmware vxlan network list --vds-name Compute_VDS VXLAN ID Multicast IP Control Plane Controller Connection Port Count MAC Entry Count ARP Entry Count VTEP Count -------- ------------------------- ----------------------------------- --------------------- ---------- --------------- --------------- ---------- 5000 N/A (headend replication) Enabled (multicast proxy,ARP proxy) 192.168.110.203 (up) 1 0 0 0 5001 N/A (headend replication) Enabled (multicast proxy,ARP proxy) 192.168.110.202 (up) 1 0 0 0
注: vSphere 6.0 以降で VXLAN 名前空間を有効にするには、 /etc/init.d/hostd restart コマンドを実行します。ハイブリッドまたはユニキャスト モードの論理スイッチの場合、esxcli network vswitch dvs vmware vxlan network list --vds-name <vds-name> コマンドの出力は次のようになります。
- [Control Plance(制御プレーン)] が有効になっていることが示されます。
- マルチキャスト プロキシおよび ARP プロキシがリストされます。AARP プロキシは、IP アドレス検出が無効になっていてもリストされます。
- 有効なコントローラ IP アドレスのリストと、接続可能であることが示されます。
- 分散論理ルーターが ESXi ホストに接続されている場合は、[Port Count(ポート カウント)] が 1 以上になります。これは、論理スイッチに接続されたホストに仮想マシンがない場合も同様です。この 1 つのポートは vdrPort で、ESXi ホストの分散論理ルーターのカーネル モジュールに接続されている特殊な dvPort です。
-
まず、仮想マシンから別のサブネット上の仮想マシンに ping を送信し、MAC テーブルを表示します。[Inner MAC(内側の MAC)] は仮想マシン エントリであり、[Outer MAC(外側の MAC)] と [Outer IP(外側の IP)] は VTEP を指していることに注意してください。
~ # esxcli network vswitch dvs vmware vxlan network mac list --vds-name=Compute_VDS --vxlan-id=5000 Inner MAC Outer MAC Outer IP Flags ----------------- ----------------- -------------- -------- 00:50:56:a6:23:ae 00:50:56:6a:65:c2 192.168.250.52 00000111
~ # esxcli network vswitch dvs vmware vxlan network mac list --vds-name=Compute_VDS --vxlan-id=5001 Inner MAC Outer MAC Outer IP Flags ----------------- ----------------- -------------- -------- 02:50:56:56:44:52 00:50:56:6a:65:c2 192.168.250.52 00000101 00:50:56:f0:d7:e4 00:50:56:6a:65:c2 192.168.250.52 00000111
次のタスク
NSX Edge アプライアンス をインストールすると、vSphere HA がクラスタ上で無効になっている場合は、NSX がホスト上の仮想マシンの自動起動/シャットダウンを有効にします。その後、アプライアンス仮想マシンをクラスタ内の別のホストに移行すると、新しいホストでは、仮想マシンの自動起動/シャットダウンが有効にならない場合があります。そのため、vSphere HA が無効になっているクラスタに NSX Edge アプライアンスをインストールする場合は、クラスタ内のすべてのホストをチェックして、仮想マシンの自動起動/シャットダウンが有効になっていることを確認する必要があります。詳細については、『vSphere 仮想マシン管理』の「仮想マシンの起動およびシャットダウン設定の編集」を参照してください。
分散論理ルーターを展開した後、分散論理ルーター ID をダブルクリックして、インターフェイス、ルーティング、ファイアウォール、ブリッジ、DHCP リレーなどを設定します。