搜索

9.2. 配置 VDPA Compute 节点

download PDF

要让您的云用户创建使用 VIRTIO 数据路径加速 (VDPA) 端口的实例,请配置具有 VDPA 设备的 Compute 节点。

流程

  1. 创建一个新的 Compute 环境文件,用于配置 VDPA Compute 节点,如 vdpa_compute.yaml
  2. PciPassthroughFilterNUMATopologyFilter 添加到 vdpa_compute.yaml 中的 NovaSchedulerEnabledFilters 参数中:

    parameter_defaults:
      NovaSchedulerEnabledFilters: ['AvailabilityZoneFilter','ComputeFilter','ComputeCapabilitiesFilter','ImagePropertiesFilter','ServerGroupAntiAffinityFilter','ServerGroupAffinityFilter','PciPassthroughFilter','NUMATopologyFilter']
  3. NovaPCIPassthrough 参数添加到 vdpa_compute.yaml,以指定 Compute 节点上的 VDPA 设备的可用 PCI。例如,要将 NVIDIA® ConnectX®-6 Dx 设备添加到可用于透传到实例的 PCI 设备池中,请将以下配置添加到 vdpa_compute.yaml 中:

    parameter_defaults:
      ...
      ComputeVdpaParameters:
        NovaPCIPassthrough:
        - vendor_id: "15b3"
          product_id: "101d"
          address: "06:00.0"
          physical_network: "tenant"
        - vendor_id: "15b3"
          product_id: "101d"
          address: "06:00.1"
          physical_network: "tenant"

    有关如何配置 NovaPCIPassthrough 的更多信息,请参阅 配置 NovaPCIPassthrough的指南

  4. 通过将 KernelArgs 参数添加到 vdpa_compute.yaml,在每个 Compute 节点 BIOS 中启用 input-output 内存管理单元 (IOMMU)。例如,使用以下 KernalArgs 设置来启用 Intel 公司 IOMMU:

    parameter_defaults:
      ...
      ComputeVdpaParameters:
        ...
        KernelArgs: "intel_iommu=on iommu=pt"

    要启用 AMD IOMMU,将 KernelArgs 设置为 "amd_iommu=on iommu=pt "。

    注意

    第一次将 KernelArgs 参数添加到角色的配置中时,overcloud 节点会在 overcloud 部署期间自动重新引导。如果需要,您可以禁用自动重新引导节点,并在每个 overcloud 部署后手动重启节点。如需更多信息,请参阅配置手动节点重新引导以定义 KernelArgs

  5. 打开网络环境文件,并添加以下配置来定义物理网络:

    parameter_defaults:
      ...
      NeutronBridgeMappings:
      - <bridge_map_1>
      - <bridge_map_n>
      NeutronTunnelTypes: '<tunnel_types>'
      NeutronNetworkType: '<network_types>'
      NeutronNetworkVLANRanges:
      - <network_vlan_range_1>
      - <network_vlan_range_n>
    • <bridge_map_1> 以及所有网桥映射(直到 <bridge_map_n>)替换为您要用于 VDPA 网桥的逻辑网桥映射。例如,tenant:br-tenant.
    • <tunnel_types> 替换为项目网络的隧道类型的逗号分隔列表。例如,geneve
    • <network_types> 替换为 Networking 服务 (neutron) 的项目网络类型的逗号分隔列表。在所有可用网络用尽前,系统会使用您指定的第一种类型,然后会使用下一个类型。例如,geneve,vlan
    • <network_vlan_range_1>,所有物理网络和 VLAN 范围(直到 <network_vlan_range_n>) 替换为您要支持的 ML2 和 OVN VLAN 映射范围。例如,datacentre:1:1000,tenant:100:299
  6. 使用其他环境文件将自定义环境文件添加到堆栈中,并部署 overcloud:

    (undercloud)$ openstack overcloud deploy --templates \
      -e [your environment files] \
      -r /home/stack/templates/roles_data_vdpa.yaml \
      -e /home/stack/templates/network-environment.yaml \
      -e /home/stack/templates/vdpa_compute.yaml \
      -e /home/stack/templates/overcloud-baremetal-deployed.yaml \
      -e /home/stack/templates/node-info.yaml

验证

  1. 使用 VDPA 设备创建实例。如需更多信息,请参阅 创建和管理实例 指南中的使用 VDPA 接口创建实例
  2. 以云用户身份登录实例。如需更多信息,请参阅 创建和管理实例 指南中的 连接到实例
  3. 验证 VDPA 设备是否可从实例访问:

    $ openstack port show vdpa-port
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.