第 21 章 常见管理任务
有时,您可能需要在 Red Hat OpenStack Platform Networking 服务(neutron)上执行管理任务,如配置第 2 层填充驱动程序或指定内部 DNS 分配给端口的名称。
21.1. 配置 L2 填充驱动程序
L2 Population 驱动程序用于网络服务(neutron) ML2/OVS 环境,以启用广播、多播和单播流量,以便在大型覆盖网络上横向扩展。默认情况下,Open vSwitch GRE 和 VXLAN 将广播复制到每个代理,包括不托管目标网络的代理。这种设计需要接受大量网络和处理开销。L2 Population 驱动程序引入的替代设计为 ARP 解析和 MAC 学习流量实施部分网格;它还仅在托管网络节点间为特定网络创建隧道。此流量仅通过将流量作为目标单播封装到所需的代理中。
先决条件
- 您必须具有 RHOSP 管理员特权。
- 网络服务必须使用 ML2/OVS 机制驱动程序。
流程
-
以
stack
用户身份登录 undercloud 主机。 提供 undercloud 凭证文件:
$ source ~/stackrc
创建自定义 YAML 环境文件。
示例
$ vi /home/stack/templates/my-environment.yaml
您的环境文件必须包含关键字
parameter_defaults
。在这些关键字下,添加以下行:parameter_defaults: NeutronMechanismDrivers: ['openvswitch', 'l2population'] NeutronEnableL2Pop: 'True' NeutronEnableARPResponder: true
运行部署命令,并包括核心 heat 模板、环境文件和新的自定义环境文件。
重要但是,环境文件的顺序非常重要,因为后续环境文件中定义的参数和资源更为优先。
示例
$ openstack overcloud deploy --templates \ -e <your_environment_files> \ -e /home/stack/templates/my-environment.yaml
验证
获取 OVS 代理的 ID。
$ openstack network agent list -c ID -c Binary
输出示例
+--------------------------------------+---------------------------+ | ID | Binary | +--------------------------------------+---------------------------+ | 003a8750-a6f9-468b-9321-a6c03c77aec7 | neutron-openvswitch-agent | | 02bbbb8c-4b6b-4ce7-8335-d1132df31437 | neutron-l3-agent | | 0950e233-60b2-48de-94f6-483fd0af16ea | neutron-openvswitch-agent | | 115c2b73-47f5-4262-bc66-8538d175029f | neutron-openvswitch-agent | | 2a9b2a15-e96d-468c-8dc9-18d7c2d3f4bb | neutron-metadata-agent | | 3e29d033-c80b-4253-aaa4-22520599d62e | neutron-dhcp-agent | | 3ede0b64-213d-4a0d-9ab3-04b5dfd16baa | neutron-dhcp-agent | | 462199be-0d0f-4bba-94da-603f1c9e0ec4 | neutron-sriov-nic-agent | | 54f7c535-78cc-464c-bdaa-6044608a08d7 | neutron-l3-agent | | 6657d8cf-566f-47f4-856c-75600bf04828 | neutron-metadata-agent | | 733c66f1-a032-4948-ba18-7d1188a58483 | neutron-l3-agent | | 7e0a0ce3-7ebb-4bb3-9b89-8cccf8cb716e | neutron-openvswitch-agent | | dfc36468-3a21-4a2d-84c3-2bc40f224235 | neutron-metadata-agent | | eb7d7c10-69a2-421e-bd9e-aec3edfe1b7c | neutron-openvswitch-agent | | ef5219b4-ee49-4635-ad04-048291209373 | neutron-sriov-nic-agent | | f36c7af0-e20c-400b-8a37-4ffc5d4da7bd | neutron-dhcp-agent | +--------------------------------------+---------------------------+
使用其中一个 OVS 代理的 ID,确认 OVS 代理上设置了 L2 Population 驱动程序。
示例
本例验证 ID 为
003a8750-a6f9-468b-9321-a6c03c77aec7
的neutron-openvswitch-agent
上的 L2 Population 驱动程序配置:$ openstack network agent show 003a8750-a6f9-468b-9321-a6c03c77aec7 -c configuration -f json | grep l2_population
输出示例
"l2_population": true,
确保为 OVS 代理启用了 ARP 响应器功能。
示例
$ openstack network agent show 003a8750-a6f9-468b-9321-a6c03c77aec7 -c configuration -f json | grep arp_responder_enabled
输出示例
"arp_responder_enabled": true,
其他资源
- OVN 支持的 DHCP 选项
- 自定义 Red Hat OpenStack Platform 部署 指南中的环境文件 https://access.redhat.com/documentation/zh-cn/red_hat_openstack_platform/17.1/html/customizing_your_red_hat_openstack_platform_deployment/assembly_configuring-the-overcloud-with-the-orchestration-service#con_environment-files_understanding-heat-templates
- 自定义 Red Hat OpenStack Platform 部署 指南中的在 overcloud 创建中包含环境文件