准备主机以处理图形

本部分内容提供有关如何为受支持的图形虚拟化技术准备 XenServer 的分步说明。产品/服务包括 NVIDIA vGPU、Intel GVT-d 和 Intel GVT-g。

NVIDIA vGPU

NVIDIA vGPU 允许多个虚拟机 (VM) 同时直接访问单个物理 GPU。此 vGPU 使用在非虚拟化操作系统中部署的 NVIDIA 图形驱动程序。NVIDIA 物理 GPU 可以支持多个虚拟 GPU 设备 (vGPU)。物理 GPU 必须受在 XenServer 控制域 (dom0) 中运行的 NVIDIA Virtual GPU Manager 控制,才能提供此支持。可以直接将 vGPU 分配给 VM。

VM 使用虚拟 GPU 的方式与虚拟机管理程序直通的物理 GPU 类似。对于性能关键型快速路径,在 VM 中加载的 NVIDIA 驱动程序能够直接访问 GPU。该驱动程序还向 NVIDIA Virtual GPU Manager 提供半虚拟化的界面。

重要提示:

为确保始终获得最新的安全和功能修复,请确保安装适用于 XenServer 的最新 NVIDIA vGPU 软件包(由适用于 XenServer 的 NVIDIA Virtual GPU Manager 和 NVIDIA 驱动程序组成),并将其更新到 NVIDIA 提供的最新版本。有关详细信息,请参阅 NVIDIA 文档

可从 NVIDIA NVOnline 获取最新的 NVIDIA 驱动程序。

NVIDIA vGPU 与 Citrix Virtual Apps and Desktops 或 Citrix DaaS 的 HDX 3D Pro 功能兼容。有关详细信息,请参阅 HDX 3D Pro

许可备注

NVIDIA vGPU 适用于 XenServer Premium Edition 客户。要了解有关 XenServer 版本以及如何升级的详细信息,请访问 XenServer Web 站点。有关详细信息,请参阅许可

可能需要 NVIDIA 订阅或许可证,具体取决于使用的 NVIDIA 图形卡。

有关许可使用 NVIDIA 卡的信息,请参阅 NVIDIA Web 站点

可用的 NVIDIA vGPU 类型

NVIDIA GRID 卡包含多个图形处理器 (GPU)。例如,TESLA M10 卡包含四个 GM107GL GPU,TESLA M60 卡包含两个 GM204GL GPU。每个物理 GPU 可以托管多个不同类型的虚拟 GPU (vGPU)。vGPU 类型具有固定数量的帧缓冲区、受支持的显示头数量和最大分辨率,并且适用于不同种类的工作负载。

有关最新支持的 NVIDIA 卡的列表,请参阅硬件兼容性列表NVIDIA 产品信息

注意:

同时托管在物理 GPU 上的 vGPU 的类型必须全部相同。但是,对同一个卡上的物理 GPU 没有相应的限制。此限制是自动的,可能会导致出现意外的容量规划问题。

NVIDIA vGPU 系统要求

  • NVIDIA GRID 卡:

  • 可能需要 NVIDIA 订阅或许可证,具体取决于使用的 NVIDIA 图形卡。有关详细信息,请参阅 NVIDIA 产品信息

  • 您可能需要确保将图形卡设置为正确的模式,具体取决于 NVIDIA 图形卡的不同。有关详细信息,请参阅 NVIDIA 文档

  • XenServer Premium Edition。

  • 能够托管 XenServer 和受支持的 NVIDIA 卡的服务器。

  • 适用于 XenServer 的 NVIDIA vGPU 软件包,由适用于 XenServer 的 NVIDIA Virtual GPU Manager 和 NVIDIA 驱动程序组成。

    注意:

    请查看 NVIDIA Web 站点上提供的 NVIDIA 虚拟 GPU 软件文档。在 NVIDIA 中注册以访问这些组件。

  • 要在运行 NVIDIA vGPU 的 VM 中运行 Citrix Virtual Desktops,还需要:Citrix Virtual Desktops 7.6 或更高版本,完整安装。

  • 对于 NVIDIA Ampere vGPU 和所有将来的版本,您必须在系统固件中启用 SR-IOV。

vGPU 实时迁移

XenServer 允许使用实时迁移、存储实时迁移,并且能够挂起和恢复启用了 NVIDIA vGPU 的 VM。

要使用 vGPU 实时迁移、存储实时迁移或挂起功能,需满足以下要求:

  • NVIDIA GRID 卡 Maxwell 系列或更高版本。

  • 适用于启用了实时迁移的 XenServer 的 NVIDIA Virtual GPU Manager。有关详细信息,请参阅 NVIDIA 文档。

  • 安装了启用了 NVIDIA 实时迁移的 vGPU 驱动程序的 Windows VM。

vGPU 实时迁移允许在池内使用实时迁移、在池之间使用实时迁移以及使用存储实时迁移和启用了 vGPU 的 VM 的挂起/恢复。

准备概述

  1. 安装 XenServer

  2. 安装适用于 XenServer 的 NVIDIA Virtual GPU Manager

  3. 重新启动 XenServer 主机

在 XenServer 上安装

可从 XenServer 下载页面下载 XenServer。

安装以下对象:

  • XenServer 基础安装 ISO

  • XenCenter Windows 管理控制台

有关详细信息,请参阅安装

许可备注

vGPU 适用于 XenServer Premium Edition 客户。要了解有关 XenServer 版本以及如何升级的详细信息,请访问 XenServer Web 站点。有关详细信息,请参阅许可

可能需要 NVIDIA 订阅或许可证,具体取决于使用的 NVIDIA 图形卡。有关详细信息,请参阅 NVIDIA 产品信息

有关许可使用 NVIDIA 卡的信息,请参阅 NVIDIA Web 站点

安装适用于 XenServer 的 NVIDIA vGPU Manager

安装可以从 NVIDIA 获取的 NVIDIA Virtual GPU 软件。NVIDIA Virtual GPU 软件包括:

  • NVIDIA Virtual GPU Manager

  • Windows 显示驱动程序(Windows 显示驱动程序取决于 Windows 版本)

NVIDIA Virtual GPU Manager 在 XenServer 控制域 (dom0) 中运行。该管理器以补充包或 RPM 文件的形式提供。有关安装的详细信息,请参阅 NVIDIA 虚拟 GPU 软件文档

