第 12 章 为实例配置虚拟 GPU

要在实例上支持基于 GPU 的渲染,您可以根据可用的物理 GPU 设备和虚拟机监控程序类型定义和管理虚拟 GPU (vGPU)资源。您可以使用此配置更有效地在所有物理 GPU 设备间划分渲染的工作负载,并更好地控制调度启用了 vGPU 的实例。

要在 Compute (nova)服务中启用 vGPU,请创建您的云用户可以使用 vGPU 设备创建 Red Hat Enterprise Linux (RHEL)实例的类别。然后,每个实例都可以支持使用与物理 GPU 设备对应的虚拟 GPU 设备的 GPU 工作负载。

Compute 服务跟踪您为每个主机上定义的每个 GPU 配置集可用的 vGPU 设备数量。Compute 服务根据类别将实例调度到这些主机,附加设备,并持续监控使用情况。删除实例时,计算服务会将 vGPU 设备重新添加到可用池中。

重要

红帽在 RHOSP 中使用 NVIDIA vGPU,而无需支持例外。但是,红帽不为 NVIDIA vGPU 驱动程序提供技术支持。NVIDIA vGPU 驱动程序由 NVIDIA 提供并支持。您需要 NVIDIA 认证的支持服务订阅来获取 NVIDIA vGPU 软件的 NVIDIA Enterprise 支持。对于由于无法使用 NVIDIA vGPU 导致在支持的组件中无法重现问题的问题,会应用以下支持政策:

12.1. 支持的配置和限制

支持的 GPU 卡

有关支持的 NVIDIA GPU 卡列表,请参阅 NVIDIA 网站上的 虚拟 GPU 软件支持的产品

使用 vGPU 设备时的限制

  • 每个 Compute 节点上只能启用一个 vGPU 类型。
  • 每个实例只能使用一个 vGPU 资源。
  • 不支持在主机间实时迁移 vGPU 实例。
  • 不支持撤离 vGPU 实例。
  • 如果您需要重新引导托管 vGPU 实例的 Compute 节点,则 vGPU 不会自动重新分配给重新创建的实例。您必须在重启 Compute 节点前冷迁移实例,或者在重新引导后手动将每个 vGPU 分配给正确的实例。要手动分配每个 vGPU,您必须在重启前从 Compute 节点上运行的每个 vGPU 实例的实例 XML 检索 mdev UUID。您可以使用以下命令为每个实例发现 mdev UUID:

    # virsh dumpxml <instance_name> | grep mdev

    <instance_name > 替换为 libvirt 实例名称 OS-EXT-SRV-ATTR:instance_name,在 /servers 请求中返回给 Compute API。

  • 由于 libvirt 限制,不支持对支持 vGPU 的实例上挂起操作。相反,您可以对实例进行快照或升级。
  • 在具有 vGPU 实例类型的实例上调整大小和冷迁移操作不会自动将 vGPU 资源重新分配给实例。在调整或迁移实例后,您必须手动重建它来重新分配 vGPU 资源。
  • 默认情况下,Compute 主机上的 vGPU 类型不会向 API 用户公开。若要授予访问权限,请将主机添加到主机聚合中。如需更多信息,请参阅创建和管理主机聚合
  • 如果使用 NVIDIA 加速器硬件,您必须符合 NVIDIA 许可证要求。例如,Nvidia vGPU GRID 需要许可服务器。有关 NVIDIA 许可要求的更多信息,请参阅 NVIDIA 网站上的 NVIDIA 许可证服务器发行注记