vSphere Auto Deploy 可以为数百台物理主机置备 ESXi 软件。

可以指定要部署的映像以及要使用此映像置备的主机。(可选)可以指定要应用到主机的主机配置文件、vCenter Server 位置(数据中心、文件夹或集群),并为每个主机分配脚本包。

vSphere Auto Deploy 简介

vSphere Auto Deploy 使用具有主机配置文件的 PXE 引导基础架构、所需映像或集群级别的配置来置备 ESXi 主机。

ESXi 主机的状况信息

注: 在作为 vSphere Distributed Services Engine 功能的一部分配置了 DPU 的 ESXi 主机上,不能使用 Auto Deploy
启动为 vSphere Auto Deploy 设置的物理主机时,vSphere Auto Deploy 会将 PXE 引导基础架构与 vSphere 主机配置文件、所需的映像或集群级别的配置结合使用来置备并自定义该主机。主机本身并不存储任何状况,而是由 vSphere Auto Deploy 服务器管理每个主机的状况信息。vSphere Auto Deploy 会将要置备的 ESXi 主机的信息存储在不同位置中。通过单个映像或集群级配置管理的映像配置文件、主机配置文件或集群,其位置信息最初是在用于将计算机映射到映像配置文件和主机配置文件的规则中指定的。
表 1. vSphere Auto Deploy 存储部署信息
信息类型 描述 信息源
映像状况 ESXi 主机上运行的可执行软件。 使用 vSphere ESXi Image Builder 或 vSphere Lifecycle Manager 映像创建的映像配置文件。
配置状况 确定主机如何配置的可配置设置,例如,虚拟交换机及其设置、驱动程序设置、引导参数等。 使用主机配置文件 UI 创建的主机配置文件,或在清单 UI 中设置集群以在集群级别管理所有 ESXi 主机设置时创建的配置。
动态状况 由正在运行的软件生成的运行时状况,例如,生成的专用密钥或运行时数据库。 重新引导时丢失的主机内存。
虚拟机状况 存储在主机上的虚拟机以及虚拟机自动启动信息(仅限于后续引导)。 vCenter Server 向 vSphere Auto Deploy 发送的虚拟机信息必须能够向 vSphere Auto Deploy 提供虚拟机信息。
用户输入 基于用户输入的状况(如系统启动时用户提供的 IP 地址)无法自动包含在主机配置文件中。

在首次引导过程中,由 vCenter Server 存储的主机自定义信息。

可以创建某些值需要用户输入的主机配置文件。

当 vSphere Auto Deploy 应用需要用户提供信息的主机配置文件时,主机将置于维护模式。使用主机配置文件 UI 可检查主机配置文件合规性,并对提示作出响应以自定义主机。

vSphere Auto Deploy 架构

vSphere Auto Deploy 基础架构由若干个组件组成。

有关详细信息,请观看“Auto Deploy 架构”视频:

图 1. vSphere Auto Deploy 架构

VIB 和映像配置文件、规则引擎和 Auto Deploy 服务器是 Auto Deploy 的主要组件

vSphere Auto Deploy 服务器
ESXi 主机提供映像和主机配置文件。
vSphere Auto Deploy 规则引擎
向 vSphere Auto Deploy 服务器发送信息,告知哪个映像配置文件和哪个主机配置文件是为哪个主机提供的。管理员使用 vSphere Auto Deploy 定义将映像配置文件和主机配置文件分配给主机的规则。有关 vSphere Auto Deploy 规则和规则集的详细信息,请参见 规则和规则集
除了使用 VMware Image Builder 和主机配置文件创建的旧版映像配置文件之外,还可以创建 vSphere Auto Deploy 规则,以使用单个 vSphere Lifecycle Manager 映像或集群级别的配置部署 ESXi。
映像配置文件
定义一组用于引导 ESXi 主机的 VIB。
  • VMware 及其合作伙伴在公用库中提供了映像配置文件和 VIB。使用 vSphere ESXi Image Builder 检查库,以及使用 vSphere Auto Deploy 规则引擎指定哪个映像配置文件分配给哪个主机。
  • 可以使用 vSphere Lifecycle Manager 映像将软件和固件更新应用到集群中的 ESXi 主机。使用单个映像管理集群中的所有主机可确保集群范围的主机映像同质性。
  • 使用 ESXi 8.0,可以设置在集群级别管理所有 ESXi 主机设置的集群。
  • VMware 客户可以根据库中的公用映像配置文件和 VIB 创建自定义映像配置文件并将此文件应用到主机。请参见使用 vSphere ESXi Image Builder 自定义安装
