PowerEdge:NVIDIA 驅動程式錯誤:nvidia-smi 已故障,因為它無法與 NVIDIA 驅動程式通訊
Summary: 執行 nvidia-smi 命令時,您可能會遇到驅動程式錯誤,指出「nvidia-smi 已失敗,因為它無法與 NVIDIA 驅動程式通訊。
Symptoms
可使用 nvidia-smi 命令無法執行並傳回錯誤訊息:
nvidia-smi has failed because it could not communicate with the NVIDIA driver.
執行時未顯示 NVIDIA GPU 資訊 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
錯誤 ”nvidia-smi has failed because it could not communicate with the NVIDIA driver」 可能是由以下幾個因素所造成:
-
NVIDIA 驅動程式未安裝或已損毀:NVIDIA 驅動程式可能未安裝在系統上,或是安裝可能損毀,導致
nvidia-smi嘗試與 GPU 互動時失敗的工具。 -
驅動程式不相容:安裝的 NVIDIA 驅動程式版本可能與 GPU 或作業系統不相容,導致通訊問題。
-
未載入 NVIDIA 核心模組:所需的 NVIDIA 核心模組 (
nvidia.ko) 可能無法載入至系統,導致nvidia-smi工具和 GPU。 -
GPU 初始化失敗:GPU 可能在開機期間或由於硬體故障而未正確初始化,這表示
nvidia-smi無法與其建立通信。 -
衝突的驅動程式版本:可能會安裝衝突或多個 GPU 驅動程式 (例如 Nouveau 開放原始碼驅動程式或舊版 NVIDIA 驅動程式),導致系統無法載入正確的 NVIDIA 驅動程式。
-
故障硬體:GPU 本身可能有硬體問題,例如實體故障、過熱或連接不當,導致系統無法存取。
-
NVIDIA 授權遺失或過期 (適用於 vGPU 設定):在虛擬化環境中,缺少或過期的 NVIDIA vGPU 授權可能會使驅動程式無法正常運作,導致通訊失敗。
-
系統更新或核心變更:作業系統的最新更新或核心變更可能會影響 NVIDIA 驅動程式的相容性或功能,導致其失敗。
若要解決此問題,請檢查驅動程式安裝,驗證是否載入了正確的驅動程式,並確保硬體和軟體相容。
Resolution
在 ESXi 7.0 及更新版本中啟用 vGPU 的逐步指南:
-
安裝 NVIDIA vGPU Manager:
- 從 NVIDIA 網站
下載適用於 VMware ESXi 的最新 NVIDIA vGPU Manager。
- 使用 SSH 存取 ESXi 主機,或使用 ESXi Shell 安裝 vGPU Manager 套件。
- 從 NVIDIA 網站
-
將 NVIDIA vGPU 驅動程式安裝在虛擬機器 (VM):
- 針對每個使用 vGPU 的虛擬機器,在客體作業系統 (例如 Windows、Linux) 中安裝適當的 NVIDIA GPU 驅動程式。
- 從 NVIDIA 網站下載特定作業系統的驅動程式。
- 像在物理機上一樣在 VM 內安裝驅動程式。
-
將 ESXi 主機重新開機:
- 安裝 NVIDIA vGPU Manager 後,請將 ESXi 主機重新開機以使變更生效。
-
檢查是否已載入 NVIDIA 驅動程式:
- 在出現 ONIE 提示時,執行下列命令:
esxcli system module list | grep nvidia
- 這個動作會檢查 NVIDIA 核心模組是否已載入。
- 在出現 ONIE 提示時,執行下列命令:
-
手動載入 NVIDIA 驅動程式 (如果未載入):
- 如果未載入 NVIDIA 模組,您可以執行以下命令手動載入:
esxcli system module load --module=nvidia
- 如果未載入 NVIDIA 模組,您可以執行以下命令手動載入:
-
啟用硬體虛擬化 (如果未啟用):
- 透過 ESXi 主機用戶端或 vSphere 用戶端登入 ESXi 主機。
- 檢查是否已在實體伺服器的 BIOS/UEFI 中啟用 Intel VT-x 或 AMD-V 。這些選項是虛擬化所必需的。
-
檢查是否偵測到 NVIDIA GPU:
- 在出現 ONIE 提示時,執行下列命令:
lspci | grep -i nvidia
- 這個動作會檢查 ESXi 是否偵測到 NVIDIA GPU。
- 在出現 ONIE 提示時,執行下列命令:
-
檢查系統記錄是否有錯誤:
- 使用此命令尋找與 NVIDIA 驅動程式相關的特定錯誤訊息:
tail -f /var/log/vmkernel.log
- 使用此命令尋找與 NVIDIA 驅動程式相關的特定錯誤訊息:
-
檢查 NVIDIA 專屬記錄:
- 檢閱 NVIDIA 專屬記錄,位置為:
/var/log/nvidia-installer.log
- 檢閱 NVIDIA 專屬記錄,位置為:
-
在 vSphere 中設定 vGPU:
- 開啟 vSphere 用戶端 並瀏覽至您的 ESXi 主機。
- 在使用 vGPU 的 VM 上按右鍵,然後選取 編輯設定。
- 在 虛擬機器硬體標籤中 ,按一下 新增裝置 ,然後選取 PCI 裝置。
- 選擇要分配給 VM 的 NVIDIA GPU (vGPU)。
- 根據可用的 GPU 資源和授權,選取所需的 vGPU 設定檔 (例如 GRID、vComputeServer 等)。
-
指派 vGPU 設定檔:
- 配置 VM 時,請分配一個 vGPU 配置檔 ,以確定要分配給每個 VM 的物理 GPU 資源量。設定檔選項視 GPU 型號而定。
-
設定 NVIDIA 授權:
- 請確定已在 ESXi 主機上安裝正確的 NVIDIA vGPU 授權 。
- 若要安裝或更新 vGPU 授權,請使用 NVIDIA vGPU 套件隨附的 vGPU 授權公用程式 。
- vGPU 功能需要此授權才能正常運作,並可透過命令列將授權套用至 ESXi 主機。
-
確認 vGPU 已啟用:
- 設定 vGPU 後,請確認虛擬機器可正確識別該 vGPU。
- 登入虛擬機器並執行下列命令:
nvidia-smi
- 這應該顯示虛擬 GPU 的狀態,類似於它在物理電腦上的顯示方式。
Additional Information
Dell 應建議客戶向 NVIDIA 開立 vGPU 相關問題案例,方法是傳送電子郵件至 enterprisesupport@nvidia.com ,或透過入口網站提交網頁案例,或以電話聯絡客戶。
入口網站: https://www.nvidia.com/en-us/support/
電話支援: