如果您创建的是GPU虚拟化实例,则需要安装GRID驱动。由于GPU实例配备的NVIDIA GPU计算卡尚未激活NVIDIA GRID License,GPU图形功能受到限制,您需要购买并激活GRID License。本文以Ubuntu 16.04 64-bit操作系统的GPU虚拟化型实例vgn6i和vgn5i为例,介绍如何安装GRID驱动和激活GRID License,并验证图形化加速效果。

前提条件

  • 创建一台vgn6i或vgn5i实例,确保实例可以访问公网,建议您选择公共镜像中的镜像。
    说明 本文介绍如何为运行Linux操作系统的实例安装GRID驱动,对需要运行Windows操作系统的实例,在创建实例时选用预装GRID驱动的付费镜像即可。具体操作,请参见创建配备GRID驱动的GPU实例(Windows)
  • 在本地机器上安装了远程连接工具,例如VNC Viewer。
  • 已经通过提交工单获取了GRID License及对应的GRID驱动安装包。
    说明 由于GRID驱动的版本必须与您的GPU实例规格及实例所在地域相匹配,因此,请在提交工单时,提供您的GPU实例规格及实例所在地域。

背景信息

本文介绍如何为配备vGPU的GPU虚拟化型实例安装GRID驱动,如果您使用的是Linux操作系统的GPU计算型实例,建议您安装GPU驱动即可。具体操作,请参见在GPU计算型实例中安装GPU驱动(Linux)

安装GRID驱动

  1. 禁用nouveau。
    nouveau是部分Linux系统中预装的一款开源驱动,必须禁用nouveau才能成功安装新的驱动。
    1. 远程连接实例。
      选择以下任一种方式远程连接GPU实例。
      连接方式 操作指引
      Workbench 通过密码或密钥认证登录Linux实例
      VNC 通过密码认证登录Linux实例
    2. 查看是否存在blacklist-nouveau.conf文件。
      ls /etc/modprobe.d/blacklist-nouveau.conf
      如果不存在,请执行以下命令创建该文件。
      vim /etc/modprobe.d/blacklist-nouveau.conf
    3. blacklist-nouveau.conf文件中,添加以下内容禁用nouveau。
      说明 如果已配置以下内容,则跳过本步骤。
      blacklist nouveau
      blacklist lbm-nouveau
      options nouveau modeset=0
    4. 生成kernel initramfs。
      说明 如果您在运行如下命令时遇到安装失败等其他问题,请您提交工单获取帮助。
      rmmod nouveau
      update-initramfs -u
    5. 重启实例。
      reboot
  2. 安装已获取的GRID驱动。
    • vgn5i
      chmod +x NVIDIA-Linux-x86_64-418.226.00-grid.run
      ./NVIDIA-Linux-x86_64-418.226.00-grid.run
    • vgn6i
      chmod +x NVIDIA-Linux-x86_64-430.63-grid.run
      ./NVIDIA-Linux-x86_64-430.63-grid.run
    • vgn6i-vws、vgn7i-vws
      chmod +x NVIDIA-Linux-x86_64-460.91.03-grid.run
      ./NVIDIA-Linux-x86_64-460.91.03-grid.run
  3. 测试GRID驱动是否安装成功。
    nvidia-smi
    如果返回以下GRID驱动信息,说明驱动安装成功。其中,Driver Version代表当前GRID驱动版本,CUDA Version代表驱动支持的最高CUDA版本。其他驱动版本及其支持的CUDA版本情况,如下表所示:
    GRID驱动版本 支持的CUDA最高版本
    430.99 10.1
    460.91.03 11.2
    470.82.01 11.4
  4. 添加License服务器。
    1. 切换到/etc/nvidia目录。
      cd /etc/nvidia
    2. 创建gridd.conf文件。
      cp gridd.conf.template gridd.conf
    3. gridd.conf文件中添加License服务器的信息。
      ServerAddress=<License服务器的IP>
      ServerPort=<License服务器的端口(默认为7070)>
      FeatureType=1
  5. 重启实例使License服务器配置生效。
    reboot
  6. 查看License是否激活成功。
    1. 远程连接实例
    2. 查看License状态。
      systemctl status nvidia-gridd
      返回结果显示License acquired successfully,表示License激活成功。

测试图形化界面

本文以Ubuntu 16.04 64-bit操作系统为例,使用GLX测试程序验证安装GRID驱动后的图形化加速效果。

  1. 准备图形化测试环境。
    1. 运行命令安装x11vnc。
      apt-get install x11vnc
    2. 运行命令lspci | grep NVIDIA查询GPU BusID。

      本示例中,查询到的GPU BusID为00:07.0

    3. 配置X Server环境并重启。
      1. 运行命令nvidia-xconfig --enable-all-gpus --separate-x-screens
      2. 编辑/etc/X11/xorg.conf,在Section "Device"段添加GPU BusID,如本示例中为BusID "PCI:0:7:0"
      3. 运行reboot命令重启系统。
  2. 运行命令安装GLX测试程序。
    apt-get install mesa-utils                    
  3. 运行命令startx启动X Server。
    • 如果没有startx命令,执行apt-get install xinit命令安装。
    • startx启动时可能会提示hostname: Name or service not known。这个提示不会影响X Server启动。您可以运行命令hostname查得主机名后,再修改/etc/hosts文件,将127.0.0.1后的hostname改为本机的hostname。
  4. 开启一个新的SSH客户端终端,运行命令启动x11vnc。
    x11vnc -display :1
    如果看到如下图所示的信息,表示x11vnc已经成功启动。此时,您能通过VNC Viewer等VNC远程连接软件连接实例。
  5. 登录ECS管理控制台,在实例所在安全组中添加安全组规则,允许TCP 5900端口的入方向访问。具体操作,请参见添加安全组规则
  6. 在本地主机上,使用VNC Viewer等VNC远程连接软件,通过实例公网IP地址:5900连接实例,进入KDE桌面。
  7. 按以下步骤使用glxinfo命令查看当前GRID驱动支持的配置。
    1. 开启一个新的SSH客户端终端。
    2. 运行命令export DISPLAY=:1
    3. 运行命令glxinfo –t列出当前GRID驱动支持的配置。
  8. 按以下步骤使用glxgears命令测试GRID驱动。
    1. 在KDE桌面上,右键单击桌面,并选择Run Command
    2. 运行glxgears启动齿轮图形测试程序。
      如果出现如下图所示的窗口,表明GRID驱动正常工作。