主机配置文件
定义特定于计算机的配置,如网络连接或存储设置。使用主机配置文件 UI 创建主机配置文件。您可以为引用主机创建主机配置文件,并将该主机配置文件应用到环境中的其他主机,以使配置一致。有关详细信息,请参见《 《vSphere 主机配置文件》》文档或 设置 vSphere Auto Deploy 引用主机部分。
主机自定义
存储在将主机配置文件应用到主机时由用户提供的信息。主机自定义可能包含 IP 地址或用户为该主机提供的其他信息。有关主机自定义的详细信息,请参见《 《vSphere 主机配置文件》》文档。

在先前版本的 vSphere Auto Deploy 中,主机自定义被称为应答文件。

Auto Deploy 证书

默认情况下,Auto Deploy 服务器使用 VMware Certificate Authority (VMware CA) 签名的证书置备每个主机。有关详细信息,请参见管理 ESXi 主机的证书

或者,如果您的公司政策要求您使用自定义证书,则可以将 Auto Deploy 服务器设置为使用未由 VMware CA 签名的自定义证书置备所有主机。Auto Deploy 服务器将成为第三方 CA 的辅助证书颁发机构。在证书颁发机构模式下,您必须管理证书。无法从 vSphere Client 刷新和续订证书。在此模式下,也不能仅选择一组要使用自定义证书置备的主机,并且只能为有状态主机手动签署自定义证书。有关详细信息,请参见在 Auto Deploy 中使用自定义证书

借助 ESXi 8.0,Auto Deploy 提供了第三个选项,允许您在 vSphere 外部生成证书,并独立于 vCenter Server 中的证书管理。例如,您可以使用自定义脚本或使用域名注册表服务(如 Verisign)的提供程序生成自定义证书。您只能对一组 ESXi 主机使用自定义证书。您也可以为无状态主机提供自定义证书。ESXi 主机由用于网络引导的网卡的 MAC 地址或 ESXi 主机的 BIOS UUID 标识。可以使用 PowerCLI 通过自定义证书更新 VMware 端点证书存储 (VECS)。有关新 PowerCLI cmdlet 的详细信息,请参见 vSphere Auto Deploy PowerCLI Cmdlet 概览。VMware CA 必须信任自定义 ESXi 证书,因此您必须将自定义证书的 CA 公用证书添加到 VECS 中的 TRUSTED_ROOTS 存储。Auto Deploy 还会存储自定义证书,当它识别具有用于网络引导的网卡的相应 MAC 地址或 ESXi 主机的 BIOS UUID 的引导主机时,会自动提供自定义证书。将自定义证书添加到 VECS 时,无需停止或重新启动 Auto Deploy 或 vCenter Server,只需重新启动上载自定义证书的主机。有关详细信息,请参见在 Auto Deploy 中使用自定义证书

规则和规则集

使用一组规则来指定 vSphere Auto Deploy 服务器的行为。vSphere Auto Deploy 规则引擎会检查规则集是否有匹配的主机模式,以确定使用哪些项(映像配置文件、主机配置文件、vCenter Server 位置或脚本对象)来置备每个主机。

规则引擎将基于主机属性将软件和配置设置映射到主机。例如,可以通过编写两个规则(每个规则与一个集群的网络地址匹配)将映像配置文件或主机配置文件部署到两个主机集群中。

