搜索

22.2. 为 ML2/OVS 配置网络服务可用区

download PDF

当用户创建网络和路由器时,您可以设置由 Red Hat OpenStack Platform (RHOSP)网络服务(neutron)自动分配的一个或多个默认可用区(AZ)。此外,您还可以设置网络服务用来将这些资源调度到相应的 AZ 的网络和路由器驱动程序。

本主题中包含的信息用于运行 RHOSP 网络服务的部署,这些服务使用带有 Open vSwitch 机制驱动程序(ML2/OVS)的模块第 2 个插件。

先决条件

  • 部署的 RHOSP 16.2 或更高版本。
  • 运行使用 ML2/OVS 机制驱动程序的 RHOSP 网络服务。
  • 在分布式计算节点(DCN)环境中使用网络服务 AZ 时,您必须将网络服务 AZ 名称与计算服务(nova) AZ 名称匹配。

    如需更多信息,请参阅 分布式计算节点和存储部署指南

流程

  1. stack 用户身份登录 undercloud,再提供 stackrc 文件以启用 director 命令行工具。

    示例

    $ source ~/stackrc

  2. 创建自定义 YAML 环境文件。

    示例

    $ vi /home/stack/templates/my-neutron-environment.yaml

    提示

    Red Hat OpenStack Platform 编排服务(heat)使用一组名为 template 的计划来安装和配置您的环境。您可以使用自定义环境文件来自定义 overcloud 的各个方面,这是为 heat 模板 提供自定义 的特殊模板。

  3. 在 YAML 环境文件的 parameter_defaults 下,输入 NeutronDefaultAvailabilityZones 参数和一个或多个 AZ。如果用户在创建网络或路由器时使用 --availability-zone-hint 选项指定 AZ,则网络服务会分配这些 AZ。

    重要

    在 DCN 环境中,您必须将网络服务 AZ 名称与计算服务 AZ 名称匹配。

    示例

    parameter_defaults:
      NeutronDefaultAvailabilityZones: 'az-central,az-datacenter2,az-datacenter1'

  4. 通过分别为参数输入 NeutronDhcpAgentAvailabilityZoneNeutronL3AgentAvailabilityZone 的值,确定 DHCP 和 L3 代理的 AZ。

    示例

    parameter_defaults:
      NeutronDefaultAvailabilityZones: 'az-central,az-datacenter2,az-datacenter1'
      NeutronL3AgentAvailabilityZone: 'az-central,az-datacenter2,az-datacenter1'
      NeutronDhcpAgentAvailabilityZone: 'az-central,az-datacenter2,az-datacenter1'

    重要

    在 DCN 环境中,为 NeutronDhcpAgentAvailabilityZone 定义单个 AZ,以便在与特定边缘站点相关的 AZ 中调度端口。

  5. 默认情况下,网络和路由器调度程序分别是 AZAwareWeightSchedulerAZLeastRoutersScheduler。如果要更改其中一个或两者都更改,请分别使用 NeutronNetworkSchedulerDriverNeutronRouterSchedulerDriver 参数输入新的调度程序。

    示例

    parameter_defaults:
      NeutronDefaultAvailabilityZones: 'az-central,az-datacenter2,az-datacenter1'
      NeutronL3AgentAvailabilityZone: 'az-central,az-datacenter2,az-datacenter1'
      NeutronDhcpAgentAvailabilityZone: 'az-central,az-datacenter2,az-datacenter1'
      NeutronNetworkSchedulerDriver: 'neutron.scheduler.dhcp_agent_scheduler.AZAwareWeightScheduler'
      NeutronRouterSchedulerDriver: 'neutron.scheduler.l3_agent_scheduler.AZLeastRoutersScheduler'

  6. 运行 openstack overcloud deploy 命令,并包含核心 heat 模板、环境文件和新的自定义环境文件。

    重要

    环境文件的顺序非常重要,因为后续环境文件中定义的参数和资源具有优先权。

    示例

    $ openstack overcloud deploy --templates \
    -e <your-environment-files> \
    -e /usr/share/openstack-tripleo-heat-templates/environments/services/\
    my-neutron-environment.yaml

验证

  • 运行可用区 list 命令确认可用区 已正确定义。

    示例

    $ openstack availability zone list

    输出示例

    +----------------+-------------+
    | Zone Name      | Zone Status |
    +----------------+-------------+
    | az-central     | available   |
    | az-datacenter1 | available   |
    | az-datacenter2 | available   |
    +----------------+-------------+

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.