更新可以通过以下方法之一进行安装:

  • 使用 XenCenter(工具 > 安装更新 > 从磁盘中选择更新或补充包
  • 使用 xe CLI 命令 xe-install-supplemental-pack

注意:

如果要使用 RPM 文件安装 NVIDIA Virtual GPU Manager,请务必先将 RPM 文件复制到 dom0,然后再进行安装。

  1. 使用 rpm 命令安装软件包:

    rpm -iv <vgpu_manager_rpm_filename>
    <!--NeedCopy-->
    
  2. 重新启动 XenServer 主机:

    shutdown -r now
    <!--NeedCopy-->
    
  3. 重新启动 XenServer 主机后,请通过检查 NVIDIA 内核驱动程序来验证是否已正确安装并加载该软件:

    [root@xenserver ~]#lsmod |grep nvidia
        nvidia            8152994 0
    <!--NeedCopy-->
    
  4. 确认 NVIDIA 内核驱动程序能够成功与您的主机中的 NVIDIA 物理 GPU 通信。运行 nvidia-smi 命令以在您的平台中生成类似于以下内容的 GPU 列表:

    [root@xenserver ~]# nvidia-smi
    
        Thu Jan 26 13:48:50 2017
        +----------------------------------------------------------+|
        NVIDIA-SMI 367.64  Driver Version: 367.64                  |
        -------------------------------+----------------------+
         GPU Name    Persistence-M| Bus-Id   Disp.A | Volatile Uncorr. ECC|
        Fan Temp  Perf  Pwr:Usage/Cap| Memory-Usage | GPU-Util  Compute M.|
        ===============================+======================+======================|
        |  0 Tesla M60       On | 0000:05:00.0    Off|   Off |
        | N/A  33C  P8    24W / 150W |   7249MiB /  8191MiB |      0%      Default  |
        +-------------------------------+----------------------+----------------------+
        |  1 Tesla M60       On | 0000:09:00.0    Off |  Off |
        | N/A  36C  P8    24W / 150W |   7249MiB /  8191MiB |      0%      Default  |
        +-------------------------------+----------------------+----------------------+
        |  2 Tesla M60       On | 0000:85:00.0    Off |  Off |
        | N/A  36C  P8    23W / 150W |   19MiB /  8191MiB |        0%      Default  |
        +-------------------------------+----------------------+----------------------+
        |  3 Tesla M60       On | 0000:89:00.0    Off |  Off |
        | N/A  37C    P8    23W / 150W |     14MiB /  8191MiB |    0%      Default  |
        +-------------------------------+----------------------+----------------------+
        +-----------------------------------------------------------------------------+
        | Processes:                 GPU Memory |
        | GPU    PID  Type  Process name    Usage   |
        |=============================================================================|
        | No running compute processes found |
        +-----------------------------------------------------------------------------+
    <!--NeedCopy-->
    

    注意:

    在 RAM 超过 768 GB 的 XenServer 服务器中使用 NVIDIA vGPU 时,请将参数 iommu=dom0-passthrough 添加到 Xen 命令行:

    1. 在控制域 (Dom0) 中运行以下命令:

      /opt/xensource/libexec/xen-cmdline –-set-xen iommu=dom0-passthrough

    2. 重新启动 主机。

Intel GVT-d 和 GVT-g

XenServer 支持 Intel 虚拟 GPU (GVT-g),即一种不需要额外硬件的图形加速解决方案。它使用某些 Intel 处理器中嵌入的 Intel Iris Pro 功能,以及在 VM 内部安装的标准 Intel GPU 驱动程序。

为了确保您始终具有最新的安全性和功能性修复,请务必安装 Intel 为您的 VM 和主机上的固件提供的任何更新。

Intel GVT-d 和 GVT-g 与 Citrix Virtual Apps and Desktops 或 Citrix DaaS 的 HDX 3D Pro 功能兼容。有关详细信息,请参阅 HDX 3D Pro

注意:

由于处理器中嵌入了 Intel Iris Pro 图形功能,因此,CPU 密集型应用程序会导致电源从 GPU 转移。因此,您可能体验不到对纯 GPU 密集型工作负载所执行的完整图形加速功能。

Intel GVT-g 系统要求和配置(已弃用)

要使用 Intel GVT-g,您的 XenServer 主机必须具有以下硬件:

  • 具有 Iris Pro 图形的 CPU。必须在硬件兼容性列表中将此 CPU 作为图形支持的 CPU 列出
  • 启用了图形功能的芯片组的主板。例如,适用于 Xeon E3 v4 CPU 的 C226,或适用于 Xeon E3 v5 CPU 的 C236。

注意:

在 Intel GPU 直通 (GVT-d) 与 Intel 虚拟 GPU (GVT-g) 之间切换时,请务必重新启动主机。

配置 Intel GVT-g 时,特定 XenServer 主机上支持的 Intel 虚拟 GPU 的数量取决于其 GPU 条大小。GPU 条大小在系统固件中称为“Aperture size”。我们建议您将 Aperture 大小设置为 1024 MB,以支持每个主机最多配备七个虚拟 GPU。

如果将 Aperture 大小配置为 256 MB,则只有一个 VM 能够在主机上启动。将其设置为 512 MB 会导致只有三个 VM 在 XenServer 主机上启动。超过 1024 MB 的 Aperture 大小不受支持,并且增加在主机上启动的 VM 数量。

启用 Intel GPU 直通

XenServer 支持对使用 Intel 集成 GPU 设备的 Windows VM 使用 GPU 直通功能。

  • 有关 Intel GPU 直通支持的 Windows 版本的详细信息,请参阅图形
  • 有关受支持硬件的详细信息,请参阅硬件兼容性列表

在 Intel 服务器上使用 Intel GPU 时,XenServer 服务器的控制域 (dom0) 将有权访问集成 GPU 设备。在此类情况下,GPU 可用于直通。要在 Intel 服务器上使用 Intel GPU 直通功能,请在将 GPU 传递到 VM 之前禁用 dom0 与 GPU 之间的连接。

要禁用此连接,请完成以下步骤:

  1. 资源窗格中,选择 XenServer 主机。

  2. 常规选项卡上,单击属性,然后单击左侧窗格中的 GPU

  3. 集成 GPU 直通部分中,选择此服务器将不使用集成 GPU

    集成 GPU 直通界面

    此步骤将禁用 dom0 与 Intel 集成 GPU 设备之间的连接。

  4. 单击确定

  5. 重新启动 XenServer 主机以使更改生效。

    Intel GPU 现在将在创建新 VM 过程中在“GPU 类型”列表中以及 VM 的属性选项卡中显示。

    注意:

    禁用 dom0 与 GPU 之间的连接后,XenServer 主机的外部控制台输出(例如 VGA、HDMI、DP)将不可用。

准备主机以处理图形