上一節創建了 vxlan100_net 並部署 instance,今天我們來分析底層網絡結構。
控制節點
執行 ovs-vsctl show:
br-int
br-int 連接了如下 port:
-
tap0d4cb13a-7a 是 vxlan100_net 的 DHCP 服務對應的 interface。
-
qvoa2ac3b9a-24 將 cirros-vm1 虛擬網卡連接到 vxlan100_net。
br-tun
br-tun 上創建了一個特殊的 port “vxlan-a642100b”,它是 VXLAN 的隧道端點,指定了本地(devstack-controller)節點和遠端(devstack-compute1)節點 VTEP 的 IP。
計算節點
執行 ovs-vsctl show:
br-int
br-int 上 qvoab219616-01 將 cirros-vm2 虛擬網卡連接到 vxlan100_net。
br-tun
br-tun 上也創建了 port “vxlan-a642100b”,配置內容與控制節點相對,指定了本地(devstack-compute1)節點和遠端(devstack-controller)節點 VTEP 的 IP。
當前網絡結構如下:
需要特別注意的是:無論存在多少個 VXLAN,devstack-controller 與 devstack-compute1 之間所有的數據都只通過 “vxlan-a642100b” 這對 port 上建立的隧道傳輸。
分析完 vxlan 的結構,那么數據是如何在節點之間傳輸的呢?
答案就是 flow rule,下節我們詳細分析。