使用 PowerCLI 设置和配置 vSphere Auto Deploy 工作环境的场景。

在此场景中,将设置并配置包含四个主机的 vSphere Auto Deploy 工作环境。您将创建规则,并使用一个映像配置文件置备其中两个主机,并使用同一映像配置文件和设置为提示用户输入的一个主机配置文件置备另外两个主机。此方案可为您提供用于生产环境的基本知识。任务描述假定您在物理主机和环境其余主机之间使用的是没有 VLAN 标记的平面网络。

要执行此方案中的任务,应具有以下背景知识和特权。
  • vSphere(vCenter ServerESXi)使用经验。
  • Microsoft PowerShell 和 PowerCLI 的基本知识。
  • Windows 系统和 vCenter Server 系统的管理员权限。

按照此方案中提供的顺序执行任务。可以不同顺序执行某些步骤,但此处使用的顺序限制了某些组件的重复操作。有关预安装检查表以及配置 vSphere Auto Deploy 的其他必备条件的详细信息,请参见安装和配置 vSphere Auto Deploy

图 1. vSphere Auto Deploy 设置和主机置备工作流
TFTP、PowerCLI、目标主机、DHCP、活动规则、主机配置文件、引用主机和主机自定义的预安装检查和设置流程。

vSphere Auto Deploy 利用了 iPXE 基础架构,因此对于旧版 BIOS 固件,只能通过 IPv4 进行 PXE 引导。如果您要使用 vSphere Auto Deploy 置备的主机具有旧版 BIOS,则 vSphere Auto Deploy 服务器必须采用 IPv4 地址。使用 UEFI 固件进行 PXE 引导可以通过 IPv4 或 IPv6 实现。

安装 TFTP 服务器

要设置 vSphere Auto Deploy 基础架构,必须在环境中安装 TFTP 服务器。vSphere Auto Deploy 依靠 TFTP 服务器将引导映像发送到其置备的主机。

此任务仅安装 TFTP 服务器。稍后将配置文件下载至该服务器。请参见在 vSphere Client 中配置 vSphere Auto Deploy 和 TFTP 环境

过程

  1. 将首选 TFTP 服务器下载到可以通过网络访问 vCenter Server 的位置,然后安装该服务器。
  2. 配置 TFTP 根目录,例如 D:\TFTP_Root\

下一步做什么

安装 PowerCLI,以通过 PowerCLI cmdlet 管理 vSphere Auto Deploy。

安装 PowerCLI

必须先安装 PowerCLI,然后才能使用通过  PowerCLI cmdlet 创建的规则管理 vSphere Auto Deploy。

过程

下一步做什么

配置目标主机的设置,以准备使用 vSphere Auto Deploy 对其进行置备。

准备 vSphere Auto Deploy 目标主机

必须配置四个主机的 BIOS 设置,并重新确认主网络设备的 MAC 地址,以准备要使用 vSphere Auto Deploy 进行置备的目标主机。

前提条件

要使用 vSphere Auto Deploy 置备的主机必须满足 ESXi 的要求。

请参见ESXi 硬件要求

过程

  1. 更改四个物理主机中每个主机的 BIOS 设置,以强制主机从主网络设备引导。
  2. 重新确认主网络设备的 MAC 地址。

下一步做什么

设置 DHCP 服务器,以便为每个目标主机提供一个 iPXE 二进制文件。

准备 DHCP 服务器以用于 vSphere Auto Deploy 置备

准备 vSphere Auto Deploy 目标主机时,必须在此方案中设置 DHCP 服务器,以便为每个目标主机提供一个 iPXE 二进制文件。

此方案中的环境使用 Active Directory 与 DNS 和 DHCP。vSphere 支持的 Windows Server 版本中包括 DHCP 服务器。

过程

  1. 使用管理员特权登录到 DHCP 服务器。
  2. 为 IP 地址范围创建 DHCP 范围。
    1. 单击开始 > 设置 > 控制面板 > 管理工具,然后单击 DHCP
    2. 导航到 DHCP > hostname > IPv4
    3. 右键单击 IPv4,然后选择新范围
    4. 单击“欢迎使用”屏幕上的下一步,然后指定范围的名称和描述。
    5. 指定 IP 地址范围,然后单击下一步
    6. 单击下一步直至到达“配置 DHCP 选项”屏幕,然后选择否,稍后配置此选项
  3. 为每个目标 ESXi 主机创建 DHCP 预留。
    1. 在 DHCP 窗口中,导航到 DHCP > hostname > IPv4 > 自动部署范围 > 预留
    2. 右键单击保留,然后选择新建保留
    3. 在“新建保留”窗口中,为其中一个主机指定名称、IP 地址和 MAC 地址。MAC 地址中不能包含冒号 (:)。
      IP 预留和 MAC 地址的相关信息。

    4. 对每一个其他主机重复此过程。
  4. 将 DHCP 服务器设置为将主机指向 TFTP 服务器。
    1. 在 DHCP 窗口中,导航到 DHCP > hostname > IPv4 > 自动部署范围 > 范围选项
    2. 右键单击范围选项,然后选择配置选项
    3. 在“范围选项”窗口中,单击常规选项卡。
    4. 单击 066 引导服务器主机名,然后在“可用选项”下方的“字符串值”字段中输入所安装的 TFTP 服务器的地址。
      选中“066 引导服务器主机名”和“067 引导文件名”复选框。已在“字符串值”字段中输入文件名。

    5. 单击 067 引导文件名,然后输入 undionly.kpxe.vmw-hardwired
      undionly.kpxe.vmw-hardwired iPXE 二进制文件将用于引导 ESXi 主机。
    6. 单击应用,然后单击确定以关闭窗口。
  5. 在 DHCP 窗口中,右键单击 DHCP > hostname > IPv4 > 范围 > 激活,然后单击激活
  6. 对于 DHCP 和 DNS,如果使用的是 Active Directory,则不要从 DHCP 服务器中注销,否则请注销。

下一步做什么

启动 vSphere Auto Deploy 的 vCenter Server 服务并配置 TFTP 服务器。

vSphere Client 中配置 vSphere Auto Deploy 和 TFTP 环境

准备 DHCP 服务器之后,必须启动 vSphere Auto Deploy vCenter Server 服务并配置 TFTP 服务器。必须从 vSphere Auto Deploy 服务器下载 TFTP ZIP 文件。自定义的 FTP 服务器将提供由 vSphere Auto Deploy 提供的引导映像。

过程

  1. 使用 vSphere Client 连接到管理 vSphere Auto Deploy 服务器的 vCenter Server 系统。
  2. 启动 vSphere Auto Deploy 服务。
    1. 导航到主页 > Auto Deploy
    2. Auto Deploy 页面上,从顶部下拉菜单中选择您的 vCenter Server
    3. 单击启用 Auto Deploy 和 Image Builder 以激活服务。
      如果 Image Builder 服务已处于活动状态,请选择 配置选项卡,然后单击 启用 Auto Deploy 服务
  3. 在 Auto Deploy 清单中,单击配置选项卡。
  4. 单击下载 TFTP Zip 文件
  5. 将文件 deploy-tftp.zip 保存到安装 TFTP 服务器时创建的 TFTP_Root 目录,并解压缩该文件。

下一步做什么

将软件库添加到清单中,并使用库中的映像配置文件创建用于置备主机的规则。

准备 ESXi 软件库并编写规则

配置 vSphere Auto Deploy 基础架构后,您必须添加 ESXi 软件库,指定映像配置文件,编写规则,并将规则添加到活动规则集中。

vSphere Auto Deploy 将使用映像配置文件来置备主机,这些映像配置文件定义了 ESXi 安装过程所使用的一组 VIB。映像配置文件存储在软件库中。开始置备主机之前必须确保正确的映像配置文件可用。将软件库添加到 PowerCLI 会话后,该库将仅在当前会话期间可用,并且不会在会话之间永久有效。

