Si los hosts ESXi de su entorno de vSphere IaaS control plane tienen uno o varios dispositivos de gráficos de GPU NVIDIA GRID, es posible configurar las máquinas virtuales para que usen esta tecnología de GPU virtual (vGPU) NVIDIA GRID. También se pueden configurar otros dispositivos PCI en un host ESXi para que estén disponibles para una máquina virtual en modo de acceso directo.

Implementar una máquina virtual con vGPU en vSphere IaaS control plane

Los dispositivos de gráficos de GPU NVIDIA GRID están diseñados para optimizar operaciones gráficas complejas y permitir que estas se ejecuten con un alto rendimiento sin sobrecargar la CPU. La unidad de vGPU NVIDIA GRID brinda un rendimiento de gráficos sin igual, economía y escalabilidad, ya que permite compartir una sola GPU física entre varias máquinas virtuales como si fueran dispositivos de acceso directo habilitados para vGPU distintos.

Consideraciones

Las siguientes consideraciones se aplican cuando se utiliza NVIDIA vGPU:
  • El Supervisor de tres zonas no admite máquinas virtuales con vGPU.
  • Las máquinas virtuales con dispositivos vGPU administradas por el servicio de máquina virtual se apagan automáticamente cuando un host ESXi entra en modo de mantenimiento. Esto puede afectar temporalmente a las cargas de trabajo que se ejecutan en las máquinas virtuales. Las máquinas virtuales se encienden automáticamente después de que el host sale del modo de mantenimiento.
  • DRS distribuye las máquinas virtuales de vGPU de manera integral entre los hosts del clúster. Para obtener más información, consulte Colocación de DRS de máquinas virtuales de vGPU en la guía de Administrar recursos de vSphere.

Requisitos

Para configurar la vGPU de NVIDIA, siga estos requisitos:

  • Compruebe que ESXi sea compatible según la Guía de compatibilidad de VMware y póngase en contacto con el proveedor para comprobar que el host cumpla los requisitos de alimentación y configuración.
  • Configure los ajustes de los gráficos de hosts ESXi con al menos un dispositivo en modo Compartidos directos. Consulte Configurar gráficos de host en la documentación de Administrar recursos de vSphere.
  • La biblioteca de contenido que se utiliza para las máquinas virtuales con dispositivos vGPU debe incluir imágenes con el modo de arranque establecido en EFI, como CentOS.
  • Instale el software NVIDIA vGPU. NVIDIA proporciona un paquete de software vGPU que incluye los siguientes componentes.

    Para obtener más información, consulte la documentación correspondiente del software NVIDIA Virtual GPU.

Agregar un dispositivo vGPU a una clase de máquina virtual mediante vSphere Client

Cree o edite una clase de máquina virtual existente para agregar una GPU virtual (vGPU) NVIDIA GRID.

Requisitos previos

Privilegios necesarios:
  • Espacio de nombres.Modificar configuración de todo el clúster
  • Espacio de nombres.Modificar configuración del espacio de nombres
  • Clases de máquinas virtuales.Administrar clases de máquinas virtuales

Procedimiento

  1. Cree o edite una clase de máquina virtual existente.
    Opción Acción
    Crear una nueva clase de máquina virtual
    1. En el menú Inicio de vSphere Client, seleccione Administración de cargas de trabajo.
    2. Haga clic en la pestaña Servicios y haga clic en Administrar en el panel Servicio de máquina virtual.
    3. En la página Servicio de máquina virtual, haga clic en Clases de máquinas virtuales y, a continuación, haga clic en Crear clase de máquina virtual.
    4. Siga las indicaciones.
    Edite una clase de máquina virtual.
    1. En el menú Inicio de vSphere Client, seleccione Administración de cargas de trabajo.
    2. Haga clic en la pestaña Servicios y haga clic en Administrar en el panel Servicio de máquina virtual.
    3. En la página Servicio de máquina virtual, haga clic en Clases de máquinas virtuales.
    4. En el panel de la clase de máquina virtual seleccionada, haga clic en Administrar y, luego, en Editar.
    5. Siga las indicaciones.
  2. En la página Configuración, haga clic en la pestaña Hardware virtual, haga clic en Agregar nuevo dispositivo y seleccione Dispositivo PCI.
    Opción Dispositivo PCI en el menú Agregar nuevo dispositivo
  3. En la lista de dispositivos disponibles de la página Selección de dispositivo, seleccione NVIDIA GRID vGPU y haga clic en Seleccionar.
    El dispositivo aparece en la página Hardware virtual.
  4. Haga clic en la pestaña Parámetros avanzados y establezca los parámetros con los siguientes atributos y valores.
    Opción Descripción
    Parámetro Valor
    pciPassthru0.cfg.enable_uvm 1
    pciPassthru1.cfg.enable_uvm 1
    Agregar atributos y valores para parámetros avanzados
  5. Revise su configuración y haga clic en Finalizar.

Resultados

Una etiqueta Dispositivos PCI en el panel de clase de máquina virtual indica que la clase de máquina virtual está habilitada para la vGPU.

Etiqueta Dispositivos PCI en el panel Clase de máquina virtual

Agregar un dispositivo vGPU a una clase de máquina virtual mediante la CLI del centro de datos

Además de vSphere Client, puede utilizar el comando de la CLI del centro de datos (DCLI) para agregar varias vGPU y configuraciones avanzadas.

