H3C GPU UIS Manager 访问单物理GPU用户指南
H3C GPU UIS Manager 访问单个物理GPU

关于 vGPU

超过view

GPU 虚拟化使多个 VM 能够同时直接访问单个物理 GPU,方法是将物理 GPU 虚拟化为称为虚拟 GPU (vGPU) 的逻辑 GPU。

NVIDIA GRID vGPU 在安装有 NVIDIA GRID GPU 的主机上运行,​​为提供高性能图形服务(例如复杂的 2D 图形处理和 3D 图形渲染)的 VM 提供 vGPU 资源。

H3C UIS Manager 使用 NVIDIA GRID vGPU 技术和智能资源调度 (iRS) 来提供可调度的 vGPU 资源。 为了最大限度地提高使用率,UIS Manager 池化 vGPU 并根据 vGPU 的使用状态和 VM 的优先级将它们动态分配给 VM 组。

机制

GPU 虚拟化 

GPU 虚拟化操作如下: 

  1. 物理 GPU 使用 DMA 直接获取图形应用程序向 NVIDIA 驱动程序发出的指令并处理这些指令。
  2. 物理 GPU 将渲染数据放入 vGPU 的帧缓冲区中。
  3. NVIDIA 驱动程序从物理帧缓冲区中提取渲染数据。

图1 GPU虚拟化机制

GPU 虚拟化

UIS Manager 集成了 NVIDIA vGPU Manager,这是 GPU 虚拟化的核心组件。 NVIDIA vGPU Manager 将一个物理 GPU 划分为多个独立的 vGPU。 每个 vGPU 都可以独占访问固定数量的帧缓冲区。 所有驻留在物理 GPU 上的 vGPU 通过时分复用依次垄断 GPU 的引擎,包括图形 (3D)、视频解码和视频编码引擎

智能 vGPU 资源调度 

智能 vGPU 资源调度将集群中主机的 vGPU 资源分配给一组提供相同服务的虚拟机的 GPU 资源池。 VM 组中的每个 VM 都分配有一个服务模板。 服务模板定义了使用该服务模板的虚拟机使用物理资源的优先级以及所有使用该服务模板的虚拟机可以使用的资源的总比例。 当虚拟机启动或重启时,UIS Manager根据其服务模板优先级、资源池的资源使用情况以及配置相同服务模板的所有虚拟机使用资源的总比例为该虚拟机分配资源。

UIS Manager 使用以下规则分配 vGPU 资源:

  • 如果 VM 使用具有相同优先级的服务模板,则在 VM 启动序列中分配 vGPU 资源。
  • 如果空闲 vGPU 少于要引导的 VM,则按优先级降序分配 vGPU 资源。 例如amp即,一个资源池包含 10 个 vGPU,一个 VM 组包含 12 个 VM。 虚拟机 1 到 4 使用服务模板 A,该模板具有低优先级,允许其虚拟机使用资源池中 20% 的 vGPU。 虚拟机 5 到 12 使用服务模板 B,该模板具有高优先级并允许其虚拟机使用资源池中 80% 的 vGPU。 当所有 VM 同时启动时,UIS Manager 首先将 vGPU 资源分配给 VM 5 到 12。在 VM 1 到 4 中,首先启动的两个 VM 分配了剩余的两个 vGPU。
  • 满足以下条件时,回收部分低优先级虚拟机的 vGPU 资源,并将 vGPU 资源分配给高优先级虚拟机:
    • 空闲 vGPU 少于要引导的高优先级 VM。
    • 使用相同的低优先级服务模板的虚拟机使用的资源多于服务模板中指定的资源比例。

例如amp即,一个资源池包含 10 个 vGPU,一个 VM 组包含 12 个 VM。 虚拟机 1 到 4 使用服务模板 A,该模板具有低优先级,允许其虚拟机使用资源池中 20% 的 vGPU。 虚拟机 5 到 12 使用服务模板 B,该模板具有高优先级并允许其虚拟机使用资源池中 80% 的 vGPU。 VM 1 到 10 正在运行,VM 1 到 4 使用四个 vGPU。 当 VM 11 和 VM 12 启动时,UIS 管理器从 VM 1 到 4 回收两个 vGPU,并将它们分配给 VM 11 和 VM 12。

限制和准则

要提供 vGPU,物理 GPU 必须支持 NVIDIA GRID vGPU 解决方案。

配置 vGPU 

本章介绍如何在 UIS Manager 中将 vGPU 附加到 VM。 

