VMware vSphere (ESXi) 作为一款常用的虚拟化系统,被用于安装到各种各样的硬件平台,使用过程中最首要的就是安装映像的驱动问题,如果缺少必要的驱动程序,将导致 ESXi 无法完成安装。
这时就需要制作出自定义安装映像,将额外的驱动程序集成到安装映像中,以便顺利完成安装部署工作。
下面以 Windows 10 22H2 平台为例,演示如何制作出添加了额外驱动包的,自定义 ESXi 安装映像。
准备工作
1、下载所需的 ESXi 的离线包备用,本示例使用 7.0 版本映像。

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 映像已成功完成。
