Nexus1000V VXLAN 設定例
VXLAN とは
2012年8月、米 Cisco、VMware、Citrix、Red Hat、Arista などにより、IETF へドラフトが提出された新たな論理ネットワークに関する規格です。VXLAN の特徴は下記のとおりです。
VXLAN の特徴
- L3 ネットワーク上にオーバーレイする仮想 L2 ネットワーク
- 仮想マシンからの L2 フレームを、仮想イーサネットモジュール(VEM)でカプセリング
- カプセリングのオーバーヘッドは 50byte
- VXALN セグメントは 50byte の内 24bit のセグメント ID(VNI)で識別*1
- VXLAN トンネルを終端するポイント*2は、ハイパーバイザー上 or 物理ネットワーク装置に実装
- L2 ブロードキャスト/マルチ キャスト/Unknown unicast には、 IP マルチキャストを利用
- VXLAN セグメント毎にマルチキャストグループを構成
- 仮想マシンと VNI、マルチキャストグループへの関連付けを実施
- 仮想マシンが配下にいなければ、該当 VNI のマルチキャストグループから脱退
VXLAN フレームフォーマット
検証環境
- SEIL/x86 Fuji version 2.60
- Nexus1000v.4.2.1.SV1.5.2b(Evaluation License)
- VMware vCenter Server 5.0 Standard(Evaluation License)
- VMware ESXi 5.0 Enterprise Plus(Evaluation License)
- VMware Workstation 9.0.1 build-894247
SEIL/x86 設定
インターフェースの基本設定を行います。
# interface lan1 address 10.10.10.254/24
# show config interface lan1 interface lan1 media auto interface lan1 queue normal interface lan1 add 10.10.10.254/24
Multicast PIM-SPARSE を有効化します。
# route dynamic pim-sparse enable # route dynamic pim-sparse interface lan1 enable
# show status route dynamic pim-sparse Virtual Interface Table Vif Interface Local-Address Subnet Thresh Flags N eighbors 0 lan0 192.168.72.30 192.168.72.0/24 1 DISABLED 1 lan1 10.10.10.254 10.10.10.0/24 1 DR NO-NBR Multicast Routing Table Source Group RP-addr Flags --------------------------(*,*,RP)-------------------------- Number of Groups: 0 Number of Cache MIRRORs: 0 ---------------------------RP-Set---------------------------- Current BSR address: 0.0.0.0 RP-address Incoming Group prefix Priority Holdtime
Nexus1000V VSM 設定
VXLAN を有効化します。
N1KV-VSM(config)# feature segmentation N1KV-VSM %SEG_BD-2-SEG_BD_ENABLED: Feature Segmentation enabled
N1KV-VSM# show feature | grep enabled http-server 1 enabled segmentation 1 enabled sshServer 1 enabled
VXLAN 機能用ポートプロファイルを作成します。
N1KV-VSM(config)# port-profile type vethernet VXLAN-VMK N1KV-VSM(config-port-prof)# vmware port-group N1KV-VSM(config-port-prof)# switchport access vlan 10 N1KV-VSM(config-port-prof)# capability vxlan N1KV-VSM(config-port-prof)# no shutdown N1KV-VSM(config-port-prof)# state enabled N1KV-VSM(config-port-prof)# end
N1KV-VSM# show port-profile name VXLAN-VMK port-profile VXLAN-VMK type: Vethernet description: status: enabled max-ports: 32 min-ports: 1 inherit: config attributes: switchport access vlan 10 capability vxlan no shutdown evaluated config attributes: switchport access vlan 10 capability vxlan no shutdown assigned interfaces: Vethernet1 Vethernet2 port-group: VXLAN-VMK system vlans: none capability l3control: no capability iscsi-multipath: no capability vxlan: yes capability l3-vn-service: no port-profile role: none port-binding: static
VXLAN 用アップリンクを作成します。
N1KV-VSM(config)# port-profile type ethernet VXLAN-Uplink N1KV-VSM(config-port-prof)# vmware port-group N1KV-VSM(config-port-prof)# switchport mode trunk N1KV-VSM(config-port-prof)# mtu 1550 N1KV-VSM(config-port-prof)# switchport trunk allowed vlan 10 N1KV-VSM(config-port-prof)# no shutdown N1KV-VSM(config-port-prof)# system vlan 10 N1KV-VSM(config-port-prof)# state enabled
VXLAN BRIDGE DOMAIN を作成します。
N1KV-VSM(config)# bridge-domain Tenant-A N1KV-VSM(config-bd)# segment id 12001 N1KV-VSM(config-bd)# group 229.0.0.1 N1KV-VSM(config-bd)# end
N1KV-VSM(config)# bridge-domain Tenant-B N1KV-VSM(config-bd)# segment id 13001 N1KV-VSM(config-bd)# group 229.0.0.1 N1KV-VSM(config-bd)# end
N1KV-VSM# show bridge-domain Tenant-A Bridge-domain Tenant-A (0 ports in all) Segment ID: 12001 (Manual/Active) Group IP: 229.0.0.1 State: UP Mac learning: Enabled
N1KV-VSM# show bridge-domain Tenant-B Bridge-domain Tenant-B (0 ports in all) Segment ID: 13001 (Manual/Active) Group IP: 229.0.0.1 State: UP Mac learning: Enabled
ポートプロファイルを作成及び BD を関連付けます。
N1KV-VSM(config)# port-profile type vethernet VXLAN-A-12001 N1KV-VSM(config-port-prof)# switchport mode access N1KV-VSM(config-port-prof)# switchport access bridge-domain Tenant-A N1KV-VSM(config-port-prof)# no shutdown N1KV-VSM(config-port-prof)# vmware port-group N1KV-VSM(config-port-prof)# state enabled N1KV-VSM(config-port-prof)# end
N1KV-VSM(config)# port-profile type vethernet VXLAN-B-13001 N1KV-VSM(config-port-prof)# switchport mode access N1KV-VSM(config-port-prof)# switchport access bridge-domain Tenant-B N1KV-VSM(config-port-prof)# no shutdown N1KV-VSM(config-port-prof)# vmware port-group N1KV-VSM(config-port-prof)# state enabled N1KV-VSM(config-port-prof)# end
N1KV-VSM# show port-profile name VXLAN-A-12001 port-profile VXLAN-A-12001 type: Vethernet description: status: enabled max-ports: 32 min-ports: 1 inherit: config attributes: switchport mode access switchport access bridge-domain Tenant-A no shutdown evaluated config attributes: switchport mode access switchport access bridge-domain Tenant-A no shutdown assigned interfaces: Vethernet3 Vethernet5 port-group: VXLAN-A-12001 system vlans: none capability l3control: no capability iscsi-multipath: no capability vxlan: no capability l3-vn-service: no port-profile role: none port-binding: static
N1KV-VSM# show port-profile name VXLAN-B-13001 port-profile VXLAN-B-13001 type: Vethernet description: status: enabled max-ports: 32 min-ports: 1 inherit: config attributes: switchport mode access switchport access bridge-domain Tenant-B no shutdown evaluated config attributes: switchport mode access switchport access bridge-domain Tenant-B no shutdown assigned interfaces: Vethernet4 Vethernet6 port-group: VXLAN-B-13001 system vlans: none capability l3control: no capability iscsi-multipath: no capability vxlan: no capability l3-vn-service: no port-profile role: none port-binding: static
vSphere ESXi5.0 設定
Nexus1000v 分散仮想スイッチから[ホストの追加]をクリックします。
VSM で作成したアップリンクポートグループ[VXLAN-Uplink]を選択し[次へ]をクリックします。
[次へ]をクリックします。
[次へ]をクリックします。
内容を確認し[終了]をクリックします。
[vSphere Distributed vSwitch]の[仮想アダプタの管理]をクリックします。
[追加]をクリックします。
[新規仮想アダプタ]を選択し[次へ]をクリックします。
[VMkernel]を選択し[次へ]をクリックします。
VSM で作成したポートグループ「VLAN-VMK」を選択し[次へ]をクリックします。
IP アドレス/サブネットマスクを設定し[次へ]をクリックします。
[終了]をクリックします。
VSM で作成したポートプロファイルを、仮想マシンのネットワークラベルに適用します。
VSM コマンドによる確認
VXLAN vEthernet インターフェイス情報の確認
N1KV-VSM# show system internal seg_bd info port if_index = <0x1c000020> Bridge-domain Tenant-A rid = 216172786878513184 swbd = 4096 if_index = <0x1c000030> Bridge-domain Tenant-B rid = 216172786878513200 swbd = 4097 if_index = <0x1c000040> Bridge-domain Tenant-A rid = 216172786878513216 swbd = 4096 if_index = <0x1c000050> Bridge-domain Tenant-B rid = 216172786878513232 swbd = 4097
vEthernet ブリッジ設定情報の確認
N1KV-VSM# show system internal seg_bd info port ifindex 0x1c000020 Bridge Domain: Tenant-A Segment ID: 12001 Group IP: 229.0.0.12
N1KV-VSM# show system internal seg_bd info port ifindex 0x1c000050 Bridge Domain: Tenant-B Segment ID: 13001 Group IP: 229.0.0.13
VEM コマンドによる確認
VXLAN vEthernet 状況の確認
VMware ESXi02 ~ # vemcmd show port segments Native Seg LTL VSM Port Mode SegID State 50 Veth4 A 13001 FWD 51 Veth5 A 12001 FWD
VMware ESXi03 ~ # vemcmd show port segments Native Seg LTL VSM Port Mode SegID State 50 Veth6 A 13001 FWD 51 Veth3 A 12001 FWD
VXLAN vmknic 状況の確認
VMware ESXi02 ~ # vemcmd show vxlan interfaces LTL IP Seconds since Last IGMP Query Received (* Interface on which IGMP Joins are sent) ------------------------------------------ 49 10.10.10.12 112 *
VMware ESXi03 ~ # vemcmd show vxlan interfaces LTL IP Seconds since Last IGMP Query Received (* Interface on which IGMP Joins are sent) ------------------------------------------ 49 10.10.10.13 53 *
Remote IP 学習状況の確認
VMware ESXi02 ~ # vemcmd show l2 bd-name Tenant-A Bridge domain 9 brtmax 4096, brtcnt 2, timeout 300 Segment ID 12001, swbd 4096, "Tenant-A" Flags: P - PVLAN S - Secure D - Drop Type MAC Address LTL timeout Flags PVLAN Remote IP Static 00:50:56:9a:2b:0f 51 0 0.0.0.0 Dynamic 00:50:56:9a:2b:0d 21 241 10.10.10.13
VMware ESXi02 ~ # vemcmd show l2 bd-name Tenant-B Bridge domain 10 brtmax 4096, brtcnt 2, timeout 300 Segment ID 13001, swbd 4097, "Tenant-B" Flags: P - PVLAN S - Secure D - Drop Type MAC Address LTL timeout Flags PVLAN Remote IP Static 00:50:56:9a:2b:13 50 0 0.0.0.0 Dynamic 00:50:56:9a:2b:11 21 10 10.10.10.13
VMware ESXi03 ~ # vemcmd show l2 bd-name Tenant-A Bridge domain 9 brtmax 4096, brtcnt 2, timeout 300 Segment ID 12001, swbd 4096, "Tenant-A" Flags: P - PVLAN S - Secure D - Drop Type MAC Address LTL timeout Flags PVLAN Remote IP Dynamic 00:50:56:9a:2b:0f 21 79 10.10.10.12 Static 00:50:56:9a:2b:0d 51 0 0.0.0.0
VMware ESXi03 ~ # vemcmd show l2 bd-name Tenant-B Bridge domain 10 brtmax 4096, brtcnt 2, timeout 300 Segment ID 13001, swbd 4097, "Tenant-B" Flags: P - PVLAN S - Secure D - Drop Type MAC Address LTL timeout Flags PVLAN Remote IP Dynamic 00:50:56:9a:2b:13 21 95 10.10.10.12 Static 00:50:56:9a:2b:11 50 0 0.0.0.0
以上