9.4. 为 PCI 透传更新 control plane


要让您的云用户创建附加 PCI 设备的实例,请从配置 control plane 开始。使用要传递的正确产品 ID、供应商 ID 和设备类型配置 alias 字段。

先决条件

  • 您已选择了 OpenStackDataPlaneNodeSet CR,用于定义您可以配置 PCI 透传的节点。有关创建 OpenStackDataPlaneNodeSet CR 的更多信息,请参阅 Deploying Red Hat OpenStack Services on OpenShift 指南中的使用预置备节点创建 OpenStackDataPlaneNodeSet CR
  • 启用 PCIPassthroughFilterNUMATopologyFilter 过滤器。这些过滤器默认为启用。您可以通过检查 OpenStackControlPlane CR 来验证它们是否已更改:

    oc exec nova-scheduler-0 -- grep "enabled_filters" /etc/nova/nova.conf.d/ -R

流程

  1. 在工作站上打开 OpenStackControlPlane 自定义资源(CR)文件 openstack_control_plane.yaml
  2. customServiceConfig 字段添加到 nova 模板,以指定 Compute 节点上的 PCI 设备别名:

    apiVersion: core.openstack.org/v1beta1
    kind: OpenStackControlPlane
    spec:
      nova:
        apiOverride:
          route: {}
        template:
          secret: osp-secret
          apiServiceTemplate:
            replicas: 3
            customServiceConfig: |
              [pci]
              alias = {"name":"a1", "product_id":"<prod_id>", "vendor_id": "<vendor_id>", "device_type": "<device_type>"}
    • <prod_id > 替换为 PCI 设备的产品 ID,如 1572
    • <vendor_id > 替换为 PCI 设备的供应商 ID,例如 8086
    • <device_type > 替换为 PCI 设备类型,如 type-PF

      注意

      您可以在安装了 PCI 设备的系统中使用 lspci -nn 命令来查找产品 ID 和厂商 ID。有关配置 device_type 字段的更多信息,请参阅 PCI passthrough device type 字段

  3. 可选: 要为 PCI 透传设备设置默认 NUMA 关联性策略,请在配置中添加 numa_policy

              [pci]
              alias = {"name":"a1", "product_id":"<prod_id>", "vendor_id": "<vendor_id>", "device_type": "<device_type>", "numa_policy": "<pci_numa_policy>"}
    • <prod_id > 替换为 PCI 设备的产品 ID,如 1572
    • <vendor_id > 替换为 PCI 设备的供应商 ID,例如 8086
    • <device_type > 替换为 PCI 设备类型,如 type-PF
    • <pci_numa_policy > 替换为所需的、socketpreferredlegacy 的值。如需更多信息,请参阅配置 Nova PCI 透传的指南
  4. 更新 control plane:

    oc apply -f openstack_control_plane.yaml -n openstack
  5. 等待 RHOCP 创建与 OpenStackControlPlane CR 相关的资源。运行以下命令来检查状态:

    $ oc get openstackcontrolplane -n openstack

    输出示例:

    NAME                      STATUS    MESSAGE
    openstack-control-plane   Unknown   Setup started

    当状态为 "Setup complete" 时,会创建 OpenStackControlPlane 资源。

    提示

    -w 选项附加到 get 命令的末尾,以跟踪部署进度。

  6. 可选:通过查看 openstack 命名空间中的 pod 来查看每个单元,确认部署了 control plane:

    $ oc get pods -n openstack

    当所有 pod 都已完成或运行时,会部署 control plane。

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

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

让开源更具包容性

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

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部