![Openstack-两个独立节点上的实例之间的连接](https://linux22.com/image/795856/Openstack-%E4%B8%A4%E4%B8%AA%E7%8B%AC%E7%AB%8B%E8%8A%82%E7%82%B9%E4%B8%8A%E7%9A%84%E5%AE%9E%E4%BE%8B%E4%B9%8B%E9%97%B4%E7%9A%84%E8%BF%9E%E6%8E%A5.png)
我有以下设置: 1 x 管理节点(节点 A) 2 x 计算节点(节点 B 和 C) 1 x 卷节点(节点 D)
相关配置:VlanManager multi_host=true
节点 B[eth0=192.168.6.102;br100=10.1.0.6] 节点 C [eth0=192.168.6.103;br100=10.1.0.4]
我可以在同一节点上的实例之间 ping 通,但无法与不同节点上的实例 ping 通。如果我运行“brctl br100 eth0”,实例可以在节点之间 ping 通,但我在 eth0(192.168.6.102/192.168.6.103)上失去连接
我必须进行哪些更改才能在保持 eth0 上的正常连接的同时在节点之间 ping 通实例?
答案1
在我看来,您希望使用单个物理网络接口运行节点。您看到的情况很正常,因为当您将eth0
物理接口绑定到网桥时br100
,您必须将 IP 地址分配给网桥本身,而不是物理接口。
有一个好例子在 OpenStack 手册中,但它没有涵盖让您的节点在同一个物理接口上处理两个不同 IP 网络的情况。您可以通过向 中添加地址来实现这一点br100
。总结相关部分:
在
/etc/nova/nova.conf
节点 B 上,你会看到类似这样的内容:my_ip=10.1.0.6 public_interface=br100 vlan_interface=eth0 flat_network_bridge=br100 flat_interface=eth0
在
/etc/network/interfaces
节点 B 上,你会看到类似这样的内容:auto br100 iface br100 inet static bridge_ports eth0 bridge_stp off bridge_maxwait 0 bridge_fd 0 address 192.168.6.102 netmask 255.255.255.0 network 192.168.6.0 broadcast 192.168.6.255 gateway 192.168.6.xxx auto br100:1 iface br100:1 inet static address 10.1.0.6 netmask 255.255.255.0 broadcast 10.1.0.255
我相信这应该可以正确运行。