跳转到: 导航, 搜索

Neutron/DVR/HowTo

< Neutron‎ | DVR

完整链接: https://www.youtube.com/watch?v=p4BwAjLHd0M



另请参阅 https://docs.google.com/document/d/1iXMAyVMf42FTahExmGdYNGOBFyeA4e74sAO3pvr_RjA/edit

DVR 待办事项

已准备好并需要代码审查的修复



基础设施变更

有一个实验性任务,它默认启用 DVR 运行 tempest 测试。作为开发人员/提交者,您可以使用实验性流水线来触发单主机 DVR 支持的 OpenStack 部署以运行 Tempest 测试(通过发布评论“check experimental”)。

我们希望尽快将其转换为非投票项。

在 OpenStack Neutron 中启用分布式虚拟路由功能

此 wiki 提供有关如何在当前的 OpenStack Neutron 实现中配置和部署分布式虚拟路由器功能的说明。

配置

DevStack 支持 DVR(感谢此审查 https://review.openstack.org/#/c/103180/)。要在单节点 DevStack 实例上试用 DVR,只需将 Q_DVR_MODE 设置为“dvr_snat”,然后喝杯咖啡,等待 stack.sh 发挥它的魔力。如果您想自行调整设置,请记住以下几点

  • 确保您的数据库处于正确的版本。需要使用 neutron-db-manage 脚本运行许多迁移脚本。
  • 确保您的防火墙或安全组允许 UDP 流量通过 vxlan 端口在主机之间传递
  • Q_PLUGIN=ml2
  • Q_ML2_TENANT_NETWORK_TYPE=vxlan
  • Q_DVR_MODE=dvr_snat

Q_DVR_MODE 的值是 disabled、dvr_snat(控制器或单节点)或 dvr(多节点中的计算节点)。



作为参考,以下是所做的设置…

依赖项
  • 在初始形式中,DVR 将依赖 ml2/ovs 和 vxlan。
    • Q_PLUGIN=ml2
    • Q_ML2_TENANT_NETWORK_TYPE=vxlan
  • l2pop(见下文)
Neutron.conf
  • router_distributed = True
    • 这会将新路由器创建的默认值设置为 DVR。
    • 管理员用户可以在不将此选项设置为 True 的情况下将现有路由器转换为分布式路由器。
L3 Agent.ini

这些选项在最近的补丁集版本中已更改

  • 网络主机(或单节点部署)
    • agent_mode = dvr_snat
  • 计算主机
    • agent_mode = dvr
L2 Agent.ini (ml2_conf.ini)

必须在运行 neutron 服务的每个节点上配置以下选项。

  • ml2_conf.ini
    • ml2 部分
      • 将 ",l2population" 追加到 mechanism_drivers
    • agent 部分
      • l2_population = True
      • tunnel_types = vxlan
      • enable_distributed_routing = True

服务集成

FWaaS 和 DVR