先决条件
  • 在服务器上安装 NVIDIA GRID vGPU 兼容的 GPU 以提供 vGPU。 有关 GPU 安装的更多信息,请参阅服务器的硬件安装指南。
  • 从 NVIDIA 下载 Virtual GPU License Manager 安装程序、gpumodeswitch 工具和 GPU 驱动程序 web地点。
  • 部署 NVIDIA 许可证服务器并请求 NVIDIA vGPU 许可证,如“部署 NVIDIA 许可证服务器”和“(可选)请求 VM 许可证”中所述。
限制和准则
  • 每个 VM 都可以连接到一个 vGPU。
  • 物理 GPU 可以提供相同类型的 vGPU。 显卡的物理 GPU 可以提供不同类型的 vGPU。
  • 具有驻留 vGPU 的物理 GPU 不能用于 GPU 直通。 通过物理 GPU 无法提供 vGPU。
  • 确保 GPU 在图形模式下运行。 如果 GPU 在计算模式下运行,请按照 gpumodeswitch 用户指南中的说明将其模式设置为图形。
程序

本节使用运行 64 位 Windows 7 的 VM 作为 examp文件来描述如何将 vGPU 附加到 VM。

创建 vGPU 

  1. 在顶部导航栏上,单击主机。
  2. 选择主机进入主机汇总页面。
  3. 单击硬件配置选项卡。
  4. 单击 GPU 设备选项卡。
    图2 GPU列表
    GPU 设备选项卡
  5. 点击 图标 GPU 的图标。
  6. 选择 vGPU 类型,然后单击确定。
    图 3 添加 vGPU
    添加 vGPU

将 vGPU 附加到 VM

  1. 在顶部导航栏上,单击服务,然后从导航窗格中选择 iRS。
    图 4 iRS 服务列表
    将 vGPU 附加到 VM
  2. 单击添加 iRS 服务。
  3. 配置iRS服务的名称和描述,资源类型选择vGPU,点击下一步。
    图 5 添加 iRS 服务
    添加 iRS 服务
  4. 选择目标 vGPU 池名称,选择要分配给 vGPU 池的 vGPU,然后单击“下一步”。
    图 6 将 vGPU 分配给 vGPU 池
    将 vGPU 分配给 vGPU 池
  5. 单击“添加”以添加服务虚拟机。
  6. 点击 图标 VM 字段的图标。
    图 7 添加服务虚拟机
    添加服务虚拟机
  7. 选择服务虚拟机,然后单击确定。
    所选 VM 必须处于关闭状态。 如果您选择多个服务虚拟机,它们将被分配相同的服务模板和优先级。 您可以再次执行添加操作,将不同的服务模板分配给另一组服务虚拟机。
    图 8 选择服务虚拟机
    选择服务虚拟机
  8. 单击服务模板字段的图标。
  9. 选择服务模板并单击“确定”。
    有关服务模板的更多信息,请参阅“智能 vGPU 资源调度”和“(可选)创建服务模板”。
    图 9 选择服务模板
    选择服务模板
  10. 单击“完成”。
    添加的 iRS 服务出现在 iRS 服务列表中。
    图 10 iRS 服务列表 
    国税局服务清单
  11. 从左侧导航窗格中,选择添加的 vGPU 池。
  12. 在虚拟机选项卡上,选择要引导的虚拟机,右键单击虚拟机列表,然后选择启动。
    图 11 启动服务虚拟机
    启动服务虚拟机
  13. 在打开的对话框中,单击“确定”。
  14. 右键单击虚拟机,在快捷菜单中选择控制台,等待虚拟机启动。
  15. 在 VM 上,打开设备管理器,然后选择显示适配器以验证 vGPU 是否已连接到 VM。
    要使用 vGPU,您必须在 VM 上安装 NVIDIA 图形驱动程序。
    图 12 设备管理器
    装置经理

在 VM 上安装 NVIDIA 图形驱动程序 

  1. 下载匹配的 NVIDIA 图形驱动程序并将其上传到 VM。
  2. 双击驱动安装程序,按照安装向导安装驱动。
    图 13 安装 NVIDIA 图形驱动程序
    NVIDIA 显卡驱动程序
  3. 重新启动虚拟机。
    安装 NVIDIA 图形驱动程序后,VNC 控制台不可用。 请通过 RGS 或 Mstsc 等远程桌面软件访问虚拟机。
  4. 通过远程桌面软件登录虚拟机。
  5. 打开设备管理器,然后选择显示适配器以验证连接的 vGPU 的型号是否正确。
    图 14 显示 vGPU 信息
    显示 vGPU 信息

(可选)申请虚拟机许可 

  1. 登录到虚拟机。
  2. 右键单击桌面,然后选择 NVIDIA 控制面板。
    图 15 NVIDIA 控制面板
    NVIDIA 控制面板
  3. 从左侧导航窗格中,选择许可 > 管理许可证。 输入 NVIDIA 许可证服务器的 IP 地址和端口号,然后单击应用。 有关部署 NVIDIA 许可证服务器的更多信息,请参阅“部署 NVIDIA 许可证服务器”。
    图 16 指定 NVIDIA 许可证服务器
    许可证服务器

(可选)编辑虚拟机的 vGPU 类型 

  1. 创建目标类型的 iRS vGPU 池。
    图 17 vGPU 池列表
    界面
  2. 在顶部导航栏上,单击虚拟机。
  3. 单击处于关机状态的虚拟机名称。
  4. 在虚拟机摘要页面上,单击编辑。
    图 18 VM 摘要页面
    摘要页面
  5. 从菜单中选择更多 > GPU 设备。
    图 19 添加 GPU 设备
    添加 GPU 设备
  6. 点击 图标 资源池字段的图标。
  7. 选择目标 vGPU 池,然后单击确定。
    图 20 选择 vGPU 池
    选择 vGPU 池
  8. 单击“应用”。

(可选)创建服务模板 

在创建服务模板之前,需要修改系统自定义服务模板的资源分配比例。 确保所有服务模板的资源分配比例之和不超过100%。

创建服务模板: 

  1. 在顶部导航栏上,单击服务,然后从导航窗格中选择 iRS。
    图 21 iRS 服务列表
    导航窗格
  2. 单击服务模板。
    图 22 服务模板列表
    服务模板列表
  3. 单击“添加”。
    图 23 添加服务模板
    添加服务模板
  4. 输入服务模板的名称和描述,选择优先级,然后单击下一步。
  5. 配置以下参数
    范围 描述
    优先事项 指定使用服务模板的虚拟机使用物理资源的优先级。 当使用低优先级服务模板的虚拟机的资源使用率超过分配的资源比例时,系统会回收这些虚拟机的资源,以保证使用高优先级服务模板的虚拟机有足够的资源使用。 如果使用低优先级服务模板的虚拟机的资源使用率没有超过分配的资源比例,则系统不会回收这些虚拟机的资源。
    分配比率 指定要分配给服务模板的 iRS 服务中的资源比率。 例如ample,如果 10 个 GPU
    参与 iRS 且一个服务模板的分配比例为 20%,该服务模板将分配 2 个 GPU。 所有服务模板的总分配比例不能超过100%。
    服务停止命令 指定虚拟机操作系统可以执行的命令,释放该虚拟机占用的资源,让其他虚拟机可以使用该资源。 例如ample,您可以输入关机命令。
    结果返回 指定 UIS 管理器使用的结果,通过将返回的结果与此参数匹配来确定用于停止服务的命令是否已成功执行。
    失败时的动作 指定停止服务失败时要执行的操作。
    • 查找下一个— 系统尝试停止其他虚拟机的服务以释放资源。
    • 关闭虚拟机——系统关闭当前虚拟机释放资源。

    图 24 为服务模板配置资源分配
    服务模板

  6. 点击 结束。

附录 A NVIDIA vGPU 解决方案

NVIDIA vGPU 超过view 

NVIDIA vGPU 分为以下类型:

  • Q 系列——面向设计师和高级用户。
  • B 系列——适用于高级用户。
  • A 系列——适用于虚拟应用程序用户。

每个 vGPU 系列都有固定数量的帧缓冲区、支持的显示头数量和最大分辨率。

物理 GPU 的虚拟化基于以下规则:

  • vGPU 是基于特定帧缓冲区大小在物理 GPU 上创建的。
  • 驻留在物理 GPU 上的所有 vGPU 具有相同的帧缓冲区大小。 物理 GPU 无法为 vGPU 提供不同的帧缓冲区大小。
  • 显卡的物理 GPU 可以提供不同类型的 vGPU

例如amp即,一块 Tesla M60 显卡有两个物理 GPU,每个 GPU 有一个 8 GB 的帧缓冲区。 GPU 可以为 vGPU 提供 0.5 GB、1 GB、2 GB、4 GB 或 8 GB 的帧缓冲区。 下表显示了 Tesla M60 支持的 vGPU 类型

