建立 ESXi 映像設定檔以供 vSphere Auto Deploy 使用,將自訂第三方驅動程式新增至映像設定檔並匯出,或執行升級。

透過 vSphere ESXi Image Builder,可以建立 ESXi 映像設定檔以供 vSphere Auto Deploy 使用,將自訂第三方驅動程式新增到現有映像設定檔並匯出到 ISO 或服務包,以及執行升級。如需 VMware vSphere 軟體建立、封裝及分發方式的相關基本概念,請參閱《管理主機和叢集生命週期》說明文件中的〈vSphere Lifecycle Manager 可以使用的軟體封裝單元〉

圖 1. Image Builder 架構

Image Builder 會將映像設定檔和一或多個 VIB 視為輸入,然後產生 ISO 或 ZIP 做為輸出。

您可以在數個不同狀況下,使用 vSphere ESXi Image Builder cmdlet 來管理要部署到 ESXi 主機的軟體。

表 1. 可使用 vSphere ESXi Image Builder 的案例
vSphere ESXi Image Builder 使用案例 說明
建立要供 vSphere Auto Deploy 使用的映像設定檔 使用 vSphere ESXi Image Builder 建立映像設定檔,此設定檔定義 vSphere Auto Deploy 用於佈建主機的 VIB。
將自訂第三方驅動程式新增到現有的映像設定檔,並匯出到 ISO 或服務包 當您將第三方驅動程式或延伸自訂 VIB 新增到 ESXi 主機時,請使用 vSphere ESXi Image Builder 來複製 VMware 提供的基礎映像、新增自訂 VIB,然後匯出到 ISO 或離線服務包 ZIP 檔案。
執行升級 如果升級包含自訂延伸或驅動程式的系統,您可以使用 vSphere ESXi Image Builder 建立包含自訂延伸之 vSphere 8.0 相容 VIB 的自訂映像設定檔。將自訂映像設定檔匯出到 ISO 或 ZIP,以使用 vSphere Lifecycle Manager 基準升級系統。

vSphere ESXi Image Builder cmdlet 會將映像設定檔和 VIB 視為輸入,並產生各種輸出。

表 2. vSphere ESXi Image Builder Cmdlet 的輸入和輸出
參數 說明
輸入 位於軟體存放庫中的映像設定檔和 VIB 用作 Windows 用戶端上執行的 PowerCLI cmdlet 的輸入。
輸出 PowerCLI cmdlet 會建立可匯出到 ISO 映像或離線存放庫 ZIP 檔案的自訂映像設定檔。ISO 映像可用於安裝。ZIP 存放庫可由 vSphere Lifecycle Manageresxcli software 命令用於更新或安裝映像。vSphere Auto Deploy 規則中也可使用映像設定檔來自訂用於佈建 ESXi 主機的軟體。

請觀看視訊「使用 Image Builder CLI」,以取得有關 vSphere ESXi Image Builder 的資訊:

映像設定檔

映像設定檔定義 ESXi 安裝或更新程序使用的 VIB 集。映像設定檔適用於使用 vSphere Auto Deploy 佈建的 ESXi 主機。您可以使用 vSphere ESXi Image Builder 來定義和操縱映像設定檔。

映像設定檔需求

您可以從頭建立自訂映像設定檔,或複製現有設定檔並新增或移除 VIB。設定檔必須符合下列需求才有效。

  • 每個映像設定檔都必須具有唯一的名稱和廠商組合。
  • 每個映像設定檔都具有接受程度。透過 vSphere ESXi Image Builder cmdlet 將 VIB 新增到映像設定檔時,Image Builder 會檢查 VIB 是否符合為設定檔定義的接受程度。
  • 您無法移除其他 VIB 所需的 VIB。
  • 不能在一個映像設定檔中包含同一 VIB 的兩個版本。新增新版 VIB 時,新版本會取代現有 VIB 版本。

映像設定檔驗證

映像設定檔及其 VIB 必須符合數個準則才有效。

  • 映像設定檔必須至少包含一個基底 VIB 和一個可開機核心模組。
  • 如果映像設定檔中有任何 VIB 相依於其他 VIB,則其他 VIB 也必須包含在映像設定檔中。VIB 建立者會將該資訊儲存在 SoftwarePackage 物件的 Depends 內容中。
  • VIB 彼此不得有衝突。VIB 建立者會將衝突資訊儲存在 SoftwarePackage 物件的 Conflicts 內容中。
  • 具有相同名稱但版本不同的兩個 VIB 不能同時存在。新增新版 VIB 時,新版本會取代現有 VIB 版本。
  • 不存在任何接受程度驗證問題。