对于尚未添加到 vCenter Server 系统中的主机,vSphere Auto Deploy 服务器会先检查规则引擎,然后再为主机提供映像配置文件、主机配置文件和清单位置信息。对于受 vCenter Server 系统管理的主机,将使用 vCenter Server 在主机对象中存储的映像配置文件、主机配置文件和清单位置。如果您更改规则,则可以在 PowerCLI 会话中使用 vSphere Client 或 vSphere Auto Deploy cmdlet 来测试和修复规则合规性。当修复主机的规则合规性时,将会更新该主机的映像配置文件和主机配置文件分配。

规则引擎包括规则和规则集。

规则
规则可以将映像配置文件和主机配置文件分配给一组主机,或指定主机在目标 vCenter Server 系统上的位置(文件夹或集群)。规则可以通过引导 MAC 地址、SMBIOS 信息、BIOS UUID、供应商、型号或固定的 DHCP IP 地址来识别目标主机。在大多数情况下,规则可应用到多个主机。您可以在 PowerCLI 会话中使用 vSphere Client 或 vSphere Auto Deploy cmdlet 创建规则。创建规则之后,必须将其添加到规则集。仅支持活动规则集和工作规则集两个规则集。一个规则可以同时属于两个规则集(默认),或只属于工作规则集。将规则添加到规则集之后,无法再更改规则。但可以复制规则并替换副本中的项或模式。如果使用 vSphere Client 管理 vSphere Auto Deploy,则可以编辑处于非活动状态的规则。
您可以在规则中指定下列参数。
参数 描述
名称 规则名称,使用 -Name 参数指定。
项目 一个或多个项,使用 -Item 参数指定。项可以是映像配置文件、主机配置文件、目标主机的 vCenter Server 清单位置(数据中心、文件夹、集群)或自定义脚本。您可以指定多个项,并用逗号隔开。
模式

模式指定要应用规则的一个主机或一组主机。

供应商
计算机供应商名称。
型号
计算机型号名称。
序列
计算机序列号。
主机名
计算机主机名。
域名。
ipv4
计算机的 IPv4 地址。
ipv6
计算机的 IPv6 地址。

使用 BIOS 固件进行 PXE 引导只能通过 IPv4 实现,使用 UEFI 固件进行 PXE 引导可以通过 IPv4 或 IPv6 实现。

mac
引导网卡的 MAC 地址。
资产
计算机资产标记。
OEM 字符串
SMBIOS 中的 OEM 特定字符串。

您可以指定 -AllHosts 将一个项或多个项应用到所有主机。

活动规则集
当新启动的主机联系 vSphere Auto Deploy 服务器并请求映像配置文件时,vSphere Auto Deploy 服务器将检查活动规则集是否有匹配的规则。然后,使用由匹配的规则所映射的映像配置文件、主机配置文件、 vCenter Server 清单位置和脚本对象来引导主机。如果这些规则映射了多个相同类型的项,则 vSphere Auto Deploy 服务器会使用规则集中的第一项。
工作规则集
工作规则集允许在对规则所作的更改生效之前对其进行测试。例如,可以使用 vSphere Auto Deploy cmdlet 测试是否与工作规则集相符。该测试将验证受 vCenter Server 系统管理的主机是否遵循工作规则集中的规则。默认情况下,cmdlet 会将规则添加到工作规则集并激活规则。使用 NoActivate 参数将规则仅添加到工作规则集中。

对规则和规则集使用以下工作流。

  1. 更改工作规则集。
  2. 针对某一主机测试工作规则集规则,确保一切运行正常。
  3. 细化并重新测试工作规则集中的规则。
  4. 激活工作规则集中的规则。

    如果您在 PowerCLI 会话中添加了规则但未指定 NoActivate 参数,则当前位于工作规则集中的所有规则均被激活。不能激活单个规则。

请参见 PowerCLI 命令行帮助和 使用 PowerCLI cmdlet 管理 vSphere Auto Deploy,了解有关将 vSphere Auto Deploy 与 PowerCLI cmdlet 配合使用的详细信息。请参见使用 vSphere Client 管理 vSphere Auto Deploy,了解有关将 vSphere Auto Deploy 与 vSphere Client 配合使用的详细信息。