Openstack 虚拟机通讯
admin
2023-04-07 19:02:41
0

1、虚拟机南北通讯:

Openstack 虚拟机通讯

环境:
External network:

Network 203.0.113.0/24
IP address allocation from 203.0.113.101 to 203.0.113.200
Project network router interface 203.0.113.101 TR

Project network

Network 192.168.1.0/24
Gateway 192.168.1.1 with MAC address TG
Compute node 1
Instance 1 192.168.1.11 with MAC address I1

Instance 1 resides on compute node 1 and uses a project network.
The instance sends a packet to a host on the external network.

过程:

涉及到计算节点的过程:
instance 通过qbr设备上的qvb-qbr-qvo 携带自己的mac地址以及目的地址和网关以及tag
通过qbr桥生的安全组
qbr桥将流量转送到br-int上
br-int桥为project 网络打上相应的tag
For VLAN project networks
br-init-->br-vlan
br-vlan 替换tag为真实的tag
br-vlan 把包转发到网络节点的br-vlan
涉及到网络节点
刚刚从compute节点的br-vlan的包通过交换机传送到网络节点的br-vlan上
br-vlan把包转发给br-int桥
br-int把真实的tag转换为ovs自己认的tag。br-int上面有qroute的接口(qr)设备,包含interface的gw 和tag
通过qroute的namespace 中的iptables规则把qr做为source nat到 qg设备上,可以查看namespace里面的ip信息
Openstack 虚拟机通讯
[root@cloud02 ~]#
查看Iptables规则
neutron-l3-agent-float-snat all -- anywhere anywhere
SNAT all -- anywhere anywhere to:10.10.255.226
SNAT all -- anywhere anywhere mark match ! 0x2/0xffff ctstate DNAT to:10.10.255.226
br-int 转发到br-ex上,再从br-ex到外网的子接口。
此时Snat已经全部完成。

2、带有FloatingIP的虚拟机南北流量

Openstack 虚拟机通讯
环境:
External network

Network 203.0.113.0/24
IP address allocation from 203.0.113.101 to 203.0.113.200
Project network router interface 203.0.113.101 TR
Project network
Network 192.168.1.0/24
Gateway 192.168.1.1 with MAC address TG
Compute node 1
Instance 1 192.168.1.11 with MAC address I1 and floating IP address 203.0.113.102 F1
Instance 1 resides on compute node 1 and uses a project network.
The instance receives a packet from a host on the external network.
过程
通过网络节点:
通过外部接口转发到br-ex上,br-ex转发到br-int上
br-ex的qg设备转到qrouter上面的qg设备
Openstack 虚拟机通讯
Openstack 虚拟机通讯
在qruoter的namesapce查看iptables nat规则
Openstack 虚拟机通讯
查看IP为“10.0.0.5” 的虚拟机
Openstack 虚拟机通讯
可以查看到router里面的flouting-ip对应的dnat是和虚拟机的project ip是一一对应的。
通过route把包转送到br-int。br-init 传送到br-vlan ,并打上真实的tag.
从接口到达交换机。

经过计算节点
计算节点的br-vlan 收到包后,传送给br-init,br-int 把tag转换为ovs自己的内部tag.。然后经过qvb和qvo着一对peer 到达qbr桥,从而到达到达tap设备。如图:
Openstack 虚拟机通讯

虚拟机之间在不同的网络通讯:
Openstack 虚拟机通讯
环境:

Project network 1
Network: 192.168.1.0/24
Gateway: 192.168.1.1 with MAC address TG1

Project network 2
Network: 192.168.2.0/24
Gateway: 192.168.2.1 with MAC address TG2
Compute node 1
Instance 1: 192.168.1.11 with MAC address I1
Compute node 2
Instance 2: 192.168.2.11 with MAC address I2
Instance 1 resides on compute node 1 and uses project network 1.
Instance 2 resides on compute node 2 and uses project network 2.
Both project networks reside on the same router.
Instance 1 sends a packet to instance 2.

通过compute01的:

tap设备通过qvb和qvo把qbr桥和br-int桥连接起来,从而到达br-int上
br-int把包转发给br-vlan上,br-vlan打上真实的tag,然后通过接口发给交换机。
通过network 节点的:
br-vlan接收到compute01上br-vlan发送的包,br-vlan 把包转发给br-int。 br-int把tag替换为自己能识别的tag
br-int把包发给qrouter 的qbr-1 接口。并且携带自身的网关信息。
路由通过route功能把qbr-1的包发送给qbr-2.
qbr-2 通过转发到达br-int上
br-init 把包转发给br-vlan,br-vlan把tag替换为真实的tag
br-vlan 把包发给network-2 的网桥上,br-vlan 把包发给compute-2的节点上
通过compute02节点的
计算节点2 接收到网络节点br-vlan的包。
br-vlan===> br-int
br-int ===>qbr===>tap

总结:
1、相同网络不同节点上的虚拟机互相通讯不经过网络节点
2、不通网络相互通讯经过网络节点
3、相同网络部同计算节点的虚拟机 互相通讯 直接走br-int

参考连接:
https://docs.openstack.org/liberty/networking-guide/scenario-classic-ovs.html

相关内容

热门资讯

乌克兰总统办公室前主任被控涉嫌... △乌克兰总统办公室前主任叶尔马克(资料图)当地时间11日,乌克兰国家反腐败局和特别反腐败检察院表示,...
你的蓝牙耳机正在 “偷听”?国... 在科技飞速发展的当下,无线耳机、智能手表、无线键盘等蓝牙设备凭借“一键连接”带来的便捷优势,已广泛应...
光洋股份:公司立足成为最懂制造... 证券日报网5月11日讯 ,光洋股份在接受调研者提问时表示,公司近年来加快布局机器人领域,立足成为最懂...
重庆拟投千亿培育沉浸式与虚拟现... 🤖 由 文心大模型 生成的文章摘要 重庆市发布“十五五”现代服务业发展规划,明确投入1 重庆市发...
内存缩水开倒车!谷歌Pixel... 5月11日消息,据相关媒体报道,受全球DRAM供应紧缺影响,谷歌即将推出的Pixel 11系列在内存...
伊朗议长:“14点提案”无可替... 当地时间12日凌晨,伊朗议会议长卡利巴夫在社交平台上发布消息称,除了接受伊朗“14点提案”中所规定的...
交付巴基斯坦的“麒麟”级潜艇战... ‍‍近日,在国防部举行的例行消息发布中有媒体提到,中方为巴基斯坦建造的“麒麟”级常规动力潜艇首艇已经...
伊朗官员:伊美就浓缩铀处置方式... 当地时间11日,总台记者获悉,一名伊朗官员称,伊朗与美国之间的谈判在浓缩铀的处置、暂停铀浓缩活动期限...
沈阳添新地标!超级IP“巨虎东... 万众期待,神兽归沈! 5月10日,沈阳专属超级文旅IP“巨虎东东”圆满完成交付唤醒仪式,正式启程奔赴...
虹软科技:暗光增强等算法已应用... 来源:市场投研资讯 (来源:财闻) 公司前瞻把握AI眼镜作为新一代AI交互入口的战略机遇,凭借深厚的...