Para obtener más información sobre los comandos de la DCLI, consulte Crear y administrar clases de máquina virtual mediante la CLI del centro de datos.

Procedimiento

  1. Inicie sesión en vCenter Server con la cuenta de usuario raíz y escriba dcli +i para utilizar la DCLI en modo interactivo.
  2. Ejecute el siguiente comando para crear una de clase de máquina virtual.
    En el siguiente ejemplo, la clase de máquina virtual my-class incluye dos CPU, 2048 de memoria y una instancia de VirtualMachineConfigSpec con dos perfiles de vGPU de muestra, mockup-vmiop-8c y mockup-vmiop. Los campos extraConfig pciPassthru0.cfg.enable_uvm y pciPassthru1.cfg.enable_uvm se establecen en 1.
    dcli +i +show-unreleased com vmware vcenter namespacemanagement virtualmachineclasses create --id my-class --cpu-count 2 --memory-mb 2048 --config-spec '{"_typeName":"VirtualMachineConfigSpec","deviceChange":[{"_typeName":"VirtualDeviceConfigSpec","operation":"add","device":{"_typeName":"VirtualPCIPassthrough","key":20,"backing":{"_typeName":"VirtualPCIPassthroughVmiopBackingInfo","vgpu":"mockup-vmiop-8c"}}},{"_typeName":"VirtualDeviceConfigSpec","operation":"add","device":{"_typeName":"VirtualPCIPassthrough","key":20,"backing":{"_typeName":"VirtualPCIPassthroughVmiopBackingInfo","vgpu":"mockup-vmiop"}}}],"extraConfig":[{"_typeName":"OptionValue","key":"pciPassthru0.cfg.enable_uvm","value":{"_typeName":"string","_value":"1"}},{"_typeName":"OptionValue","key":"pciPassthru1.cfg.enable_uvm","value":{"_typeName":"string","_value":"1"}}]}'
    

Instalar el controlador invitado de NVIDIA en una máquina virtual en vSphere IaaS control plane

Si la máquina virtual incluye un dispositivo PCI configurado para vGPU, después de crear y arrancar la máquina virtual en el entorno de vSphere IaaS control plane, instale el controlador de gráficos NVIDIA vGPU para habilitar completamente las operaciones de GPU.

Requisitos previos

  • Implemente la máquina virtual con vGPU. Asegúrese de que el archivo YAML de la máquina virtual haga referencia a la clase de máquina virtual con la definición de vGPU. Consulte Implementar una máquina virtual en vSphere IaaS control plane.
  • Compruebe que descargó el paquete de software de vGPU del sitio de descargas de NVIDIA, descomprimió el paquete y tiene listo el componente de la unidad de invitado. Para obtener información, consulte la documentación correspondiente del software de GPU virtual de NVIDIA.
    Nota: La versión del componente del controlador debe corresponder a la versión de vGPU Manager que un administrador de vSphere instaló en el host ESXi.

Procedimiento

  1. Copie el paquete de controladores Linux del software de NVIDIA vGPU, por ejemplo, NVIDIA-Linux-x86_64- versión -grid.run, en la máquina virtual invitada.
  2. Antes de intentar ejecutar el instalador del controlador, finalice todas las aplicaciones.
  3. Inicie el instalador del controlador NVIDIA vGPU.
    sudo ./NVIDIA-Linux-x86_64-version-grid.run
  4. Acepte el acuerdo de licencia de software de NVIDIA y seleccione para actualizar automáticamente los ajustes de configuración de X.
  5. Compruebe que se haya instalado el controlador.
    Por ejemplo:
    ~$ nvidia-smi
    Wed May 19 22:15:04 2021
    +-----------------------------------------------------------------------------+
    | NVIDIA-SMI 460.63       Driver Version: 460.63       CUDA Version: 11.2     |
    |-------------------------------+----------------------+----------------------+
    | GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
    | Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
    |                               |                      |               MIG M. |
    |===============================+======================+======================|
    |   0  GRID V100-4Q        On   | 00000000:02:00.0 Off |                  N/A|
    | N/AN/AP0    N/A/  N/A|    304MiB /  4096MiB |      0%      Default |
    |                               |                      |                  N/A|
    +-------------------------------+----------------------+----------------------+
    
    +-----------------------------------------------------------------------------+
    | Processes:                                                                  |
    |  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
    |        ID   ID                                                   Usage      |
    |=============================================================================|
    |  No running processes found                                                 |
    +-----------------------------------------------------------------------------+

Implementar una máquina virtual con Dispositivos PCI en vSphere IaaS control plane

Además de una vGPU, se pueden configurar otros dispositivos PCI en un host ESXi para que estén disponibles para una máquina virtual en modo de acceso directo.

vSphere IaaS control plane admite dispositivos de DirectPath I/O dinámico. Mediante la instancia dinámica de DirectPath I/O, la máquina virtual puede acceder directamente a los dispositivos PCI y PCIe físicos conectados a un host. Puede usar la instancia dinámica de DirectPath I/O para asignar varios dispositivos de acceso directo a PCI a una máquina virtual. Cada dispositivo de acceso directo se puede especificar mediante su proveedor de PCI e identificador de dispositivo.
Nota: Al configurar una instancia dinámica de DirectPath I/O para dispositivos PCI de acceso directo, conecte los dispositivos PCI al host y márquelos como disponibles para el acceso directo. Consulte Habilitar el acceso directo para un dispositivo de red en un host en la documentación de Redes de vSphere.