虚拟GPU 类型 以 MB 为单位的帧缓冲区 最大限度。 显示头 最大限度。 每个显示头的分辨率 最大限度。 每个 GPU 的 vGPU 最大限度。 vGPU 每张显卡
M60-8Q 8192 4 4096 × 2160 1 2
M60-4Q 4096 4 4096 × 2160 2 4
M60-2Q 2048 4 4096 × 2160 4 8
M60-1Q 1024 2 4096 × 2160 8 16
M60-0Q 512 2 2560 × 1600 16 32
M60-2B 2048 2 4096 × 2160 4 8
M60-1B 1024 4 2560 × 1600 8 16
M60-0B 512 2 2560 × 1600 16 32
M60-8A 8192 1 1280 × 1024 1 2
M60-4A 4096 1 1280 × 1024 2 4
M60-2A 2048 1 1280 × 1024 4 8
M60-1A 1024 1 1280 × 1024 8 16

UIS Manager 不支持具有 512 MB 帧缓冲区的 vGPU,例如 M60-0Q 和 M60-0B。 有关 NVIDIA GPU 和 vGPU 的更多信息,请参阅 NVIDIA 的虚拟 GPU 软件用户指南。

vGPU 许可 

VIDIA GRID vGPU 是许可产品。 虚拟机从 NVIDIA vGPU 许可证服务器获取许可证以在启动时启用所有 vGPU 功能,并在关闭时返回许可证。

图 25 NVIDIA GRID vGPU 许可

NVIDIA GRID vGPU 许可

以下 NVIDIA GRID 产品可作为 NVIDIA Tesla GPU 上的许可产品使用:

  • 虚拟工作站。
  • 虚拟电脑。
  • 虚拟应用程序。

下表显示了 GRID 许可证版本:

GRID 许可版 网格特征 支持的 vGPU
GRID 虚拟应用程序 PC级应用。 A 系列 vGPU
网格虚拟 PC 为需要在 Windows 上使用 PC 应用程序提供出色用户体验的用户提供业务虚拟桌面, Web 浏览器和高清视频。  

B 系列 vGPU

网格虚拟工作站 适用于需要访问远程专业图形应用程序的中端和高端工作站用户的工作站。 Q 系列和 B 系列 vGPU
部署 NVIDIA 许可证服务器 

平台硬件要求 

要安装 NVIDIA 许可证服务器的 VM 或物理主机必须至少有两个 CPU 和 4 GB 内存。 在具有四个或更多 CPU 和 150000 GB 内存的 VM 或物理主机上运行时,NVIDIA 许可证服务器最多支持 16 个许可客户端。

平台软件要求 

  • JRE - 32 位,JRE1.8 或更高版本。 在安装 NVIDIA 许可证服务器之前,请确保已在平台上安装了 JRE。
  • NET Framework — Windows 上的 .NET Framework 4.5 或更高版本。
  • Apache Tomcat — Apache Tomcat 7.x 或 8.x。 适用于 Windows 的 NVIDIA 许可证服务器的安装程序包包含一个 Apache Tomcat 包。 对于 Linux,您必须先安装 Apache Tomcat,然后再安装 NVIDIA 许可证服务器。
  • Web 浏览器 - 高于 Firefox 17、Chrome 27 或 Internet Explorer 9。

平台配置要求 

  • 平台必须有固定的 IP 地址。
  • 该平台必须至少有一个不变的以太网 MAC 地址,在注册服务器和在 NVIDIA 软件许可中心生成许可证时用作唯一标识符。
  • 必须准确设置平台的日期和时间。

网络端口和管理接口 

许可证服务器需要在平台的防火墙中打开 TCP 端口 7070,以便向客户端提供许可证。 默认情况下,安装程序会自动打开此端口。

许可证服务器的管理界面是 web-基于,并使用 TCP 端口 8080。要从托管许可证服务器的平台访问管理界面,请访问 http://localhost:8080/licserver . 要从远程 PC 访问管理界面,请访问 http://<license 服务器 ip>:8080/licserver。

安装和配置 NVIDIA 许可证服务器 
  • 在 H3C UIS Manager 上,创建一个满足 NVIDIA License Server 部署平台要求的虚拟机。
  • 按照虚拟 GPU 软件许可证服务器用户指南的安装 NVIDIA vGPU 软件许可证服务器一章中的说明安装 NVIDIA 许可证管理器。 该章提供了 Windows 和 Linux 的安装先决条件和过程。
  • 按照虚拟 GPU 软件许可证服务器用户指南的 NVIDIA vGPU 软件许可证服务器一章的管理器许可证中的说明配置 NVIDIA 许可证服务器。

文件/资源

H3C GPU UIS Manager 访问单个物理GPU [pdf] 用户指南
GPU、UIS 管理器访问单个物理 GPU、UIS 管理器、访问单个物理、单个物理

参考

发表评论

您的电子邮件地址不会被公开。 必填字段已标记 *