GPU在ESXI的使用有三種方式: 直通、vGPU、Bitfusion。各有優缺點,簡單講: 直通,與裝在單機意思雷同,一張卡片只能給一台VM使用; vGPU可以單卡分享給不同的vm使用,但需要取得nVidia的授權;bitfusion可以把所有GPU集中成一個大水庫,供需要的VM使用。
在bitfusion的硬體支援清單中有詳細的支援列表,我用一句話說明: 如果你拿到的GPU卡片是被動式散熱(就是沒有風扇)的方式,那麼有99%機會他是支援的。如果有風扇,那你要看我另外一篇文章會介紹如何使用。
一開始,先把硬體條件先準備好。在BIOS設定中,我們需要專注在: Above 4G decoding、Memory mapped I/O above 4GB 或 PCI 64-bit resource handing above 4G這些項目。
接著要在ESXI設定GPU傳遞方式,在畫面中點選主機\設定\硬體\PCI裝置在裝置名稱打入(本例為V100)搜尋出GPU
點選該GPU後\點選切換傳遞,切換成功後要重新開啟ESXI HOST。
部署Bitfusion Server請選擇部署OVF範本。此處以bitfusion-server-4.5.4–6.ova為例,請自行到vmware的官方網站申請試用下載。
自訂範本需設置hostname名稱、你要掛載的vCenter Server實例中的用戶和密碼。在 Bitfusion vCenter Server TLS 證書指紋則是可以在vcenter取得相關資訊填入。取得方式參考:
1. Use SSH to connect to the vCenter Server Appliance or ESXi host as root user.
$ ssh root@vcsa_or_esxi_host_address
2. Use openssl to view the certificate fingerprint.
o vCenter Server Appliance:openssl x509 -in /etc/vmware-vpx/ssl/rui.crt -fingerprint -sha1 -noout
o ESXi host:openssl x509 -in /etc/vmware/ssl/rui.crt -fingerprint -sha1 -noout
3. Copy the certificate thumbprint for use in the --thumbprint option of vic-machine commands or to set it as an environment variable.
客戶端密碼設定雖然不是必需的,但建議設定,方便日後變更相關設定(包括取得nVIDIA DRIVER)。部署完成後,如有需要,可以使用客戶使用者帳戶(customer)通過控制台 shell 或 SSH 登錄到 vCenter Server Appliance。
在 NVIDIA packages部分,建議勾選讓Bitfusion 於安裝時下載並安裝 NVIDIA 驅動程式、CUDA 、NVIDIA Fabric Manager等等等相關程式庫。如果你的環境無法上網,我建議讓機器可以上網再安裝,這可以省卻許多麻煩。如果你真的需要手動裝驅動,我建議你看到這邊可以放棄,不要再深挖了。
設定網路時必須注意第一張卡片必須可以用於管理和資料流量。至於234的選項,如果你的網路資源夠多,可以依據需要進行設定。(倘若你需要設定,必須在裝好bitfusion後立即到新增硬體把網路卡加入三片新卡,不然會馬上錯誤)
到這邊,恭喜你。只需等待它裝好即可。接著,我們要打開bitfusion server新增GPU(按一下新增裝置,從下拉式功能表中的其他裝置,選擇 PCI 裝置。)
接著設定記憶體大小,這邊要將最小記憶體值指定為匯總 GPU 卡記憶體的 1.5 倍或 32 GB(取較大者),並且保留完整記憶體給Server。
如果沒問題就把伺服器開機吧!
如果你要集群(cluster)更多的GPU資源,可以安裝更多額外的bitfusion server。
這條線之前是bitfusion server的安裝。
底下開始是bitfusion client的安裝與簡易測試。
接著我們要安裝客體作業系統(此處以ubuntu22.04為例),安裝好後,開機客體,取得相關程序(僅舉例,請依據真實的版本進行所有對應,否則將因沒有錯誤訊務卻無法使用,難以debug)。
wget https://packages.vmware.com/bitfusion/ubuntu/22.04/bitfusion-client-ubuntu2204_4.5.4-6_amd64.deb
sudo apt install ./bitfusion-client-ubuntu2204_4.5.2-16_amd64.deb
shutdown
開啟虛擬機客體,進行配置。
sudo usermod -aG bitfusion username
sudo bitfusion list_gpus
如果你不放心就做幾個測試:
Bitfusion list_gpus
bitfusion health
bitfusion smi
直通參考這邊: