注意:
- 本教程需要访问 Oracle Cloud。要注册免费账户,请参阅开始使用 Oracle Cloud Infrastructure 免费套餐。
- 它对 Oracle Cloud Infrastructure 身份证明、租户和区间使用示例值。完成实验室后,请使用特定于云环境的那些值替换这些值。
在 Oracle Cloud Infrastructure 上部署 NVIDIA RTX 虚拟工作站
简介
NVIDIA RTX Virtual Workstation 软件支持用户在云端运行高性能模拟、图形渲染和设计工作负载,具有类似原生工作站的性能。它解锁了图形 API(如 OpenGL 或 DirectX)提供的强大渲染功能,为云带来了突破性的图形性能。
目标
- 利用 RTX 和 NVIDIA 虚拟 GPU 技术,在 Oracle Cloud Infrastructure (OCI) 上使用支持 NVIDIA A10 GPU 的计算配置。
任务 1:在 OCI 上为 NVIDIA RTX 虚拟工作站预配计算实例
-
从这些可用的 GPU.A10 配置中选择一个。
VM.GPU.A10.1 VM.GPU.A10.2 BM.GPU.A10.4
-
启动计算实例时,配置更改为上述配置之一。要启动 GPU.A10 VM,请单击 Specialty and Previous Generation(专业和上一代),然后选择 VM.GPU.A10 配置之一。对于裸金属服务器,单击裸金属机并选择 BM.GPU.A10.4 配置。
-
如果您的租户没有为 GPU.A10 设置服务限制,则这些配置将不在配置列表中。
-
要在 OCI 控制台中检查租户限制,请设置要预配 GPU.A10 计算实例的区域,打开导航菜单,然后单击监管和管理。
-
在 Tenancy Management(租户管理)下,选择 Limits(限制)、Quotas and Usage(限额和使用情况)。
-
将服务设置为计算,在范围中选择一个可用性域,然后在资源中输入 GPU.A10 。
-
为基于 A10 的 VM 和 BM 实例选择 GPU 。
-
-
计算限制按可用性域划分。检查是否在该区域的任何可用性域中设置了限制。如果所有可用性域的服务限制都设置为 0,请单击请求提高服务限制,然后为此资源提交提高限制请求。有关服务限制的更多信息,请参阅服务限制。
注:要访问限制、限额和使用,您必须是租户管理员组的成员,或者您的组必须分配策略以读取 LimitsAndUsageViewers。
-
目前,OCI GPU.A10 计算配置支持 Oracle Linux、Ubuntu 和 Rocky Linux。Windows 仅受 VM 配置支持。
注意: NVIDIA 官方不支持 Rocky Linux。
-
在 OCI 上预配计算实例时,请使用标准 OS 映像。请勿使用启用了 GPU 的映像,因为安装的 NVIDIA GPU 驱动程序不支持需要安装 NVIDIA vGPU 驱动程序的 RTX 虚拟工作站 (virtual workstation,vWS)。
任务 2:下载并安装 NVIDIA vGPU 驱动程序
-
按下载 NVIDIA vGPU 软件中所述下载 NVIDIA vGPU 驱动程序。如果您没有 NVIDIA 企业账户,您可以在虚拟 GPU (vGPU) 软件免费 90Days 试用版— NVIDIA 中注册试用。
-
使用您的 NVIDIA Enterprise 账户登录到 NVIDIA Enterprise Application HUB。
-
打开 NVIDIA 许可门户并选择 Software Downloads(软件下载)。应用以下过滤器:
-
产品系列:输入 VGPU 。
-
平台:输入 Linux KVM 。
-
-
按发行日期排序,并使用适用于 Linux KVM 平台的最新 vGPU 驱动程序版本下载软件包。例如,当前最新的 vGPU 版本是 17.4。
-
解压缩该文件并转到
Guest_Drivers
文件夹。您可以在其中找到适用于 Windows 和 Linux 的 vGPU 驱动程序安装文件。
注:如果使用的是 Linux,请按照任务 3、4、5,如果使用的是 Windows,请转至任务 6。
任务 3:在 Linux 上安装 NVIDIA vGPU 驱动程序
-
Oracle Linux 8
-
将 NVIDIA Linux 驱动程序
NVIDIA-Linux-x86_64-xxx.xx.xx-grid.run
复制到预配的计算实例。 -
在安装 NVIDIA 驱动程序之前,请运行以下命令来安装和启用
gcc-12
工具集。sudo dnf install gcc-toolset-12 scl enable gcc-toolset-12 bash
-
您还需要禁用与 NVIDIA 驱动程序冲突的
nouveau
驱动程序。运行以下命令检查是否装入了nouveau
驱动程序。lsmod | grep nouveau
-
如果在命令的输出中显示
nouveau
驱动程序,则需要先将其禁用。要在 Oracle Linux 上禁用nouveau
驱动程序,请创建/etc/modprobe.d/blacklist-nouveau.conf
文件并添加以下内容。blacklist nouveau options nouveau modeset=0
-
保存文件并重新生成 initramfs。
sudo dracut --force
-
禁用驱动程序后,重新引导服务器。
sudo reboot
-
运行以下命令以安装 NVIDIA vGPU 驱动程序。
sudo bash ./NVIDIA-Linux-x86_64-xxx.xxx.xx-grid.run
-
忽略警告,然后单击 OK 继续安装。重新引导服务器。
sudo reboot
-
-
Oracle Linux 9
-
将 NVIDIA Linux 驱动程序
NVIDIA-Linux-x86_64-xxx.xx.xx-grid.run
复制到预配的计算实例。 -
您还需要禁用与 NVIDIA 驱动程序冲突的
nouveau
驱动程序。运行以下命令检查是否已装入nouveau
驱动程序。lsmod | grep nouveau
-
如果在命令的输出中显示
nouveau
驱动程序,则需要先将其禁用。要在 Oracle Linux 上禁用nouveau
驱动程序,请创建/etc/modprobe.d/blacklist-nouveau.conf
文件并添加以下内容。blacklist nouveau options nouveau modeset=0
-
保存文件并重新生成 initramfs。
sudo dracut --force
-
禁用驱动程序后,重新引导服务器。
sudo reboot
-
运行以下命令以安装 NVIDIA vGPU 驱动程序。
sudo bash ./NVIDIA-Linux-x86_64-xxx.xxx.xx-grid.run
-
忽略警告,然后单击 OK 继续安装。重新引导服务器。
sudo reboot
-
-
Rocky Linux 9
-
将 NVIDIA Linux 驱动程序
NVIDIA-Linux-x86_64-xxx.xx.xx-grid.run
复制到预配的计算实例。 -
安装与 Linux 内核版本匹配的 Linux 头文件。
sudo dnf install kernel-devel-$(uname -r)
-
如果找不到与内核版本匹配的 Linux 头文件,请升级 Linux 内核并重新引导服务器。
sudo dnf install kernel sudo reboot
重新引导后,重新安装 Linux 头以与 Linux 内核版本匹配。
sudo dnf install kernel-devel-$(uname -r)
-
运行以下命令检查是否装入了
nouveau
驱动程序。lsmod | grep nouveau
-
如果在命令的输出中显示
nouveau
驱动程序,则需要先将其禁用。要在 Oracle Linux 上禁用nouveau
驱动程序,请创建/etc/modprobe.d/blacklist-nouveau.conf
文件并添加以下内容。blacklist nouveau options nouveau modeset=0
-
保存文件并重新生成 initramfs。
sudo dracut --force
-
禁用驱动程序后,重新引导服务器。
sudo reboot
-
运行以下命令以安装 NVIDIA vGPU 驱动程序。
sudo bash ./NVIDIA-Linux-x86_64-xxx.xxx.xx-grid.run
-
忽略警告,然后单击 OK 继续安装。重新引导服务器。
sudo reboot
-
-
Ubuntu 22
-
将 NVIDIA Linux 驱动程序
NVIDIA-Linux-grid-xxx.xx.xx_amd64.deb
复制到预配的计算实例。 -
运行以下命令检查是否装入了
nouveau
驱动程序。lsmod | grep nouveau
-
如果在命令的输出中显示
nouveau
驱动程序,则需要先将其禁用。要在 Oracle Linux 上禁用nouveau
驱动程序,请创建/etc/modprobe.d/blacklist-nouveau.conf
文件并添加以下内容。blacklist nouveau options nouveau modeset=0
-
保存文件并重新生成 initramfs。
sudo dracut --force
-
禁用驱动程序后,重新引导服务器。
sudo reboot
-
运行以下命令以安装 NVIDIA vGPU 驱动程序。
sudo apt install ./NVIDIA-Linux-grid-xxx.xxx.xx_amd64.deb
-
重新引导服务器。
sudo reboot
-
任务 4:验证 NVIDIA vGPU 驱动程序安装
-
运行
nvidia-smi
命令以验证 NVIDIA vGPU 驱动程序的安装。
任务 5:启用 NVIDIA RTX 虚拟工作站
-
要启用 NVIDIA RTX 虚拟工作站功能,请更新
edit /etc/nvidia/gridd.conf
。sudo vi /etc/nvidia/gridd.conf
-
添加线条。
FeatureType=2
-
保存更改并关闭该文件。
-
检查 GSP 固件是否已启用。
nvidia-smi -q | grep GSP
-
如果启用了 GSP 固件,该命令将显示 GSP 固件版本。
GSP Firmware Version : 525.85.05
-
如果启用了 GSP 固件,请通过将 NVIDIA 模块参数
NVreg_EnableGpuFirmware
设置为 0 来禁用它。通过编辑/etc/modprobe.d/nvidia.conf
文件设置此参数。如果/etc/modprobe.d/nvidia.conf
文件不存在,请创建该文件。sudo vi /etc/modprobe.d/nvidia.conf
向其中添加以下行(如果您还没有)。
options nvidia NVreg_EnableGpuFirmware=0
-
禁用 GSP 后,必须重新引导服务器。
sudo reboot
-
从 NVIDIA Licensing Portal 或 DLS 设备下载客户端配置令牌。有关如何注册 NVIDIA vGPU 许可证的信息,请参见 Task 7:Register with NVIDIA vGPU Software License Server 。
-
将客户机配置令牌复制到
/etc/nvidia/ClientConfigToken
中的默认位置,并将文件权限设置为 744。sudo chmod 744 /etc/nvidia/ClientConfigToken/client_configuration_token_*.tok
注:如果要将客户机配置令牌存储在定制位置,请将该令牌复制到您创建的目录,并将
/etc/nvidia/gridd.conf
中的ClientConfigTokenPath
配置参数设置为指向此目录。 -
重新启动
nvidia-gridd
服务。sudo systemctl restart nvidia-gridd
-
运行
nvidia-smi -q
命令并检查 Product Brand 是否设置为 NVIDIA RTX , License Status 是否显示 Licensed 。 -
如果无法获取许可证并将 License Status 显示为 Unlicensed ,请检查 nvidia-gridd 服务日志。
sudo grep gridd /var/log/messages
任务 6:在 Windows 上安装 NVIDIA vGPU 驱动程序
-
将 NVIDIA Windows 驱动程序软件包复制到要安装驱动程序的来宾 VM 或物理主机。运行软件包以解压缩并运行驱动程序安装程序。接受许可协议并选择快速安装。
-
OCI A10 GPU VM 配置有 GPU 转发,因此必须通过 regedit 设置 vGPU 驱动程序行为。有关更多信息,请参见 Virtual GPU Client Licensing User Guide 。
-
将
FeatureType DWord (REG_DWORD)
注册表值添加到 Windows 注册表键。HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\nvlddmkm\Global\GridLicensing
-
将此值设置为 2 以启用 NVIDIA RTX 虚拟工作站许可证。
-
重新启动 NVIDIA Display Container LS 服务。
-
从 NVIDIA Licensing Portal 或 DLS 设备下载客户端配置令牌。有关如何注册 NVIDIA vGPU 许可证的信息,请参见 Task 7:Register with NVIDIA vGPU Software License Server 。
-
将客户机配置令牌复制到文件夹。
%SystemDrive%:\Program Files\NVIDIA Corporation\GRID Licensing\ClientConfigToken
-
在命令行或 PowerShell 中,运行
nvidia-smi -q
命令并检查 Product Brand 是否设置为 NVIDIA RTX , License Status 是否显示 Licensed 。注:在 Windows 上,
nvidia-smi.exe
默认安装在C:\Program Files\NVIDIA Corporation\NVSMI
文件夹中。 -
如果无法获取许可证并将许可证状态显示为未获得许可,请检查日志中的许可消息。
%SystemDrive%\Users\Public\Documents\NvidiaLogging\Log.NVDisplay.Container.exe.log
任务 7:向 NVIDIA vGPU 软件许可证服务器注册 vGPUS
通过 NVIDIA 软件强制实施 vGPU 许可,如果 VM 无法获取许可证,则虚拟 GPU 的性能会随着时间的推移而降低。从 vGPU 版本 13.0 开始,NVIDIA 许可证系统支持以下类型的服务实例:
-
云许可证服务 (Cloud License Service,CLI) 实例: CLS 实例托管在 NVIDIA 许可门户上。
-
委派许可服务 (Delegated License Service,DLS) 实例: DLS 实例托管在内部部署中,可从您的专用网络访问位置。
您可以从 NVIDIA Licensing Portal 下载 DLS 虚拟设备。
-
转到“软件下载”,选择非驱动程序下载并下载,将平台设置为 Linux KVM ,然后下载最新版本的 NLS License Server (DLS) ... for Linux KVM 。
-
解压缩文件并将 DLS 虚拟设备 QCOW2 文件上载到 OCI 对象存储。之后,您可以将其作为半虚拟化定制映像导入 OCI,然后基于它创建 VM。或者,您也可以将 DLS 虚拟设备作为 KVM 环境中的 VM 之一运行。
- 有关如何获取和注册 NVIDIA vGPU 许可证以及如何配置 DLS 许可证服务器的详细信息,请参见 NVIDIA License System User Guide 和 NVIDIA License System Quick Start Guide 。
-
在 NVIDIA vGPU 软件许可证服务器中注册 vGPU 许可证后,可以通过检查
nvidia-smi -q
命令输出中的 License Status 进行确认。
相关链接
确认
- 作者 — Michael Prestin(首席云架构师)
更多学习资源
浏览 docs.oracle.com/learn 上的其他实验室,或者访问 Oracle Learning YouTube 渠道上的更多免费学习内容。此外,请访问 education.oracle.com/learning-explorer 成为 Oracle Learning Explorer。
有关产品文档,请访问 Oracle 帮助中心。
Deploy NVIDIA RTX Virtual Workstation on Oracle Cloud Infrastructure
F80551-04
November 2024