天天看點

GRID License元件工作原理介紹與故障排錯實戰

NVIDIA GRID 2.0以及後續的版本在部署的過程中都需要安裝License元件,License元件主要控制vGPU虛拟機GRID驅動的加載、虛拟桌面的分辨率和幀率。接下來我們來看看GRID License元件是如何工作的?

GRID License元件工作原理介紹與故障排錯實戰

通過上圖我們可以看到,GRID分為三個版本(虛拟工作站vWS、虛拟PC和虛拟應用vApps),當帶有VGPU的虛拟機運作的時候會請求License伺服器中的License授權,根據License伺服器中的GRID License版本,加載不同的VGPU驅動(普通驅動和專業卡驅動)。我們可以看到虛拟PC和虛拟應用的License加載的都是普通的顯示驅動。

整個License擷取和釋放的過程發生在如下兩個階段:

License擷取階段:

虛拟機在啟動的時候通過通路License伺服器的位址+端口7070發起License的請求,當正常擷取License後加載GRID驅動。

License釋放階段:

當我們關閉虛拟機的時候,之前虛拟機獲得的License會自動釋放,還回到License伺服器中。

這裡需要明确的一點是當虛拟機處于關閉狀态的時候是不占用任何的GRID License的。此外如果客戶使用的是K1,K2的GPU是不需要License授權的。

一般來說,我們在虛拟機中通過NVIDIA控制台配置License伺服器位址,當然我們也可以通過修改Windows的系統資料庫、或者Linux的配置檔案進行配置。下圖展示了在Windows平台我們通過NVIDIA控制台如何配置License伺服器位址。

GRID License元件工作原理介紹與故障排錯實戰
不過還有一種特殊的場景,就是我們把GPU通過透傳的方式挂載給虛拟機,這個時候我們在授權License的時候有兩種選擇。我們可以在GPU透傳模式下的NVIDIA控制台中看到有兩種模式:一種是GRID,一種是Tesla。
GRID License元件工作原理介紹與故障排錯實戰
當我們不對透傳的 GPU進行GRID的授權,那麼此GPU将運作在Tesla模式下,運作在Tesla模式下的虛拟機有如下限制:僅支援一個螢幕顯示且最大分辨率為2560x1600。在選擇了Tesla授權模式以後,我們對這個分辨率限制進行驗證。
GRID License元件工作原理介紹與故障排錯實戰

在分辨率的設定裡,我們可以看到最大分辨率僅支援2560x1600。

而如果我們采用GRID授權,分辨率最大可用到4K(4096x2160)。

GRID License元件工作原理介紹與故障排錯實戰

以下通過一個實際的故障排錯來加深對GRID License元件的了解

首先,我們在NVIDIA控制台配置License伺服器位址,始終提示無法擷取vGPU許可證。

GRID License元件工作原理介紹與故障排錯實戰

  1. 首先Telnet License伺服器的IP+端口7070,檢視虛拟機到License伺服器的網絡層面通訊是否正常。
    GRID License元件工作原理介紹與故障排錯實戰
  2. Telnet可以正常連接配接到License伺服器位址+7070端口,接下來檢查License服務是否正常運作,經過檢查我們發現NVIDIA License服務運作正常。
    GRID License元件工作原理介紹與故障排錯實戰
  3. 然後我們登陸License伺服器管理面闆進行檢視,發現License已經于一天前過期。
    GRID License元件工作原理介紹與故障排錯實戰
  4. 由于初步判斷是License檔案過期導緻,我們進一步檢視日志确認此問題。
    GRID License元件工作原理介紹與故障排錯實戰
  5. 我們打開License伺服器的日志檔案Flexnetls,很快我們就通過日志确認此問題是由于License過期導緻。
    GRID License元件工作原理介紹與故障排錯實戰
  6. 接下來我們新申請一個測試License,導入到License伺服器。由于每個License伺服器的Mac位址隻能申請一次測試License,是以我們需要先修改License伺服器的Mac位址。預設的Mac位址為8a:2e:02:7c:99:88,我們修改為8a:2e:02:7c:99:80.
    GRID License元件工作原理介紹與故障排錯實戰
    GRID License元件工作原理介紹與故障排錯實戰
  7. 修改完Mac位址重新開機系統,并用新的Mac注冊License伺服器,上傳新注冊的License提示和目前的企業ID不比對。
    GRID License元件工作原理介紹與故障排錯實戰
    GRID License元件工作原理介紹與故障排錯實戰
  8. 解除安裝目前License Server重新安裝
    GRID License元件工作原理介紹與故障排錯實戰
    GRID License元件工作原理介紹與故障排錯實戰
  9. 重新安裝License Server報告和之前一樣的錯誤(提示和目前的企業ID不比對,無法成功上傳License檔案),推測可能是之前的License殘留資訊導緻(包括之前導入的已經過期的License檔案)。于是決定對之前的License資訊進行清空操作。

清空License伺服器殘留資訊的方法:

  1. Close the browser that accesses the license server.
  2. Go into the Microsoft Control Panel, Administrative Tools and Services
  3. Locate the “FlexNet License Server – nvidia” service, right click on it and select Stop
  4. Delete the nvidia directory from:

    C:\Windows\ServiceProfiles\NetworkService\flexnetls\nvidia

  5. Locate the “FlexNet License Server – nvidia” service. right click on it and select Start
  1. 接下來我們為虛拟機配置License伺服器位址,已經可以成功配置。
    GRID License元件工作原理介紹與故障排錯實戰
    GRID License元件工作原理介紹與故障排錯實戰
    在License管理面闆裡也可以看到此虛拟機已經被授權