若要使開發人員能夠在 TKGS 叢集上部署 AI/ML 工作負載,vSphere 管理員應設定 vSphere with Tanzu 環境以支援 NVIDIA GPU 硬體。

在 TKGS 叢集上部署 AI/ML 工作負載的 vSphere 管理員工作流程

下表概述了要在 TKGS 叢集上部署 AI/ML 工作負載,vSphere 管理員需要執行的工作流程。後面將詳細介紹每個步驟。
步驟 動作 連結
0

檢閱系統需求。

請參閱管理員步驟 0:檢閱系統需求

1

在 ESXi 主機上安裝受支援的 NVIDIA GPU 裝置。

請參閱管理員步驟 1:在 ESXi 主機上安裝受支援的 NVIDIA GPU 裝置

2

設定適用於 vGPU 操作的 ESXi 裝置圖形設定。

請參閱管理員步驟 2:針對 vGPU 操作設定每個 ESXi 主機

3

在每個 ESXi 主機上安裝 NVIDIA vGPU Manager (VIB)。

請參閱管理員步驟 3:在每個 ESXi 主機上安裝 NVIDIA 主機管理器驅動程式

4

驗證 NVIDIA 驅動程式操作和 GPU 虛擬化模式。

請參閱管理員步驟 4:驗證 ESXi 主機是否已做好執行 NVIDIA vGPU 操作的準備

5

在設定了 GPU 的叢集上啟用工作負載管理。這會產生在啟用了 vGPU 的 ESXi 主機上執行的主管叢集。

請參閱管理員步驟 5:在設定了 vGPU 的 vCenter 叢集上啟用工作負載管理

6

為 Tanzu Kubernetes 版本建立*或更新內容程式庫,並在程式庫中填入 vGPU 工作負載所需的受支援 Ubuntu OVA。

請參閱 管理員步驟 6:為 Tanzu Kubernetes Ubuntu 版本建立或更新內容程式庫
備註: *如有必要。如果已為 TKGS 叢集 Photon 映像建立了內容程式庫,則無需為 Ubuntu 映像建立新的內容程式庫。
7

建立自訂虛擬機器類別並選取特定的 vGPU 設定檔。

請參閱 管理員步驟 7:建立包含 vGPU 設定檔的自訂虛擬機器類別

8

為 TKGS GPU 叢集建立並設定 vSphere 命名空間:新增具有編輯權限的使用者,以及持續性磁碟區儲存區。

請參閱 管理員步驟 8:為 TKGS GPU 叢集建立和設定 vSphere 命名空間

9

將包含 Ubuntu OVA 的內容程式庫和 vGPU 的自訂虛擬機器類別與您為 TGKS 建立的 vSphere 命名空間相關聯。

請參閱 管理員步驟 9:將內容程式庫和虛擬機器類別與 vSphere 命名空間相關聯

10

驗證主管叢集是否已佈建,以及是否可供叢集營運人員存取。

請參閱 管理員步驟 10:驗證主管叢集是否可存取

管理員步驟 0:檢閱系統需求

根據以下系統需求設定環境,以便能夠在 TKGS 叢集上部署 AI/ML 工作負載。
需求 說明

vSphere 基礎結構

vSphere 7 Update3 Monthly Patch 1

ESXi 組建版本 18778458 或更新版本

vCenter Server 組建版本 18644231 或更新版本

工作負載管理

vSphere 命名空間版本

0.0.11-18610518 或更新版本

主管叢集

主管叢集 版本

v1.21.0+vmware.1-vsc0.0.11-18610518 或更新版本

TKR Ubuntu OVA

Tanzu Kubernetes 版本 Ubuntu

ob-18691651-tkgs-ova-ubuntu-2004-v1.20.8---vmware.1-tkg.2

NVIDIA vGPU 主機驅動程式

NGC 網站下載 VIB。如需詳細資訊,請參閱 vGPU 軟體驅動程式說明文件。例如:

NVIDIA-AIE_ESXi_7.0.2_Driver_470.51-1OEM.702.0.0.17630552.vib

用於 vGPU 的 NVIDIA 授權伺服器

您的組織提供的 FQDN

管理員步驟 1:在 ESXi 主機上安裝受支援的 NVIDIA GPU 裝置

若要在 TKGS 上部署 AI/ML 工作負載,請在將啟用工作負載管理的 vCenter 叢集中的每個 ESXi 主機上安裝一或多個受支援的 NVIDIA GPU 裝置。

若要檢視相容的 NVIDIA GPU 裝置,請參閱《VMware 相容性指南》

相容的 NVIDIA GPU 裝置清單。按一下 GPU 裝置型號可檢視更多詳細資料並訂閱 RSS 摘要。

