跟我一起探索Neutron (1) - flat网络

(linuxbridge实现二层协议的方案)

计算节点物理网卡 ens34

虚拟机 instance-00000001 的虚拟网卡tapfd2d3404-4d

=> 通过网桥 br-ae93bdde-97,将 tapfd2d3404-4d 连接到 ens34 上

      网桥 br-ae93bdde-97 使用 dnsmasq 提供DHCP服务

 

下面手动实践,进一步理解flat网络(外网)

控制节点上

 说明:

1. provider(网络ID为ae93bdde-9746-4bd2-b876-a424c35e7dd6)为所创建的flat网,对应控制节点上的物理网卡ens38,对应计算节点上的物理网卡ens34

2. 指定provider网络,创建虚拟机provider-instance,它的instance_name为instance-00000001,创建后,其虚拟网卡 port ID 为 fd2d3404-4dd7-4ab7-a4b0-d06e49355e4b,对应IP为192.168.67.186

 

查看provider网络 -- 网络ID为 ae93bdde-9746-4bd2-b876-a424c35e7dd6

# openstack net list

 

查看所创建的虚拟机provider-instance -- IP为192.168.67.186, instance_name为instance-00000001,虚拟网卡 port ID 为 fd2d3404-4dd7-4ab7-a4b0-d06e49355e4b

# nova list

 # nova show provider-instance

 # openstack port list | grep 192.168.67.186

 

与provider网络相关的DHCP服务(为虚拟机provider-instance分配IP)

说明:

1. 该DHCP服务对应名为 qdhcp-ae93bdde-9746-4bd2-b876-a424c35e7dd6 的网络空间

2. 网络空间中有网卡 ns-2e9f25b8-0c,与provider网络上的 ID 为 2e9f25b8-0c18-40c1-a114-126f7ccb7f38 的port对应,即对应宿主主机上的虚拟网卡为 tap2e9f25b8-0c

3. 虚拟网卡为 tap2e9f25b8-0c 连接在网桥 brqae93bdde-97 上

4. dnsmasq 进程提供DHCP服务,为虚拟机 provider-instance 分配 IP

# ip netns

# ip netns exec qdhcp-ae93bdde-9746-4bd2-b876-a424c35e7dd6 ip a

# openstack port list

# ip a

 # brctl show

 # ps -ef | grep dnsmasq

# cat /var/lib/neutron/dhcp/ae93bdde-9746-4bd2-b876-a424c35e7dd6/leases

 

 

在计算节点上

启动provider-instance前

说明:可以看到网桥 br-ae93bdde-97,它对应的就是provider网络(网络的ID为ae93bdde-9746-4bd2-b876-a424c35e7dd6)

# ip a

 # brctl show

 

启动provider-instance后

说明:

1. instance-00000001即为所创建的虚拟机provider-instance,domain id为1

2. 运行命令virsh domiflist 1,可以看到它的虚拟网卡为tapfd2d3404-4d(对应于port ID 为 fd2d3404-4dd7-4ab7-a4b0-d06e49355e4b),连接在网桥 br-ae93bdde-97上

3. 网桥br-ae93bdde-97对应的宿主主机上的网卡是ens34

# virsh list

# virsh domiflist 1

 # ip a

 # brctl show

 

posted @ 2020-05-11 12:54  丫uan丫ue  阅读(661)  评论(0编辑  收藏  举报