2024.2 系列发布说明¶
25.2.1¶
新特性¶
现在,如果配置选项
[ovn]ovn_emit_need_to_frag已设置,OVN 将始终在网关Logical_Router_Port中设置“gateway_mtu”选项。该值将定义为连接到此路由器的所有网络的最低 MTU。
错误修复¶
当使用 ML2/OVN 后端时,禁止将元数据端口 IP 地址用作虚拟 IP 地址。这意味着不允许将此 IP 地址设置为其他端口的 allowed_address_pair,并且 API 在这种情况下将返回 400 错误。有关更多信息,请参阅 bug 2116249。
ovn-db-sync跳过了也作为同步分段主机映射的网关的主机,但其他操作包括了它们,因此将其添加到ovn-db-sync中进行同步。有关更多信息,请参阅 bug 2116960。
25.2.0¶
错误修复¶
对于 OVN DPDK 端口,不再使用期望由 QEMU 发送 RARP 帧的实时迁移激活策略。这是因为对于 DPDK 端口,QEMU 不发送 RARP 帧,这会影响 DPDK 端口在完成实时迁移后的网络连接恢复时间。请注意,由于此更改,在实时迁移期间可能会观察到来自这些端口的一些少量重复数据包。
子网策略已更新,允许其他用户对其进行操作。网络所有者和读取者现在可以检索子网,并且项目成员现在可以更新和删除子网。有关更多信息,请参阅 bug 2038646。
其他说明¶
添加了对 OVN 机制驱动程序中
address-group的支持。
25.0.0¶
新功能¶
Neutron API RBAC 策略现在默认支持项目 MANAGER 角色。请参阅 社区目标 以获取更多信息。
新的 ML2 插件扩展
port_trusted现在可用。此扩展实现了port_trusted_vifAPI 扩展,它在端口资源中添加了一个新的布尔字段,称为trusted。此字段应由管理员用户用来将端口设置为受信任状态,而此前只能通过端口的binding:profile字典来实现。trusted字段的值仍然可见于端口的binding:profile字典中,以便例如 Nova 仍然可以在其预期位置找到它。
ML2 机制驱动程序用于静态路由的 OVN 将在外部网关路由器端口的 external_ids 注册表中包含键
neutron:is_static_route。这对于 OVN DB 同步工具来说,是为了区分 Neutron 创建的静态路由与 OVN 数据库中外部添加的静态路由。之前创建的静态路由规则将在维护任务期间仅更新一次,以在 external_ids 注册表中包含neutron:is_static_route键。如果所有静态路由条目已经使用此键配置,则不会执行任何维护操作。
添加了一个名为
neutron.wsgi的新模块,作为收集 WSGIapplication对象的场所。这旨在通过为这些对象提供一致的位置来简化部署。例如,如果使用 uWSGI,则不必[uwsgi] wsgi-file = /bin/neutron-api
现在可以使用
[uwsgi] module = neutron.wsgi.api:application
这还简化了使用其他期望模块路径的 WSGI 服务器(例如 gunicorn)的部署。
添加了一个新的示例 OVN 用户定义的路由器风味驱动程序,该驱动程序允许创建没有关联的基础逻辑交换机端口的路由器接口。在这种情况下,Neutron 仅充当路由器接口的 IP 地址管理器。这使得用户定义的路由器风味可以完全控制流经路由器接口的流量,同时绕过 OVN 处理。
添加了一个名为
broadcast_arps_to_all_routers的新配置选项到[ovn]配置部分。此选项负责配置具有 OVN 23.06 及更高版本中提供的broadcast-arps-to-all-routers配置选项的外部网络。通过启用此选项(默认),OVN 将向网络上的所有连接端口广播 ARP 请求。如果禁用,ARP 请求仅会发送到目标 MAC 地址匹配的路由器上。不匹配路由器的 ARP 请求仅会转发到非路由器端口。
远程地址组支持已添加到基于 iptables 的防火墙驱动程序(IptablesFirewallDriver 和 OVSHybridIptablesFirewallDriver),此前它仅在 OVSFirewallDriver 中可用。有关更多信息,请参阅 bug 2058138。
可以将 OVN 路由器连接到隧道外部网关网络。逻辑路由器固定到网关主机,而不是网关逻辑路由器端口。机制驱动程序会监视网关主机的状态,以便在发生故障时重新安排逻辑路由器,从而提供高可用性。
添加了一个名为
neutron-ovn-maintenance-worker的新进程。当使用 ML2/OVN 机制驱动程序和 Neutron API WSGI 模块时,将启动此进程。它执行 ML2/OVN 机制驱动程序同步 Neutron 和 OVN 数据库所需的维护任务。
添加了一个名为
neutron-periodic-workers的新进程。当使用 Neutron API WSGI 模块和任何机制驱动程序时,将启动此进程。它执行由AllServicesNeutronWorker类收集并在单个工作线程上作为线程执行的 ML2 插件周期性工作线程。
添加了一个新的 ML2 OVN 驱动程序配置选项
ovn_router_indirect_snat。当设置为 True 时,所有外部网关都将为所有间接连接到网关(通过其他路由器)的嵌套网络启用 SNAT。此选项模仿了与 ML2 Open vSwitch 和其他一些后端一起使用的 router 服务插件行为。
添加了一个新的 shim 扩展
tag-creation。此扩展通知标签插件中的新 API 定义,该定义允许发送POST请求。现在可以创建新的标签,将标签的值作为调用的参数传递。这样可以解决在使用 URI 保留字符时出现格式问题的情况。
弃用说明¶
直接在端口的
binding:profile中设置trusted键已被弃用,并且将在未来的版本中禁止。应使用 API 扩展port_trusted_vif添加的专用端口属性trusted代替。
删除了维护方法
remove_duplicated_chassis_registers。此方法不再需要,因为 OVN 21.03.0。有关更多信息,请参阅 bug 2073613。
删除了对 Windows 操作系统的支持。
安全问题¶
具有 status=DOWN 的 ML2/SR-IOV 端口将始终将 VF 链路状态设置为“disable”,而无论端口字段
propagate_uplink_status的值如何。端口禁用,以停止任何传输,优先于链路状态“auto”值。
错误修复¶
清理了 DNS 集成插件中的无害堆栈跟踪错误。这可以防止日志被堆栈跟踪填充,而错误日志消息就足够了。
修复了将浮动 IP 关联到 OVN 负载均衡器时的问题。有关详细信息,请参阅 LP#2068644。
其他说明¶
在 Neutron 的某些先前版本中,如果在使用 ML2/OVN 驱动程序时端口绑定到父端口,则无法创建或删除 trunk 端口。此限制已在本版本中删除。由于后端限制,ML2/OVS 驱动程序仍然具有此限制。
Neutron 使用一种新的算法来比较 Neutron 中的安全组规则与 OVN 中的 ACL 之间的差异。在比较之前,数据将根据安全组规则 ID 进行排序,然后比较这两个排序后的数组。这提高了同步需要大量规则时的效率。
增强了 Neutron 元数据服务在 Nova 元数据服务不可用情况下的错误处理,确保返回正确的 HTTP 状态代码。
当使用
ovn_router_indirect_snat选项时,对于某些 OVN 版本,浮动 IP 连接可能会中断。有关更多详细信息,请参阅:https://issues.redhat.com/browse/FDP-744