此任务中的步骤将指示您运行 PowerCLI cmdlet。有关可在 PowerCLI 会话中运行的 vSphere Auto Deploy cmdlet 的其他信息,请参见vSphere Auto Deploy PowerCLI Cmdlet 概览

前提条件

确认您可以从运行 PowerCLI 的系统访问要置备的 ESXi 主机。

过程

  1. 以管理员身份直接或使用 RDP 登录到 Windows 系统的控制台。
    该任务假定已在运行 vCenter Server 系统的系统上安装了 PowerCLI
  2. PowerCLI 会话中,运行 Connect-VIServer cmdlet 以连接到已注册了 vSphere Auto Deploy 的 vCenter Server 系统。
    Connect-VIServer ipv4_address
    Cmdlet 可能会返回服务器证书警告。在生产环境中,确保不会出现服务器证书问题。在开发环境中,可以忽略此警告。
  3. 输入 vCenter Server 凭据。
  4. 运行 Add-EsxSoftwareDepot 以将联机库添加到 PowerCLI 会话。
    Add-EsxSoftwareDepot https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml

    每次启动新的 PowerCLI 会话时,都需要添加软件库。

  5. 使用 Get-EsxImageProfile cmdlet 检查软件库的内容,以确认已成功添加该库。
    cmdlet 将返回有关库中所有映像配置文件的信息。
  6. 运行 New-DeployRule cmdlet 以创建新规则。
    New-DeployRule -Name "InitialBootRule" -Item ESXi-6.0.0-2494585-standard -AllHosts
    cmdlet 会创建一个用于将指定映像配置文件分配给清单中所有主机的规则。
  7. 将新规则添加到活动规则集,以使该规则可用于 vSphere Auto Deploy 服务器。
    Add-DeployRule	-DeployRule "InitialBootRule"

下一步做什么

使用 vSphere Auto Deploy 置备第一个主机并验证其映像置备。

使用 vSphere Auto Deploy 置备第一个主机

创建规则并将其添加到活动规则集后,您可以置备第一个主机并检查其 vCenter Server 位置,以完成您的安装中映像置备的验证。

过程

  1. 打开要用作第一个 ESXi 目标主机的物理主机的控制台会话,引导主机并查找表示 iPXE 引导成功的消息。
    在引导过程中,DHCP 会将 IP 地址分配给主机。此 IP 地址与之前在 DNS 服务器中指定的名称匹配。主机会联系 vSphere Auto Deploy 服务器,并从之前下载到 TFTP_Root 目录的 iPXE tramp 文件中指示的 HTTP URL 下载 ESXi 二进制文件。vSphere Auto Deploy 的每个实例会为 TFTP 服务器生成自定义文件集。
  2. 使用 vSphere Client 连接到管理 vSphere Auto Deploy 服务器的 vCenter Server 系统。
  3. vSphere Client“主页”中,单击主机和集群
  4. 验证新置备的主机现在是否在数据中心级别的 vCenter Server 清单中。
    默认情况下,引导过程完成后,vSphere Auto Deploy 会在数据中心级别添加主机。

下一步做什么

从主机提取主机配置文件,并将其配置为需要用户输入。

从引用主机提取并配置主机配置文件

置备第一个主机后,可以提取和配置主机配置文件,以便用来将相同配置应用到其他目标主机。主机间的不同配置(例如静态 IP 地址)可通过主机自定义机制进行管理。

vSphere Auto Deploy 可使用同一主机配置文件置备每个主机。vSphere Auto Deploy 还可以使用主机自定义,从而使您能够为不同主机指定不同信息。例如,如果为 vMotion 或存储设置 VMkernel 端口,则可采用主机自定义机制指定该端口的静态 IP 地址。