對映像設定檔進行變更時,vSphere ESXi Image Builder 會檢查該變更是否不會導致設定檔失效。

相依性驗證
當您新增或移除 VIB 時,vSphere ESXi Image Builder 會檢查是否符合套件相依性。每個 SoftwarePackage 物件皆包含一個 Depends 內容,該內容指定 VIB 所依賴的其他 VIB 的清單。請參閱 ImageProfile、SoftwarePackage 和 ImageProfileDiff 物件的結構
接受程度驗證
每次建立或變更映像設定檔時,vSphere ESXi Image Builder 都執行接受程度驗證。vSphere ESXi Image Builder 會根據設定檔允許的最低接受程度,來檢查映像設定檔中 VIB 的接受程度。每次驗證 VIB 的簽章時,也會一併驗證 VIB 的接受程度。

在匯出期間驗證 VIB

當您將映像設定檔匯出到 ISO 時,vSphere ESXi Image Builder 會透過執行下列動作來驗證每個 VIB。

  • 透過檢查每個 SoftwarePackage 物件的 Conflicts 內容,來檢查是否不存在任何衝突。
  • 執行 VIB 簽章驗證。簽章驗證可防止對 VIB 套件進行未經授權的修改。簽章是密碼編譯總和檢查碼,可保證 VIB 由其作者產生。在 ESXi 主機上安裝 VIB 期間和 vSphere Auto Deploy 伺服器使用 VIB 時,也會進行簽章驗證。
  • 檢查 VIB 是否遵循檔案路徑使用規則。VMware 會測試 VMwareCertified 和 VMwareAccepted VIB,保證這些 VIB 永遠遵循檔案路徑使用規則。

使用接受程度

主機、映像設定檔和個別 VIB 皆具有接受程度。VIB 接受程度顯示測試 VIB 的方式。瞭解每種接受程度的含義、如何變更接受程度以及這些變更的含義是安裝和更新程序重要部分。

接受程度是針對主機、映像設定檔和個別 VIB 設定的。ESXi映像或映像設定檔的預設接受程度為 PartnerSupported。

主機接受程度
主機接受程度可決定能夠在主機上安裝的 VIB。您可以使用 ESXCLI 命令來變更主機的接受程度。依預設, ESXi主機的接受程度為 PartnerSupported,可以使用 PartnerSupported VIB 輕鬆進行更新。
備註: VMware 支援接受程度為 PartnerSupported 的主機。如需瞭解接受程度為 PartnerSupported 的個別 VIB 的相關問題,請連絡您合作夥伴的支援組織。
映像設定檔接受程度
映像設定檔接受程度在映像設定檔中設定為最低的 VIB 接受程度。如果要將具有低接受程度的 VIB 新增到映像設定檔,您可以使用 Set-EsxImageProfilecmdlet 來變更映像設定檔接受程度。請參閱 設定映像設定檔接受程度

vSphere Lifecycle Manager不會顯示實際接受程度。使用 vSphere ESXi Image Builder cmdlet 可擷取 VIB 和映像設定檔的接受程度資訊。

VIB 接受程度
VIB 的接受程度是在建立 VIB 時設定的。僅 VIB 建立者可以設定該接受程度。

如果您在嘗試佈建主機時所使用的映像設定檔或 VIB 的接受程度低於該主機的接受程度,則會發生錯誤。變更主機的接受程度來安裝映像設定檔或 VIB。請參閱變更主機接受程度。變更主機的接受程度會變更該主機的支援程度。

主機、映像設定檔或 VIB 的接受程度可讓您判定測試 VIB 的人員以及為 VIB 提供支援的人員。VMware 支援下列接受程度。

