在 linuxbridge 中支持外部物理网桥映射

包含您的 Launchpad 蓝图的 URL

https://blueprints.launchpad.net/neutron/+spec/phy-net-bridge-mapping

本提案为 linuxbridge-agent 实现物理网桥映射。根据本提案,linuxbridge-agent 将能够感知用户定义的外部物理网桥,并在其上附加 tap 设备。

问题描述

目前,linuxbridge-agent 为用作扁平网络的每个物理网络创建一个网桥,并将现有 IP 地址从接口移动到新创建的网桥。这在某些情况下非常有用,但在其他情况下,需要使用预先存在的(用户定义的)网桥的能力。

例如,相同的物理网络可能需要为其他目的进行桥接,或者代理移动系统 IP 可能不受欢迎,或者可能导致预定义环境出现一些意外错误。

根据一些企业用户的反馈,他们确实需要此功能,以便 neutron 与其预定义的虚拟网络环境兼容,因为存在一些安全规定。

提议的变更

添加一个 bridge_mappings 配置变量,类似于 openvswitch-agent 中使用的 physical_interface_mappings 变量。

当需要扁平网络的物理网桥时,将首先检查网桥映射。如果存在物理网络的网桥映射,则将使用它。

如果不存在,则将使用接口映射,并自动为接口创建一个网桥。VLAN 网络的子接口和网桥将继续像现在一样工作,由代理使用接口映射创建。

数据模型影响

无。

REST API 影响

无。

安全影响

无。

通知影响

无。

其他最终用户影响

无。

性能影响

无。

IPv6 影响

无。

其他部署者影响

在 /etc/neutron/plugins/linuxbridge/linuxbridge_conf.ini 中添加一个名为 bridge_mappings 的选项。

开发人员影响

无。

社区影响

此更改是 linuxbridge-agent 的增值功能,不会影响当前开发周期。

实现简单明了。

备选方案

无。

实现

负责人

主要负责人

nick-ma-z

其他贡献者

工作项

  • 实现此功能

  • 提供单元测试

依赖项

无。

测试

Tempest 测试

无。

功能测试

无。此新功能可以完全通过单元测试用例覆盖。

API 测试

无。

文档影响

用户文档

在 /etc/neutron/plugins/linuxbridge/linuxbridge_conf.ini 中添加一个名为 bridge_mappings 的选项。

开发人员文档

无。

参考资料

参见相关 bug:https://bugs.launchpad.net/neutron/+bug/1105488