过程

  1. 使用 vSphere Client 连接到管理 vSphere Auto Deploy 服务器的 vCenter Server 系统。
  2. 单击策略和配置文件,然后选择主机配置文件
  3. 单击提取主机配置文件
  4. 在向导的选择主机页面上,选择之前配置的引用主机,然后单击下一步
  5. 在向导的名称和描述页面上,输入新配置文件的名称和描述,然后单击完成
  6. 选择要编辑的主机配置文件,然后单击配置选项卡。
  7. 单击编辑主机配置文件
  8. 选择安全和服务 > 安全设置 > 安全 > 用户配置 > root
  9. 密码下拉菜单中,选择用户输入密码配置
  10. 单击保存以配置主机配置文件设置。

下一步做什么

创建 vSphere Auto Deploy 规则,以便将主机配置文件应用到其他 ESXi 主机。

创建用于置备特定 IP 范围内主机的规则

从引用主机创建主机配置文件后,可以创建一个规则,用以将之前验证的映像配置文件和您提取的主机配置文件应用到特定 IP 范围内的目标主机。

过程

  1. 使用管理员权限直接或使用 RDP 登录到 Windows 系统的控制台。
  2. PowerCLI 会话中,运行 Connect-VIServer cmdlet 以连接到已注册了 vSphere Auto Deploy 的 vCenter Server 系统。
    Connect-VIServer ipv4_address
    Cmdlet 可能会返回服务器证书警告。在生产环境中,确保不会出现服务器证书问题。在开发环境中,可以忽略此警告。
  3. 运行 Add-EsxSoftwareDepot 以将联机库添加到 PowerCLI 会话。
    Add-EsxSoftwareDepot https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml

    每次启动新的 PowerCLI 会话时,都需要添加软件库。

  4. (必选) 运行 Get-DeployRuleset cmdlet 以显示活动规则集中的规则。
  5. 创建一个规则,用以指示 vSphere Auto Deploy 使用您之前选择的映像配置文件和从引用主机创建的主机配置文件置备指定 IP 范围内的一组主机。
    New-DeployRule -name "Production01Rule" -item "image_profile",ESXiGold -Pattern "ipv4=IP_range"
  6. 将新规则添加到活动规则集。
    Add-DeployRule	-DeployRule "Production01Rule"
  7. 运行 Get-DeployRuleset 命令以检查活动规则集。
    PowerCLI 将显示类似以下示例的信息。
    Name:              Production01Rule
    PatternList:       {ipv4=address_range}
    ItemList:          {ESXi-version-XXXXXX-standard, Compute01, ESXiGold}

下一步做什么

置备主机并设置主机自定义。

置备主机并设置主机自定义

准备好使用映像配置文件和主机配置文件置备主机的规则后,您可以置备特定的目标主机。如果有主机配置文件项设置为提示用户输入,则主机将进入维护模式。应用主机配置文件或检查主机合规性,以便获得信息提示。系统会将主机自定义与主机相关联。

过程

  1. 引导要置备的其余主机。
    vSphere Auto Deploy 将引导主机,应用主机配置文件,并将主机添加到 vCenter Server 清单。主机仍保持维护模式,因为引用主机中的主机配置文件设置为针对每台主机都需要用户输入。
  2. 使用 vSphere Client 连接到管理 vSphere Auto Deploy 服务器的 vCenter Server 系统。
  3. 单击策略和配置文件,然后选择主机配置文件
  4. 右键单击为 Auto Deploy 新创建的主机配置文件,然后单击编辑主机自定义
  5. 选择主机,输入所需的主机自定义,然后单击完成
    或者,您也可以 导入主机自定义文件。
  6. 将主机配置文件应用于每个主机,并使主机退出维护模式。也可以引导每个主机。
    重新引导进度完成后,所有主机都与指定的映像一起运行,并使用引用主机配置文件中的配置。集群显示所有主机都完全合规。

结果

现在,所有主机都通过引用主机配置文件配置了共享信息,并通过主机自定义机制配置了特定于主机的信息。当您下次引导主机时,这些主机将会收到完整的主机配置文件信息(包括特定于主机的信息),以完全配置状态启动并退出维护模式。