2.3. 降低从 VXLAN OVS 部署迁移的 MTU
如果您的预迁移 OVS 部署使用 VXLAN 隧道协议,您可能需要在迁移到 OVN (使用 Geneve 隧道协议)前,将网络最大传输单元(MTU)减少 8 字节。
在迁移前,请考虑在专用维护窗口期间执行这个步骤。
VXLAN 数据包为标头内容保留 50 字节的数据。这包括标准外部标头的 42 字节,再加上 8 字节 VXLAN 标头。如果物理网络使用标准以太网 MTU 1500 字节,您可以将 VXLAN 网络上的 MTU 设置为 1450,流量可以在不需要碎片的情况下传递。
Geneve 数据包为标头内容保留 58 字节数据。这包括标准外部标头的 42 字节,再加上 16 字节 Geneve 标头。因此,如果物理网络的 MTU 小于 1508,则必须将预迁移 OpenStack VXLAN 网络上的 MTU 减少 8 字节,以避免需要碎片。
如果您的物理网络可以在没有碎片的情况下传输至少 58 字节超过 OpenStack VXLAN 网络 MTU,请跳过这个过程并继续 第 2.4 节 “将 ML2 机制驱动程序从 OVS 迁移到 OVN”。例如,如果您的物理网络是为 9000 字节巨型帧配置的,并且 openstack 网络 MTU 为 8942 或 less,则可以跳过这个过程。
RHOSP OVN 迁移工具会在 VXLAN 和 GRE overcloud 网络上自动将 MTU 降低 8 字节。在以下步骤中,您可以使用该工具:
- 通过将 DHCP T1 计时器减少到 30 秒,增加 DHCP 续订的频率。
- 将现有 VXLAN 网络的 MTU 大小减少 8 字节。
如果您的部署没有使用 DHCP 来配置所有虚拟机实例,则必须在排除的实例上手动减少 MTU。
先决条件
- 您已完成这些步骤 第 2.1 节 “准备迁移到 OVN 机制驱动程序的环境”
- 您已完成了 第 2.2 节 “准备将 ML2 机制驱动程序从 OVS 迁移到 OVN 的容器镜像” 中的步骤。
- 您的预迁移部署是带有 VXLAN 的 Red Hat OpenStack Platform (RHOSP) 17.1 或更高版本。
流程
运行
ovn_migration.sh 'reduce-dhcp-t1。这会降低在 /var/lib/config-data/puppet-generated/neutron/etc/neutron/dhcp_agent.ini 中配置dhcp_renewal_time的内部 neutron DHCP 服务器的 T1 参数。ovn_migration.sh reduce-dhcp-t1 | sudo tee -a /var/log/ovn_migration_output.txt
$ ovn_migration.sh reduce-dhcp-t1 | sudo tee -a /var/log/ovn_migration_output.txtCopy to Clipboard Copied! Toggle word wrap Toggle overflow 验证 T1 参数是否已传播到现有虚拟机。此过程可能需要四小时。
- 登录其中一个 Compute 节点。
在附加到项目网络的其中一个虚拟机上面运行
tcpdump。如果 T1 propagation 成功,应该查看请求大约每 30 秒发生:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意cirros 虚拟机无法进行这个验证。cirros
udhcpc的实现不会响应 DHCP 选项 58 (T1)。在属于完整 Linux 虚拟机的端口中尝试此验证。红帽建议您检查工作负载中代表的所有不同操作系统,如 Windows 和 Linux 发行版的不同操作系统。
- 如果有任何虚拟机实例没有更新,以反映 DHCP 的 T1 参数的更改,请重新引导它们。
降低预迁移 VXLAN 网络的 MTU:
ovn_migration.sh reduce-mtu | sudo tee -a /var/log/ovn_migration_output.txt
$ ovn_migration.sh reduce-mtu | sudo tee -a /var/log/ovn_migration_output.txtCopy to Clipboard Copied! Toggle word wrap Toggle overflow 此步骤通过网络减少 MTU 网络,并使用 adapted_mtu 标记已完成的网络。该工具仅适用于 VXLAN 网络。如果您的部署只有 VLAN 项目网络,则此步骤不会更改任何值。
如果您在 VXLAN 项目网络上具有静态 IP 分配的任何实例,请手动将实例 MTU 减少 8 字节。例如,如果基于 VXLAN 的 MTU 是 1450,请将其更改为 1442。
注意只有在 VXLAN 项目网络上手动提供静态 IP 分配和 MTU 设置时,才执行这个步骤。默认情况下,DHCP 提供 IP 分配和 MTU 设置。
- 继续 第 2.4 节 “将 ML2 机制驱动程序从 OVS 迁移到 OVN”。