4.8. 对 VLAN 提供商网络中的实例物理网络连接进行故障排除
请参考 VLAN 提供商网络中的连接功能"如何 VLAN 提供商网络中的 VLAN 提供商网络中的数据包流发挥作用?"时。另外,请查看以下配置选项:
流程
验证
bridge_mapping配置中使用的物理网络名称与物理网络名称匹配。示例
$ openstack network show provider-vlan171
输出示例
... | provider:physical_network | physnet1 ...
示例
$ grep bridge_mapping /etc/neutron/plugins/ml2/openvswitch_agent.ini
输出示例
在本例中,物理网络名称
physnet1与bridge_mapping配置中使用的名称匹配:bridge_mappings = physnet1:br-ex
确认网络已创建
为外部,类型为vlan,并使用正确的segmentation_id值:示例
$ openstack network show provider-vlan171
输出示例
... | provider:network_type | vlan | | provider:physical_network | physnet1 | | provider:segmentation_id | 171 | ...
检查 patch-peer。
验证
br-int和br-ex是否使用 patch-peerint-br-ex <--> phy-br-ex连接。$ ovs-vsctl show
此连接在重启
neutron-openvswitch-agent时创建,只要bridge_mapping在/etc/neutron/plugins/ml2/openvswitch_agent.ini中被正确配置。如果即使重启该服务后没有创建,则重新检查
bridge_mapping设置。检查网络流。
-
要查看传出数据包的流,请运行
ovs-ofctl dump-flows br-ex和ovs-ofctl dump-flows br-int,并验证流是否将内部 VLAN ID 映射到外部 VLAN ID (segmentation_id)。 对于传入数据包,将外部 VLAN ID 映射到内部 VLAN ID。
当您第一次生成实例到此网络时,neutron OVS 代理会添加此流。
-
如果在生成实例后没有创建此流,请确保网络创建为
vlan,为外部,并且physical_network名称正确。另外,再次检查bridge_mapping设置。 最后,重新检查
ifcfg-br-ex和ifcfg-ethx配置。确保
br-ex包含端口ethX,并且ifcfg-br-ex和ifcfg-ethx在ip a命令的输出中都有一个UP标志。示例
$ ovs-vsctl show
在本例中,
eth1是br-ex中的端口:Bridge br-ex Port phy-br-ex Interface phy-br-ex type: patch options: {peer=int-br-ex} Port "eth1" Interface "eth1"示例
$ ip a
输出示例
在本例中,
eth1已添加为端口,并且内核已配置为将所有数据包从接口移动到 OVS 网桥br-ex。条目将演示这一点,即master ovs-system。5: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master ovs-system state UP qlen 1000
-
要查看传出数据包的流,请运行