VMwareCertified
VMwareCertified 接受程度具有最為嚴格的需求。此程度的 VIB 能夠完全通過全面測試,該測試相當於相同技術的 VMware 內部品質保證測試。今天,僅以此程度發佈 I/O Vendor Program (IOVP) 計畫驅動程式。VMware 受理此接受程度的 VIB 的支援致電。
VMwareAccepted
此接受程度的 VIB 雖然已通過驗證測試,但這些測試並非對軟體的每項功能進行全面測試。合作夥伴會執行測試並且 VMware 會驗證結果。現在,以此程度發佈的 VIB 包括 CIM 提供者和 PSA 外掛程式。VMware 會將此接受程度的 VIB 支援致電的客戶轉交給合作夥伴的支援組織。
PartnerSupported
接受程度為 PartnerSupported 的 VIB 是由 VMware 信任的合作夥伴發佈的。合作夥伴會執行所有測試。VMware 不會驗證結果。合作夥伴想要在 VMware 系統中啟用的新技術或非主流技術將使用此程度。現在,驅動程式 VIB 技術 (例如 Infiniband、ATAoE 和 SSD) 皆採用此程度,並具有非標準硬體驅動程式。VMware 會將此接受程度的 VIB 支援致電的客戶轉交給合作夥伴的支援組織。
CommunitySupported
CommunitySupported 接受程度適用於由未參與 VMware 合作夥伴計劃的個人或公司建立的 VIB。此程度的 VIB 尚未通過任何 VMware 核准的測試計劃,且不受 VMware 技術支援或 VMware 合作夥伴的支援。

變更主機接受程度

您可以降低主機接受程度,來符合要安裝的 VIB 或映像設定檔的接受程度。

主機上每個 VIB 的接受程度必須至少與主機接受程度相同。例如,您不能在接受程度為 VMwareAccepted 的主機上安裝接受程度為 PartnerSupported 的 VIB。您必須先降低主機的接受程度。如需有關接受程度的詳細資訊,請參閱使用接受程度

警告: 變更 CommunitySupported 的主機接受程度會影響主機的可支援性,並且可能影響主機的安全性。

必要條件

安裝 ESXCLI。請參閱ESXCLI 入門。若要進行疑難排解,請在 ESXi Shell 中執行 esxcli 命令。

程序

  1. 擷取 VIB 或映像設定檔的接受程度。
    選項 說明
    檢視所有 VIB 的資訊
    esxcli --server=server_name software
    					 sources vib list --depot=depot_URL
    檢視指定 VIB 的資訊
    esxcli --server=server_name software
    					 sources vib list --viburl=vib_URL
    檢視所有映像設定檔的資訊
    esxcli --server=server_name software
    					 sources profile list --depot=depot_URL
    檢視指定映像設定檔的資訊
    esxcli --server=server_name software
    					 sources profile get --depot=depot_URL
    					 --profile=profile_name
  2. 檢視主機接受程度。
    esxcli --server=server_name software acceptance get
  3. 變更主機的接受程度。
    esxcli
    				--server=server_name software acceptance set --level=acceptance_level

    acceptance_level 的值可以是 VMwareCertifiedVMwareAcceptedPartnerSupportedCommunitySupportedacceptance_level 的值區分大小寫。

    備註: 如果主機的接受程度高於要新增的 VIB 或映像設定檔,您可以執行 esxcli software vibesxcli software profile 命名空間中的命令並指定 --force 選項。由於您強制執行接受程度低於主機接受程度的 VIB 或映像設定檔,並且設定不再一致,因此使用 --force 選項時會出現警告。在接受程度不一致的主機上安裝 VIB、移除 VIB 或執行其他某些作業時,會重複出現該警告。

設定映像設定檔接受程度

如果想要將 VIB 新增到映像設定檔,並且該 VIB 的接受程度低於該映像設定檔的接受程度,則可以複製接受程度較低的映像設定檔或變更該映像設定檔的接受程度。

您可以將 VMwareCertified、VMwareAccepted、PartnerSupported 或 CommunitySupported 指定為映像設定檔的接受程度。如果您降低接受程度,則映像設定檔和使用該設定檔佈建主機的支援層級將會變更。如需詳細資訊,請參閱 使用接受程度

必要條件

安裝 PowerCLI 和所有必備軟體。請參閱設定vSphere ESXi Image Builder

程序

  1. PowerCLI 工作階段中,針對您要使用的每個存放庫執行 Add-EsxSoftwareDepot cmdlet。
    選項 動作
    遠端存放庫 執行 Add-EsxSoftwareDepot -DepotUrl <depot_url>
    ZIP 檔案
    1. 將 ZIP 檔案下載到本機檔案系統。
    2. 執行 Add-EsxSoftwareDepot -DepotUrl C:\<file_path>\<offline-bundle>.zip
    Cmdlet 會傳回一或多個 SoftwareDepot 物件。
  2. 取得映像設定檔的接受程度。
    Get-EsxImageProfile -Name string
  3. 設定映像設定檔的接受程度。
    Set-EsxImageProfile -Name string -AcceptanceLevel level