使用 Windows 制作添加驱动的自定义 ESXi 安装映像

VMware vSphere (ESXi) 作为一款常用的虚拟化系统,被用于安装到各种各样的硬件平台,使用过程中最首要的就是安装映像的驱动问题,如果缺少必要的驱动程序,将导致 ESXi 无法完成安装。

这时就需要制作出自定义安装映像,将额外的驱动程序集成到安装映像中,以便顺利完成安装部署工作。

下面以 Windows 10 22H2 平台为例,演示如何制作出添加了额外驱动包的,自定义 ESXi 安装映像。

准备工作

1、下载所需的 ESXi 的离线包备用,本示例使用 7.0 版本映像。

VMware vSphere ESXi

2、安装 VMware.PowerCLI 工具。

此为 VMware 专属的工具包,需要通过 Windows PowerShell 安装。

# 使用管理员权限运行 Windows PowerShell
install-Module VMware.PowerCLI

需要通过网络下载相关文件,请耐心等待,具体所需时间和网速有关。

3、安装 Python 平台,仅限 3.7.9 版本。Python Release Python 3.7.9 | Python.org

立即下载:https://www.python.org/ftp/python/3.7.9/python-3.7.9-amd64.exe

安装时需要勾选添加 Python 到路径选项,以方便后续使用。(等于将 Python 命令添加到环境变量。)

4、安装 Python pip 包管理工具。

下载安装脚本:https://bootstrap.pypa.io/get-pip.py

下载后,直接双击运行即可。

5、安装 VMware.PowerCLI 所需的 Python 模块。

pip install six psutil lxml pyopenssl

6、下载 ESXi-Customizer-PS 脚本备用。

通过使用命令一步一步的操作太过繁琐,建议使用此脚本文件快速制作自定义映像。

下载最新版脚本(选择 zip 包):https://github.com/VFrontDe-Org/ESXi-Customizer-PS/releases

解压后获得 ESXi-Customizer-PS.ps1 文件备用。

#修改 PowerShell 的运行策略,允许执行任何脚本文件,使用 PowerShell 执行下列命令。
Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Force

准备驱动

根据实际情况,下载所需的驱动包文件备用,本示例以 VMware 社区提供的驱动包为例。

注意:驱动包通常是 vib 文件,或打包后的 zip 文件。

网卡驱动:https://flings.vmware.com/community-networking-driver-for-esxi

NVME 驱动:https://flings.vmware.com/community-nvme-driver-for-esxi

下载后得到 zip 文件,此驱动包无需解压。

制作自定义映像

1、新建一个目录,将 ESXi 的离线包、ESXi-Customizer-PS.ps1 脚本文件放入其中。

再创建一个子目录专门放置驱动包,例如:drivers,将前面准备好的驱动包放入此目录。

2、在此目录执行 Windows PowerShell 命令。

#使用脚本添加驱动,并生成 ESXi 映像文件。
.\ESXi-Customizer-PS.ps1 -izip VMware-ESXi-7.0U3g-20328353-depot.zip -pkgDir .\drivers\

脚本执行完成后,在目录内会自动生成一个 iso 映像文件,自定义 ESXi 映像已成功完成。

备注:VMware PowerCLI 官方帮助文档