Windows 虚拟机
在 XenServer® 主机上安装 Windows 虚拟机需要硬件虚拟化支持(Intel VT 或 AMD-V)。
注意:
XenServer 上托管的 Windows 虚拟机不支持嵌套虚拟化。
创建 Windows 虚拟机的基本步骤
在虚拟机上安装 Windows 的过程包括以下步骤:
-
选择合适的 Windows 模板
-
选择合适的启动模式
-
安装 Windows 操作系统
-
安装适用于 Windows 的 XenServer VM Tools(I/O 驱动程序和管理代理)
警告:
仅当虚拟机安装了适用于 Windows 的 XenServer VM Tools 时,才支持 Windows 虚拟机。
Windows 虚拟机模板
通过使用 XenCenter® 或 xe CLI 克隆相应的模板,然后安装操作系统,将 Windows 操作系统安装到虚拟机上。各个来宾的模板具有预定义的平台标志,这些标志定义了虚拟硬件的配置。例如,所有 Windows 虚拟机都安装了启用 ACPI 硬件抽象层 (HAL) 模式。如果以后将其中一个虚拟机更改为具有多个虚拟 CPU,Windows 会自动将 HAL 切换到多处理器模式。
下表列出了可用的 Windows 模板:
| 模板名称 | 支持的引导模式 | 描述 |
|---|---|---|
| Windows 10 (64 位版本) | BIOS、UEFI、UEFI 安全引导 | 用于安装 Windows 10 (64 位) |
| Windows 11 操作系统 | UEFI、UEFI 安全引导 | 用于安装 Windows 11 |
| Windows Server 2016 操作系统 | BIOS、UEFI、UEFI 安全引导 | 用于安装 Windows Server 2016 操作系统或 Windows Server Core 2016 操作系统 |
| Windows 服务器 2019 | BIOS、UEFI、UEFI 安全引导 | 用于安装 Windows 服务器 2019 或 Windows 服务器核心版 2019 |
| Windows 服务器 2022 | BIOS、UEFI、UEFI 安全启动 | 用于安装 Windows 服务器 2022 或 Windows Server Core 2022 |
| Windows 服务器 2025 | BIOS、UEFI、UEFI 安全启动 | 用于安装 Windows 服务器 2025 或 Windows Server Core 2025 |
XenServer 支持列出的所有 Windows 版本的 SKU(版本)。
附加 ISO 映像库
Windows 操作系统可以从 XenServer 主机上的物理 CD-ROM 驱动器中的安装 CD 安装,也可以从 ISO 映像安装。有关如何从 Windows 安装 CD 制作 ISO 映像并使其可用的信息,请参阅创建 ISO 映像。
使用 XenCenter 创建 VM
创建 Windows VM:
-
在 XenCenter 工具栏上,单击新建 VM 按钮以打开新建 VM 向导。
新建 VM 向导允许您配置新 VM,调整 CPU、存储和网络资源的各种参数。
-
选择 VM 模板。
首先,选择一个合适的 VM 模板。模板包含用于创建具有特定客户操作系统以及最佳存储、CPU、内存和虚拟网络配置的 VM 的设置信息。提供了各种不同的模板,您可以添加自己的自定义模板。有关更多信息,请参阅模板和 BIOS 选项。
选择内置 Windows 模板时,您可以通过启用或禁用“允许 Windows Update 交付 I/O 驱动程序”复选框来管理通过 Windows Update 为 XenServer VM Tools 提供的 I/O 驱动程序更新。
对于自定义模板或快照,“新建 VM”向导会显示
has-vendor-device字段的当前值。此字段必须设置为 true,才能允许通过 Windows Update 交付 PV 驱动程序。注意:
如果您打算将 Windows VM 用作 Citrix Provisioning 目标或启用 reset-on-boot 标志,则不能使用任何自动化更新机制。在这种情况下,请确保禁用“允许 Windows Update 交付 I/O 驱动程序”复选框。有关详细信息,请参阅 Citrix Provisioning 目标或重置启动计算机的设置。
-
(可选)配置 BIOS 字符串。
如果您要在 VM 上安装的操作系统仅与原始硬件兼容,请选中“将主机 BIOS 字符串复制到 VM”复选框。例如,您可能将此选项用于随特定计算机打包的操作系统安装 CD。首次启动 VM 后,BIOS 字符串无法更改,因此请务必在继续操作之前确保其正确无误。
要使用 CLI 复制 BIOS 字符串,请参阅 从经销商选项套件 (BIOS 锁定) 介质安装 VM。高级用户可以设置用户定义的 BIOS 字符串。有关详细信息,请参阅 用户定义的 BIOS 字符串。
-
为新 VM 输入名称和可选描述。
-
选择要在新 VM 上安装的操作系统介质源。
从 CD/DVD 安装是入门最简单的选项。
- 选择默认安装源选项(DVD 驱动器)
- 将磁盘插入 XenServer 主机的 DVD 驱动器
XenServer 还允许您从各种来源(包括预先存在的 ISO 库)提取操作系统安装介质。ISO 映像是一个文件,其中包含光盘(CD、DVD 等)所包含的所有信息。在这种情况下,ISO 映像将包含与 Windows 安装 CD 相同的操作系统数据。
要附加预先存在的 ISO 库,请单击“新建 ISO 库”并指明 ISO 库的位置和类型。然后,您可以从列表中选择特定的操作系统 ISO 介质。
-
在“安装介质”选项卡中,您可以为 VM 选择启动模式。默认情况下,XenCenter 会为 VM 操作系统版本选择最安全的可用启动模式。
注意:
- 如果所选的 VM 模板不支持 UEFI 引导,则 UEFI 引导和UEFI 安全引导选项显示为灰色。
- 首次启动 VM 后,无法更改引导模式。
有关详细信息,请参阅来宾 UEFI 引导和安全引导。
-
如果需要,请更改选项创建并附加新的 vTPM。
- 对于需要 vTPM 的 VM 操作系统,此选项处于选中状态且无法取消选择。
- 对于不支持 vTPM 的 VM 操作系统,此选项显示为灰色且无法选择。
- 对于支持 vTPM 但不需要它的 VM 操作系统,请选择是否将 vTPM 附加到 VM。
有关详细信息,请参阅vTPM。
-
为 VM 选择一个主服务器。
主服务器是为池中 VM 提供资源的主机。当您为 VM 指定主服务器时,XenServer 会尝试在该主机上启动 VM。如果此操作不可行,则会自动选择同一池中的备用主机。要选择主服务器,请单击将 VM 放置在此服务器上,然后从列表中选择一个主机。
注意:
- 在启用 WLB 的池中,指定的主服务器不用于启动、重新启动、恢复或迁移 VM。相反,工作负载平衡通过分析 XenServer 资源池指标并推荐优化来为 VM 指定最佳主机。
- 如果 VM 分配有一个或多个虚拟 GPU,则主服务器指定无效。相反,主机指定基于用户设置的虚拟 GPU 放置策略。
- 在滚动池升级期间,迁移 VM 时不考虑主服务器。相反,VM 会迁移回升级前所在的主机。
如果您不想指定主服务器,请单击不为此 VM 分配主服务器。该 VM 将在任何具有所需资源的宿主机上启动。
单击下一步继续。
-
为 VM 分配处理器和内存资源。对于 Windows 10 VM(64 位),默认值为 2 个虚拟 CPU 和 4 GB RAM。您也可以选择修改默认值。单击下一步继续。
-
分配虚拟 GPU。新建 VM向导会提示您为 VM 分配专用 GPU 或一个或多个虚拟 GPU。此选项使 VM 能够使用 GPU 的处理能力。借助此功能,您可以更好地支持高端 3D 专业图形应用程序,例如 CAD/CAM、GIS 和医学成像应用程序。
-
为新 VM 分配和配置存储。
单击下一步以选择默认分配 (32 GB) 和配置,或者您可能需要执行以下额外配置:
- 通过单击编辑更改虚拟磁盘的名称、描述或大小。
- 通过选择添加来添加新的虚拟磁盘。
-
配置新 VM 上的网络。
单击下一步以选择默认 NIC 和配置,包括为每个 NIC 自动创建的唯一 MAC 地址。或者,您可能需要执行以下额外配置:
- 通过单击编辑更改虚拟磁盘的物理网络、MAC 地址或服务质量 (QoS) 优先级。
- 通过选择添加来添加新的虚拟 NIC。
-
(可选)如果此 VM 将用作 Citrix Provisioning 的模板或设置了
reset-on-boot标志,请确保未选择自动启动新 VM。这使您能够在安装 Windows 之前执行一些必要的配置。 -
检查设置,然后单击立即创建以创建 VM 并返回到搜索选项卡。
新 VM 的图标将显示在资源窗格中宿主机下方。
-
(可选)如果此 VM 旨在用作 Citrix Provisioning 的模板或已设置
reset-on-boot标志,请在安装 Windows 之前配置该 VM。在主机控制台中,键入以下命令:
xe vm-param-set uuid=<uuid> has-vendor-device=false标志
has-vendor-device=false确保 Windows Update 不会尝试安装或更新 XenServer VM Tools 中包含的 I/O 驱动程序。有关详细信息,请参阅 适用于 Citrix Provisioning 目标或启动时重置的计算机的设置。 -
在“资源”窗格中,选择 VM,然后单击“控制台”选项卡以查看 VM 控制台。
-
(可选)如果要克隆 VM,建议不要运行 Windows 首次设置(称为开箱即用体验 (OOBE))。相反,当 OOBE 在要求提供区域信息的页面上启动时,按 Ctrl + Shift + F3 进入审核模式。
然后,您可以使用 Sysprep 泛化 VM。有关详细信息,请参阅 使用 Sysprep 准备克隆 Windows VM。
如果您不打算克隆 VM,请继续执行此过程中的以下步骤。
-
按照操作系统安装屏幕进行操作并做出选择。
-
操作系统安装完成且 VM 重新启动后,安装适用于 Windows 的 XenServer VM Tools。
使用 CLI 创建 Windows VM
要使用 xe CLI 从 ISO 存储库创建 Windows VM,请执行以下操作:
注意:
对于 Windows 10 和 Windows 11 VM,模板指定了对 vTPM 的要求。您无需向 xe CLI 命令添加任何内容即可设置 vTPM。
-
从模板创建 VM:
xe vm-install new-name-label=<vm_name> template=<template_name> <!--NeedCopy-->此命令返回新 VM 的 UUID。
-
(可选) 更改 VM 的启动模式。
xe vm-param-set uuid=<uuid> HVM-boot-params:firmware=<mode> xe vm-param-set uuid=<uuid> platform:secureboot=<option> <!--NeedCopy-->mode的值可以是BIOS或uefi,如果您的 VM 操作系统支持该选项,则默认为uefi。否则,模式默认为BIOS。option的值可以设置为true或false。如果您未指定安全启动选项,则默认为auto。有关更多信息,请参阅 客户机 UEFI 启动和安全启动。
-
(可选) 如果此 VM 旨在用作 Citrix Provisioning 的模板或已设置
reset-on-boot标志,请在安装 Windows 之前配置 VM。xe vm-param-set uuid=<uuid> has-vendor-device=false <!--NeedCopy-->标志
has-vendor-device=false可确保 Windows Update 不会尝试安装或更新 XenServer VM Tools 中包含的 I/O 驱动程序。有关更多信息,请参阅 Citrix Provisioning 目标或启动时重置计算机的设置。 -
创建 ISO 存储库:
xe-mount-iso-sr <path_to_iso_sr> <!--NeedCopy--> -
列出所有可用的 ISO:
xe cd-list <!--NeedCopy--> -
将指定的 ISO 插入指定 VM 的虚拟 CD 驱动器:
xe vm-cd-add vm=<vm_name> cd-name=<iso_name> device=3 <!--NeedCopy--> -
启动 VM 并安装操作系统:
xe vm-start vm=<vm_name> <!--NeedCopy-->此时,VM 控制台在 XenCenter 中可见。
-
在 XenCenter 的“资源”窗格中,选择 VM,然后单击“控制台”选项卡以查看 VM 控制台。
-
(可选) 如果您希望能够克隆 VM,建议您不要运行 Windows 首次设置,即开箱即用体验 (OOBE)。相反,当 OOBE 在要求提供区域信息的页面上启动时,按 Ctrl + Shift + F3 进入审核模式。
然后,您可以使用 Sysprep 泛化 VM。有关更多信息,请参阅 使用 Sysprep 准备克隆 Windows VM。
如果您不打算克隆 VM,请继续执行此过程中的以下步骤。
-
按照操作系统安装屏幕进行操作并做出选择。
-
操作系统安装完成且虚拟机重新启动后,安装适用于 Windows 的 XenServer VM Tools。
有关使用 CLI 的更多信息,请参阅命令行界面。
安装适用于 Windows 的 XenServer VM Tools
适用于 Windows 的 XenServer VM Tools 提供高性能 I/O 服务,而无需传统设备仿真的开销。有关适用于 Windows 的 XenServer VM Tools 和高级用法的更多信息,请参阅适用于 Windows 的 XenServer VM Tools。
在安装适用于 Windows 的 XenServer VM Tools 之前,请确保您的虚拟机已配置为从 Windows Update 接收 I/O 驱动程序。Windows Update 是接收 I/O 驱动程序更新的推荐方式。但是,如果 Windows Update 不适用于您的虚拟机,您也可以通过其他方式接收 I/O 驱动程序更新。有关更多信息,请参阅更新 I/O 驱动程序。
安装适用于 Windows 的 XenServer VM Tools:
-
建议您在安装或更新 XenServer VM Tools 之前对虚拟机进行快照。
-
从XenServer 下载页面下载适用于 Windows 的 XenServer VM Tools 文件。
-
根据提供的 SHA-256 值验证您的下载。
-
将文件复制到您的 Windows 虚拟机或 Windows 虚拟机可以访问的共享驱动器。
-
运行
managementagentxXX.msi文件以开始安装 XenServer VM Tools。Msiexec.exe /package managementagentxXX.msi -
按照安装程序中的提示操作。
-
按照向导中的说明接受许可协议并选择目标文件夹。
-
向导在“安装和更新设置”页面上显示推荐设置。有关自定义这些设置的信息,请参阅适用于 Windows 的 XenServer VM Tools。
-
单击“下一步”,然后单击“安装”以开始适用于 Windows 的 XenServer VM Tools 安装过程。
-
-
在提示时重新启动 VM 以完成安装过程。
升级 VM 中的 Windows 操作系统
通常在 Microsoft 发布新版本或修订版,或迁移到较新版本的 XenServer 时,需要升级 VM。
升级 Windows VM 之前
- 如果您要将操作系统更新到需要 vTPM 的 Windows 版本(例如 Windows 11),则必须在升级操作系统之前将 vTPM 附加到 VM。有关详细信息,请参阅将 vTPM 附加到 VM。
- 将 VM 上的 XenServer VM Tools for Windows 升级到最新版本。有关详细信息,请参阅XenServer VM Tools for Windows。
-
确保清理了任何旧版本的 XenServer VM Tools for Windows 驱动程序。您可以通过在 Windows VM 中运行以下命令来完成此操作:
-
运行 XenServer VM Tools for Windows 清理工具:
<tools-install-directory>\uninstall.exe cleanup -
使用命令
pnputil.exe -enum-drivers列出所有已安装的驱动程序。必须删除 Provider Name 为 XenServer 且 Published Name 形式为
oemxx.inf的任何驱动程序。 -
要删除这些驱动程序,请为每个驱动程序运行以下命令:
pnputil.exe -delete-driver oemXX.inf此命令仅删除未使用的旧版本驱动程序。如果驱动程序正在使用中,则该命令将正确失败。
-
升级 Windows 操作系统
您可以通过以下方式之一升级 Windows VM:
- 使用 Windows Update 升级 Windows VM 上的 Windows 操作系统版本。如果您使用 Windows Update 更新 XenServer VM Tools,我们建议您使用此方法。
- 对于较新版本,请使用 Windows 安装 ISO。如果在一台已安装早期版本 Windows 的服务器上启动 Windows 安装盘,它们通常会提供升级选项。
在 Windows 虚拟机控制台中,按照 Windows 提供的升级提示进行操作。
使用 Sysprep 准备克隆 Windows 虚拟机
克隆 Windows 虚拟机唯一受支持的方法是使用 Windows 实用程序 sysprep 来准备虚拟机。
sysprep 实用程序会更改本地计算机 SID,使其对每台计算机都是唯一的。sysprep 二进制文件位于 C:\Windows\System32\Sysprep 文件夹中。
有关使用 Sysprep 的详细信息,请参阅 Sysprep(通用化)Windows 安装。
在 Windows 虚拟机上运行 Sysprep:
注意:
在 Windows 10 和 11 上,Windows 首次设置或开箱即用体验 (OOBE) 会安装可能干扰
sysprep过程的应用程序(例如 AppX)。由于此行为,在创建可克隆虚拟机时,我们建议跳过首次设置并以审核模式启动 Windows。
-
创建 Windows 虚拟机。
-
安装 Windows。
-
(可选)当开箱即用体验 (OOBE) 在要求提供区域信息的页面上启动时,按 Ctrl + Shift + F3。Windows 将以审核模式启动。有关详细信息,请参阅 将 Windows 启动到审核模式或 OOBE。
虽然不是必需的,但我们建议您退出 OOBE,以避免在映像上创建不必要的用户帐户,并避免第三方应用程序兼容性问题。如果您继续使用 OOBE,在 OOBE 期间安装的某些应用程序或 Windows 更新可能会阻止 Sysprep 正常运行。
-
安装最新版本的 XenServer VM Tools for Windows。
-
安装任何应用程序并执行任何其他所需的配置。
-
运行
sysprep以通用化虚拟机。此实用程序在完成后会关闭虚拟机。
注意:
在
sysprep阶段之后,请勿再次重新启动原始的通用化虚拟机(“源”虚拟机)。之后立即将其转换为模板以防止重新启动。如果源虚拟机重新启动,则必须再次在其上运行sysprep,然后才能安全地用于创建更多克隆。
克隆通用化 Windows 虚拟机:
-
使用 XenCenter 将虚拟机转换为模板。
-
根据需要将新创建的模板克隆到新虚拟机中。
-
克隆的虚拟机启动时,它会完成以下操作,然后才能使用:
- 它会获取新的 SID 和名称
- 它会运行设置,以在必要时提示输入配置值
- 最后,它会重新启动
使用 Sysprep 自定义 Windows 虚拟机
XenServer 可以通过将来宾操作系统内部的应答文件(通常为 unattend.xml)传递给 Microsoft Sysprep 来自定义正在运行的 Windows 虚拟机。XenServer 会将文件上传到虚拟机的临时虚拟 CD-ROM 上,运行 Sysprep,然后虚拟机在重新启动后完成自定义。此机制允许您通过共享映像以编程方式配置大型 Windows 部署。
XenServer 通过管理 API 和 xe CLI 支持此操作。它无法通过 XenCenter 使用。XenServer 不会验证应答文件的内容。
要求
- 虚拟机必须正在运行。
- 虚拟机必须安装 XenServer VM Tools for Windows,且 PV 驱动程序版本为 9.4.2 或更高。
- 虚拟机中安装的 Windows 版本必须支持 Sysprep。
使用管理 API
VM 类公开了一个 sysprep 方法,该方法接受应答文件内容和超时时间(以秒为单位)。有关完整的方法签名和参数参考,请参阅 Class: VM — sysprep。
使用 xe CLI
运行以下命令,将 <vm-uuid> 替换为您要自定义的正在运行的虚拟机的 UUID,将 unattend.xml 替换为您的应答文件路径:
xe vm-sysprep uuid=<vm-uuid> filename=unattend.xml
<!--NeedCopy-->
该命令接受以下参数:
-
uuid- 要自定义的正在运行的虚拟机的 UUID。 -
filename- 要传递给虚拟机的 Sysprep 应答文件的路径。 -
timeout- 可选。等待虚拟机重新启动的秒数。默认值为 180 秒。
当虚拟机重新启动或超时时,命令返回。由于自定义时间取决于应答文件的内容,您可能需要增加超时时间。如果自定义在超时后完成,即使 Sysprep 可能已成功完成,CLI 也会报告失败。在这种情况下,请增加超时时间并重试。
故障排除
-
CLI 报告超时但 Sysprep 仍在进行中。 如果 CLI 超时时 Sysprep 仍在虚拟机内运行,请增加
timeout值并重试。如果 Sysprep 已停止或失败(例如,由于应答文件错误),增加超时时间无济于事。按照“应答文件错误”中的说明检查虚拟机内的 Windows Sysprep 日志。 -
自定义未启动。 确认虚拟机正在运行,并且已安装 XenServer VM Tools for Windows 9.4.2 或更高版本。您可以使用以下命令检查已安装的驱动程序版本:
xe vm-param-get uuid=<vm-uuid> param-name=PV-drivers-version <!--NeedCopy--> -
应答文件错误。 XenServer 不会验证应答文件。请检查虚拟机内的 Windows Sysprep 日志 (
%WINDIR%\System32\Sysprep\Panther\) 以获取详细信息。
Windows VM 发行说明
Windows 有许多版本和变体,它们对 XenServer 提供的功能的支持程度各不相同。本节列出了已知差异的说明和勘误。
常见 Windows 问题
-
安装 Windows VM 时,最初不要超过三个虚拟磁盘。安装 VM 和 XenServer VM Tools for Windows 后,可以添加额外的虚拟磁盘。确保引导设备始终是初始磁盘之一,以便 VM 可以在没有 XenServer VM Tools for Windows 的情况下成功引导。
-
当 Windows VM 的引导模式为 BIOS 引导时,Windows 会使用主引导记录 (MBR) 格式化主磁盘。MBR 将磁盘的最大可寻址存储空间限制为 2 TiB。要将大于 2 TiB 的磁盘与 Windows VM 配合使用,请执行以下操作之一:
- 如果 Windows 版本支持 UEFI 引导,请确保将 UEFI 用作 Windows VM 的引导模式。
- 将大磁盘创建为 VM 的辅助磁盘,并选择 GUID 分区表 (GPT) 格式。
-
多个 vCPU 作为 CPU 插槽暴露给 Windows 客户机,并受 VM 中存在的许可限制。可以通过检查设备管理器来确认客户机中存在的 CPU 数量。Windows 实际使用的 CPU 数量可以在任务管理器中查看。
-
Windows 客户机中的磁盘枚举顺序可能与它们最初添加的顺序不同。此行为是由于 I/O 驱动程序与 Windows 中的即插即用子系统之间的交互造成的。例如,第一个磁盘可能显示为
Disk 1,下一个热插拔磁盘显示为Disk 0,稍后的磁盘显示为Disk 2,然后以预期的方式向上显示。 -
VLC 播放器 DirectX 后端中的一个错误会导致在 Windows 显示属性设置为 24 位颜色时,视频播放期间黄色被蓝色替换。使用 OpenGL 作为后端的 VLC 可以正常工作,任何其他基于 DirectX 或 OpenGL 的视频播放器也可以正常工作。如果客户机设置为使用 16 位颜色而不是 24 位颜色,则没有问题。
-
PV 以太网适配器在 Windows VM 中报告的速度为 100 Gbps。此速度是人工硬编码值,在虚拟环境中不相关,因为虚拟 NIC 连接到虚拟交换机。Windows VM 使用可用的全部速度,但网络可能无法达到完整的 100 Gbps。
-
如果您尝试对 Windows VM 进行不安全的 RDP 连接,此操作可能会失败并显示以下错误消息:“这可能是由于 CredSSP 加密 Oracle 修复造成的。”当 Credential Security Support Provider 协议 (CredSSP) 更新仅应用于 RDP 连接中的客户端和服务器之一时,会发生此错误。有关更多信息,请参阅 https://support.microsoft.com/en-gb/help/4295591/credssp-encryption-oracle-remediation-error-when-to-rdp-to-azure-vm。