PowerEdge: Error del controlador NVIDIA: nvidia-smi falló porque no pudo comunicarse con el controlador NVIDIA
Summary: Cuando ejecuta el comando nvidia-smi, es posible que encuentre un error del controlador que indique que "nvidia-smi ha fallado porque no pudo comunicarse con el controlador NVIDIA.
Symptoms
La variable nvidia-smi El comando no se ejecuta y devuelve el mensaje de error:
nvidia-smi has failed because it could not communicate with the NVIDIA driver.
La información de la GPU NVIDIA no se muestra cuando está en ejecución nvidia-smi.
nvidia-smi has failed because it could not communicate with the NVIDIA driver
NVRM: nvidia_ctl_session_announce failed as driver unload is in progress.
Cause
El error "nvidia-smi has failed because it could not communicate with the NVIDIA driver" puede deberse a varios factores:
-
Controlador NVIDIA no instalado o dañado: Es posible que el controlador NVIDIA no esté instalado en el sistema o que la instalación esté dañada, lo que provoca el
nvidia-smifalle cuando intente interactuar con la GPU. -
Incompatibilidad de controladores: Es posible que la versión del controlador NVIDIA instalada no sea compatible con la GPU o el sistema operativo, lo que provoca problemas de comunicación.
-
El módulo del kernel de NVIDIA no está cargado: El módulo de kernel de NVIDIA necesario (
nvidia.ko) no se puede cargar en el sistema, lo que impide una comunicación adecuada entre losnvidia-smiy la GPU. -
Falla de inicialización de GPU: Es posible que la GPU no se haya inicializado correctamente durante el arranque o debido a una falla de hardware, lo que significa
nvidia-smino puede establecer comunicación con él. -
Versiones de controlador en conflicto: Es posible que se instalen varios controladores de GPU en conflicto (por ejemplo, el controlador de código abierto Nouveau o versiones anteriores del controlador NVIDIA), lo que hace que el sistema no cargue el controlador NVIDIA correcto.
-
Hardware defectuoso: Podría haber un problema de hardware con la GPU en sí, como una falla física, un sobrecalentamiento o una conexión incorrecta, lo que impide que el sistema acceda a ella.
-
Licencia NVIDIA faltante o vencida (para configuraciones de vGPU): En entornos virtualizados, una licencia de vGPU NVIDIA faltante o vencida puede impedir que el controlador funcione correctamente, lo que provoca fallas de comunicación.
-
Actualizaciones del sistema o cambios en el kernel: Las actualizaciones recientes del sistema operativo o los cambios en el kernel pueden haber afectado la compatibilidad o la funcionalidad del controlador NVIDIA, causando que falle.
Para resolver este problema, compruebe la instalación del controlador, verifique que esté cargado el controlador correcto y asegúrese de que el hardware y el software sean compatibles.
Resolution
Guía paso a paso para habilitar vGPU en ESXi 7.0 y versiones posteriores:
-
Instale el administrador de vGPU de NVIDIA:
- Descargue la versión más reciente de NVIDIA vGPU Manager para VMware ESXi desde el sitio web
de NVIDIA.
- Utilice SSH para acceder al host ESXi o ESXi Shell para instalar el paquete de vGPU Manager.
- Descargue la versión más reciente de NVIDIA vGPU Manager para VMware ESXi desde el sitio web
-
Instale los controladores de vGPU NVIDIA en las máquinas virtuales (VM):
- Para cada máquina virtual que utilice vGPU, instale el controlador de GPU NVIDIA correspondiente en el sistema operativo huésped (por ejemplo, Windows o Linux).
- Descargue los controladores desde el sitio web de NVIDIA para el sistema operativo específico.
- Instale los controladores dentro de la VM como lo haría en una máquina física.
-
Reinicie el host ESXi:
- Después de instalar NVIDIA vGPU Manager, reinicie el host ESXi para que los cambios surtan efecto.
-
Compruebe si el controlador NVIDIA está cargado:
- Ejecute el comando:
esxcli system module list | grep nvidia
- Esto comprueba si el módulo del kernel de NVIDIA está cargado.
- Ejecute el comando:
-
Cargue manualmente el controlador NVIDIA (si no está cargado):
- Si el módulo NVIDIA no está cargado, puede cargarlo manualmente mediante la ejecución del siguiente comando:
esxcli system module load --module=nvidia
- Si el módulo NVIDIA no está cargado, puede cargarlo manualmente mediante la ejecución del siguiente comando:
-
Active la virtualización de hardware (si no está activada):
- Inicie sesión en el host ESXi mediante ESXi Host Client o vSphere Client.
- Compruebe que Intel VT-x o AMD-V estén habilitados en el BIOS/UEFI del servidor físico. Estas opciones son necesarias para la virtualización.
-
Compruebe si se detecta la GPU NVIDIA:
- Ejecute el comando:
lspci | grep -i nvidia
- Esto comprueba si ESXi detecta la GPU NVIDIA.
- Ejecute el comando:
-
Compruebe si hay errores en los registros del sistema:
- Utilice el comando para buscar mensajes de error específicos relacionados con el controlador NVIDIA:
tail -f /var/log/vmkernel.log
- Utilice el comando para buscar mensajes de error específicos relacionados con el controlador NVIDIA:
-
Compruebe los registros específicos de NVIDIA:
- Revise los registros específicos de NVIDIA que se encuentran en:
/var/log/nvidia-installer.log
- Revise los registros específicos de NVIDIA que se encuentran en:
-
Configure la vGPU en vSphere:
- Abra vSphere Client y diríjase al host ESXi.
- Haga clic con el botón secundario en la máquina virtual que utiliza vGPU y seleccione Edit Settings.
- En la pestaña VM Hardware , haga clic en Add New Device y seleccione PCI Device.
- Seleccione la GPU NVIDIA (vGPU) que desea asignar a la máquina virtual.
- Seleccione el perfil de vGPU deseado (por ejemplo, GRID, vComputeServer, etc.) según los recursos de GPU y las licencias disponibles.
-
Asigne un perfil de vGPU:
- Cuando configure la máquina virtual, asigne un perfil de vGPU que determine la cantidad de recursos de la GPU física que se asignará a cada máquina virtual. Las opciones de perfil dependen del modelo de GPU.
-
Configurar licencia de NVIDIA:
- Asegúrese de que la licencia de vGPU NVIDIA correcta esté instalada en el host ESXi.
- Para instalar o actualizar la licencia de vGPU, utilice la utilidad de licenciamiento de vGPU que viene con el paquete de vGPU de NVIDIA.
- La licencia es necesaria para que la funcionalidad de vGPU funcione correctamente y se puede aplicar al host ESXi mediante la línea de comandos.
-
Verifique que la vGPU esté habilitada:
- Después de configurar la vGPU, verifique que se reconozca correctamente en la máquina virtual.
- Inicie sesión en la VM y ejecute el siguiente comando:
nvidia-smi
- Esto debería mostrar el estado de la GPU virtual, similar a cómo se vería en una máquina física.
Additional Information
Dell debe sugerir al cliente que abra un caso con NVIDIA para problemas relacionados con la vGPU mediante el envío de un correo electrónico a enterprisesupport@nvidia.com , el envío de un caso web a través de su portal o la comunicación con ellos por teléfono.
Portal web: https://www.nvidia.com/en-us/support/
Soporte telefónico: