1

我有 3 个网络节点运行 neutron-server ..

这些节点中只有一个连接到外部网络

我将 ml2 与 openvswitch 一起使用

在连接到外部网络的节点的桥映射中-VIA FLOATING IPS-,我已将 external_net 映射到正确的桥..

在其他节点上,我没有定义此映射,也没有接口

我遇到的问题如下

当我尝试启动连接到外部网络的虚拟机时,日志中出现此错误:

中子服务器:2016-09-07 12:33:00.975 57352 错误 neutron.plugins.ml2.managers [req-def18170-5e45-4fef-9653-e008faa39913 - - - - -] 绑定端口 035a58e1-f18f-428b 失败-b78e-e8c0aaba7d14 在主机 node002 上用于 vnic_type 正常使用段 ​​[{'segmentation_id': None, 'phy sical_network': u'external_net', 'id': u'0d4590e5-0c48-4316-8b78-1636d3f44d43', 'network_type' :你'平'}]

中子服务器:2016-09-07 12:33:00.975 57352 错误 neutron.plugins.ml2.managers [req-def18170-5e45-4fef-9653-e008faa39913 - - - - -] 绑定端口 035a58e1-f18f-428b 失败-b78e-e8c0aaba7d14 在主机 node003 上用于 vnic_type 正常使用段 ​​[{'segmentation_id': None, 'phy sical_network': u'external_net', 'id': u'0d4590e5-0c48-4316-8b78-1636d3f44d43', 'network_type' :你'平'}]

在两个节点(node002 和 node003)上,因为他们没有定义这个网络!那么这是一个错误还是这样的设置无效?

谢谢

4

3 回答 3

0

在典型的 OpenStack 部署中,您不会将 Nova 实例直接绑定到外部网络。正如您已经推测的那样,这将不起作用,因为该网络未在计算主机上配置。

相反,您将您的实例附加到内部网络,然后使用例如nova floating-ip-create和分配来自外部网络的浮动 IP 地址nova floating-ip-associate

另一种解决方案是使用“提供者外部网络”,在这种安排中,您的 nova 实例直接连接到具有外部连接的 L2 网络,而不是依赖于前面段落中描述的浮动 IP NAT 解决方案。

于 2016-09-07T12:08:01.570 回答
0

我相信它不会起作用。您需要将端口绑定到所有 3 个网络节点。

一个快速的测试是停止来自未绑定到外部端口的 2 个网络节点的 neutron-server、neutron-dhcp-agent、neutron-l3-agent 和 neutron-metadata-agent 服务......并再次测试。

于 2016-09-12T10:08:05.763 回答
0

错误背后的原因是不托管提供商网络的节点上的配置错误

主要是ml2核心文件ml2_conf.ini

范围 :

flat_network 应该在每个节点上设置为适当的值

就像在连接到所有平面网络(包括内部网络)的节点上一样,它应该设置为

flat_networks = *

并且在不托管所有平面网络的节点上(例如提供者网络)

flat_networks = 物理内部

于 2016-09-07T12:54:19.057 回答