NVIDA GPU 裝置應支援最新的 NVIDIA AI Enterprise (NVAIE) vGPU 設定檔。如需相關指導,請參閱 NVIDIA 虛擬 GPU 軟體支援的 GPU 說明文件。

例如,以下 ESXi 主機上安裝了兩個 NVIDIA GPU A100 裝置。

vSphere Client 中的 [圖形裝置] 索引標籤列出了 NVIDIA GPU A100 裝置。

管理員步驟 2:針對 vGPU 操作設定每個 ESXi 主機

透過啟用 [直接共用] 和 SR-IOV,設定 vGPU 的每個 ESXi 主機。

在每個 ESXi 主機上啟用直接共用

若要解除鎖定 NVIDIA vGPU 功能,請在將啟用工作負載管理的 vCenter 叢集中的每個 ESXi 主機上啟用直接共用模式。

若要啟用 直接共用,請完成以下步驟。如需其他指導,請參閱 vSphere 說明文件中的 設定圖形裝置
  1. 使用 vSphere Client 登入 vCenter Server
  2. 選取 vCenter 叢集中的 ESXi 主機。
  3. 選取設定 > 硬體 > 圖形
  4. 選取 NVIDIA GPU 加速器裝置。
  5. 編輯圖形裝置設定。
  6. 選取直接共用
  7. 選取重新啟動 X.Org 伺服器。
  8. 按一下確定可儲存組態。
  9. 在 ESXi 主機上按一下滑鼠右鍵,然後將其置於維護模式。
  10. 將主機重新開機。
  11. 當主機再次執行時,將其退出維護模式。
  12. 對將啟用工作負載管理的 vCenter 叢集中的每個 ESXi 主機重複此過程。

[編輯圖形裝置設定] 頁面,其中選取了 [直接共用] 和 [重新啟動 X.Org 伺服器] 選項。

vSphere Client 中的 [圖形裝置] 索引標籤列出了已啟用 [直接共用] 模式的 NVIDIA GPU A100 裝置。

為 NVIDIA GPU A30 和 A100 裝置開啟 SR-IOV BIOS

如果使用多執行個體 GPU (MIG 模式) 所需的 NVIDIA A30A100 GPU 裝置,則必須在 ESXi 主機上啟用 SR-IOV。如果未啟用 SR-IOV,Tanzu Kubernetes 叢集節點虛擬機器將無法啟動。如果發生這種情況,您會在啟用了工作負載管理vCenter Server最近的工作窗格中看到以下錯誤訊息。

Could not initialize plugin libnvidia-vgx.so for vGPU nvidia_aXXX-xx. Failed to start the virtual machine. Module DevicePowerOn power on failed.

若要啟用 SR-IOV,請使用 Web 主控台登入 ESXi 主機。選取管理 > 硬體。選取 NVIDIA GPU 裝置,然後按一下設定 SR-IOV。您可以從此處開啟 SR-IOV。如需其他指導,請參閱 vSphere 說明文件中的單一根目錄 I/O 虛擬化 (SR-IOV)

備註: 如果使用具有 NIC 傳遞的 vGPU,請參閱以下主題以瞭解其他 ESXi 設定步驟: 在 TKGS 叢集上部署 AI/ML 工作負載的 vSphere 管理員附錄 (vGPU 和動態 DirectPath IO)

管理員步驟 3:在每個 ESXi 主機上安裝 NVIDIA 主機管理器驅動程式

若要執行具有 NVIDIA vGPU 圖形加速的 Tanzu Kubernetes 叢集節點虛擬機器,請在將啟用工作負載管理的 vCenter 叢集中的每個 ESXi 主機上安裝 NVIDIA 主機管理器驅動程式。

NVIDIA vGPU 主機管理器驅動程式元件封裝在 vSphere 安裝服務包 (VIB) 中。NVAIE VIB 由您的組織透過其 NVIDIA GRID 授權方案提供給您。VMware 不提供 NVAIE VIB,也不提供下載服務。根據 NVIDIA 授權方案,授權伺服器由您的組織設定。如需詳細資訊,請參閱 NVIDIA 虛擬 GPU 軟體快速入門指南

設定 NVIDIA 環境後,在每個 ESXi 主機上執行以下命令,將 NVIDIA 授權伺服器位址和 NVAIE VIB 版本取代為適合您環境的值。如需其他指導,請參閱 VMware 支援知識庫中的 在 ESXi 上安裝和設定 NVIDIA VIB
備註: 在 ESXi 主機上安裝的 NVAIE VIB 版本必須與節點虛擬機器上安裝的 vGPU 軟體版本相符。下面的版本僅作舉例之用。
esxcli system maintenanceMode set --enable true
esxcli software vib install -v ftp://server.domain.example.com/nvidia/signed/NVIDIA_bootbank_NVIDIA-VMware_ESXi_7.0_Host_Driver_460.73.02-1OEM.700.0.0.15525992.vib
esxcli system maintenanceMode set --enable false
/etc/init.d/xorg restart

