13.5. 使用 ML2 OVS 部署 DVR
要在 ML2/OVS 部署中部署和管理分布式虚拟路由(DVR),您可以在 heat 模板和环境文件中配置设置。
您可以使用 heat 模板设置来置备主机网络:
- 为 Compute 和 Controller 节点上的外部网络流量配置连接到物理网络的接口。
- 在 Compute 和 Controller 节点上创建一个网桥,具有外部网络流量的接口。
您还将网络服务(neutron)配置为与置备的网络环境匹配,并允许流量使用网桥。
默认设置仅作为指南提供。它们不应该在生产环境中工作,或测试可能需要自定义网络隔离、专用 NIC 或其他变量因素。在设置环境中,您需要正确配置 L2 代理使用的网桥映射类型参数,并为其他代理(如 L3 代理)使用外部的网桥。
以下示例演示了如何使用典型的默认值配置概念验证环境。
流程
验证
OS::TripleO::Compute::Net::SoftwareConfig
的值与 overcloud-resource-registry.yaml 文件或部署命令中包含的环境文件中的OS::TripleO::Controller::Net::SoftwareConfig
值匹配。这个值命名一个文件,如 net_config_bridge.yaml。命名文件配置外部网络 Compute 节点 L2 代理的 Neutron 网桥映射。网桥路由在 DVR 部署中托管的 Compute 节点上的浮动 IP 地址的流量。通常,您可以在部署 overcloud 时使用的网络环境文件中找到此文件名值,如 environments/net-multiple-nics.yaml。
注意如果自定义 Compute 节点的网络配置,可能需要将适当的配置添加到自定义文件中。
验证 Compute 节点是否具有外部网桥。
-
生成
openstack-tripleo-heat-templates
目录的本地副本。 -
$ cd <local_copy_of_templates_directory
. 运行
process-templates
脚本,将模板呈现到临时输出目录中:$ ./tools/process-templates.py -r <roles_data.yaml> \ -n <network_data.yaml> -o <temporary_output_directory>
-
检查 <
temporary_output_directory>/network/config 中的角色文件
。
-
生成
-
如果需要,自定义 Compute 模板,使其包含与 Controller 节点匹配的外部网桥,并在环境文件中命名
OS::TripleO::Compute::Net::Net::Net::Net::SoftwareConfig
中的自定义文件路径。 在部署 overcloud 时,在部署命令中包含 environments/services/neutron-ovs-dvr.yaml 文件:
$ openstack overcloud deploy --templates -e /usr/share/openstack-tripleo-heat-templates/environments/services/neutron-ovs-dvr.yaml
验证 L3 HA 是否已禁用。
注意L3 代理的外部网桥配置已在 Red Hat OpenStack Platform 13 中弃用,并在 Red Hat OpenStack Platform 15 中删除。