管理員步驟 4:驗證 ESXi 主機是否已做好執行 NVIDIA vGPU 操作的準備

若要驗證每個 ESXi 主機是否都已準備好執行 NVIDIA vGPU 操作,請在將啟用 工作負載管理的 vCenter 叢集中的每個 ESXi 主機上執行以下檢查:
  • 透過 SSH 登入 ESXi 主機,進入 shell 模式,然後執行命令 nvidia-smi。NVIDIA 系統管理介面是由 NVIDA vGPU 主機管理員提供的命令列公用程式。執行此命令將傳回主機上的 GPU 和驅動程式。
  • 執行以下命令以驗證是否已正確安裝 NVIDIA 驅動程式:esxcli software vib list | grep NVIDA
  • 驗證主機是否設定了 GPU 直接共用並開啟了 SR-IOV (如果使用的是 NVIDIA A30 或 A100 裝置)。
  • 使用 vSphere Client,在為 GPU 設定的 ESXi 主機上建立一個包含 PCI 裝置的新虛擬機器。NVIDIA vGPU 設定檔應顯示且可選取。[自訂硬體] 索引標籤,其中選取了 NVIDIA vGPU 設定檔。

管理員步驟 5:在設定了 vGPU 的 vCenter 叢集上啟用工作負載管理

現在,ESXi 主機已設定為支援 NVIDIA vGPU,請建立包含這些主機的 vCenter 叢集。若要支援工作負載管理,vCenter 叢集必須滿足特定要求,包括共用儲存區、高可用性、全自動 DRS。

若要啟用工作負載管理,還需要選取網路堆疊 (本機 vSphere vDS 網路或 NSX-T Data Center 網路)。如果使用 vDS 網路,則需要安裝負載平衡器 (NSX Advanced 或 HAProxy)。

啟用 工作負載管理後,將獲得一個在啟用了 vGPU 的 ESXi 主機上執行的 主管叢集。請參閱以下工作和說明文件以啟用 工作負載管理
備註: 如果您的 vCenter 叢集已啟用 工作負載管理,請跳過此步驟,即假設該叢集使用為 vGPU 設定的 ESXi 主機。

管理員步驟 6:為 Tanzu Kubernetes Ubuntu 版本建立或更新內容程式庫

在設定了 GPU 的 vCenter 叢集上啟用 工作負載管理後,下一步是為 Tanzu Kubernetes 版本 OVA 映像建立內容程式庫。
警告: 如果已為包含 Photon 映像的 Tanzu Kubernetes 版本建立了內容程式庫,則只需將現有內容程式庫與所需的 Ubuntu 映像進行同步。請勿為 TKGS 叢集建立第二個內容程式庫。這樣做可能會導致系統不穩定。

NVIDIA vGPU 需要使用 Ubuntu 作業系統。VMware 出於此類目的提供了 Ubuntu OVA。不能將 PhotonOS Tanzu Kubernetes 版本用於 vGPU 叢集。

若要將此映像匯入到 vSphere with Tanzu 環境中,請選擇資料表中列出的方法之一,然後按照相應的說明進行操作。
內容程式庫類型 說明
建立已訂閱內容程式庫並自動將 Ubuntu OVA 與您的環境同步。 為 Tanzu Kubernetes 版本建立、保護和同步已訂閱內容程式庫
建立本機內容程式庫並手動將 Ubuntu OVA 上傳到您的環境。 為 Tanzu Kubernetes 版本建立、保護和同步本機內容程式庫
完成此工作後,您應該會看到內容程式庫中包含了 Ubuntu OVA。

Ubuntu 中的 [OVF 與 OVA 範本] 頁面顯示內容程式庫中可用的 Ubuntu OVA。

管理員步驟 7:建立包含 vGPU 設定檔的自訂虛擬機器類別

下一步是建立包含 vGPU 設定檔的自訂虛擬機器類別。系統在建立 Tanzu Kubernetes 叢集節點時將使用此類別定義。

按照以下說明建立包含 vGPU 設定檔的自訂虛擬機器類別。如需其他指導,請參閱 在 vSphere with Tanzu 中將 PCI 裝置新增到虛擬機器類別
備註: 如果使用具有 NIC 傳遞的 vGPU,請參閱以下主題以瞭解其他步驟: 在 TKGS 叢集上部署 AI/ML 工作負載的 vSphere 管理員附錄 (vGPU 和動態 DirectPath IO)
  1. 使用 vSphere Client 登入 vCenter Server
  2. 選取工作負載管理
  3. 選取服務
  4. 選取虛擬機器類別
  5. 按一下建立虛擬機器類別
  6. 組態索引標籤上,設定自訂虛擬機器類別。
    組態欄位 說明
    名稱 輸入自訂虛擬機器類別的自描述性名稱,例如 vmclass-vgpu-1
    vCPU 計數 2
    CPU 資源保留 可選,按一下 [確定] 留空
    記憶體 例如 80 GB
    記憶體資源保留 100% (如果在虛擬機器類別中設定了 PCI 裝置,則強制使用此值)
    PCI 裝置
    備註: 針對 PCI 裝置選取 [是] 將告知系統您使用的是 GPU 裝置,並將變更虛擬機器類別組態以支援 vGPU 組態。

    例如:

    ""

  7. 下一步
  8. PCI 裝置索引標籤上選取新增 PCI 裝置 > NVIDIA vGPU 選項。
  9. 設定 NVIDIA vGPU 型號。
    NVIDIA vGPU 欄位 說明
    型號 NVIDIA vGPU > 型號功能表所提供的型號中選取 NVIDIA GPU 硬體裝置型號。如果系統未顯示任何設定檔,表示叢集中的所有主機都不具有受支援的 PCI 裝置。
    GPU 共用

    此設定定義如何在啟用了 GPU 的虛擬機器之間共用 GPU 裝置。vGPU 實作有兩種類型:時間共用多執行個體 GPU 共用

    在 [時間共用] 模式下,vGPU 排程器指示 GPU 在一段時間內依序為每個啟用了 vGPU 的虛擬機器執行工作,並將盡最大努力平衡各 vGPU 的效能。

    MIG 模式允許多個啟用了 vGPU 的虛擬機器在單個 GPU 裝置上並行執行。MIG 模式基於較新的 GPU 架構,僅在 NVIDIA A100 和 A30 裝置上受支援。如果沒有看到 MIG 選項,表示您選取的 PCI 裝置不支援該選項。

    GPU 模式 運算
    GPU 記憶體 例如 8 GB
    vGPU 數目 例如 1

    例如,以下是在 [時間共用] 模式下設定的 NVIDIA vGPU 設定檔:

    [PCI 裝置] 索引標籤,包含在 [時間共用] 模式下設定的 NVIDIA vGPU 設定檔。

    例如,以下是在具有受支援 GPU 裝置的情況下在 MIG 模式下設定的 NVIDIA vGPU 設定檔:

    [PCI 裝置] 索引標籤,包含在 [多執行個體 GPU 共用] 模式下設定的 NVIDIA vGPU 設定檔。

  10. 下一步
  11. 查看並確認您的選擇。
  12. 按一下完成
  13. 驗證虛擬機器類別清單中是否有新的自訂虛擬機器類別。

管理員步驟 8:為 TKGS GPU 叢集建立和設定 vSphere 命名空間

為計劃佈建的每個 TKGS GPU 叢集建立一個 vSphere 命名空間。透過新增具有編輯權限的 vSphere SSO 使用者設定命名空間,並連結用於持續性磁碟區的儲存區原則。

若要執行此操作,請參閱建立和設定 vSphere 命名空間

管理員步驟 9:將內容程式庫和虛擬機器類別與 vSphere 命名空間相關聯

建立並設定 vSphere 命名空間後,將包含 Ubuntu OVA 的內容程式庫與 vSphere 命名空間相關聯,並將具有 vGPU 設定檔的自訂虛擬機器類別與同一個 vSphere 命名空間相關聯。
工作 說明
將包含用於 vGPU 的 Ubuntu OVA 的內容程式庫與將在其中佈建 TKGS 叢集的 vSphere 命名空間相關聯。

請參閱為 Tanzu Kubernetes 版本設定 vSphere 命名空間

將具有 vGPU 設定檔的自訂虛擬機器類別與將在其中佈建 TKGS 叢集的 vSphere 命名空間相關聯。

請參閱將虛擬機器類別與 vSphere with Tanzu 中的命名空間相關聯

下列範例顯示了已與可用於 vGPU 叢集的內容程式庫和自訂虛擬機器類別關聯的已設定 vSphere 命名空間。

""

管理員步驟 10:驗證主管叢集是否可存取

最後一個管理工作是驗證 主管叢集 是否已佈建,以及是否可供叢集營運人員用於為 AI/ML 工作負載佈建 TKGS 叢集。

  1. 下載並安裝 vSphere 適用的 Kubernetes CLI 工具

    請參閱下載並安裝 vSphere 適用的 Kubernetes CLI 工具

  2. 連線至 主管叢集

    請參閱以 vCenter Single Sign-On 使用者身分連線至 主管叢集

  3. 為叢集營運人員提供用於下載 vSphere 適用的 Kubernetes CLI 工具 的連結以及 vSphere 命名空間的名稱。

    請參閱在 TKGS 叢集上部署 AI/ML 工作負載的叢集營運人員工作流程