硬件选择
运行 Hyper-V 的服务器的硬件注意事项通常类似于非虚拟化服务器,但运行 Hyper-V 的服务器可能会表现出更高的 CPU 使用率,消耗更多的内存,并且由于服务器合并而需要更大的 I/O 带宽。
处理器
Windows Server 2016 中的 Hyper-V 将逻辑处理器呈现为一个或多个虚拟处理器,供每个活动虚拟机使用。 Hyper-V 现在需要支持二级地址转换(SLAT)技术的处理器,例如扩展页表(EPT)或嵌套页表(NPT)。
缓存
Hyper-V 可以从较大的处理器缓存中受益,尤其是对于内存中和虚拟机配置中具有大型工作集的负载,其中虚拟处理器与逻辑处理器的比例很高。
内存
物理服务器需要根分区和子分区的足够内存。 根分区需要内存才能高效地为虚拟机执行 I/O 操作,例如虚拟机快照。 Hyper-V 确保根分区有足够的内存,并允许将剩余内存分配给子分区。 应根据每个虚拟机的预期负载需求调整子分区大小。
存储
存储硬件应具有足够的 I/O 带宽和容量,以满足物理服务器托管的虚拟机的当前和将来需求。 选择存储控制器和磁盘并选择 RAID 配置时,请考虑这些要求。 将具有高度磁盘密集型工作负荷的虚拟机放置在不同的物理磁盘上可能会提高整体性能。 例如,如果四个虚拟机共享一个磁盘并主动使用它,则每个虚拟机只能产生该磁盘的带宽的 25%。
电源计划注意事项
作为核心技术,虚拟化是一种功能强大的工具,可用于增加服务器工作负荷密度、减少数据中心内所需的物理服务器数、提高运营效率并减少能耗成本。 电源管理对于成本管理至关重要。
在理想的数据中心环境中,电源消耗是通过将工作合并到计算机中来管理的,直到它们大部分处于繁忙状态,然后关闭空闲计算机。 如果这种方法不实用,管理员可以利用物理主机上的电源计划,以确保它们不消耗比必要的更多电源。
服务器电源管理技术是有代价的,尤其是在不信任租户工作负载来决定与主机物理基础设施有关的策略时。 主机层软件将推断如何最大程度地提高吞吐量,同时最大程度地减少能耗。 在大多数处于闲置状态的机器中,这可能会导致物理基础设施认为温和的功率消耗是合适的,从而导致单个租户的负载运行速度比通常情况慢。
Windows Server 在各种方案中使用虚拟化。 从负载轻的 IIS 服务器到中等繁忙的 SQL 服务器,再到每台服务器运行数百个虚拟机的云服务器 Hyper-V。 其中每个方案可能具有独特的硬件、软件和性能要求。 默认情况下,Windows Server 使用并推荐 均衡 电源计划,通过根据 CPU 利用率缩放处理器性能来实现节能。
使用 均衡 电源计划时,仅当物理主机相对繁忙时,才会应用最高电源状态(租户工作负荷中的最低响应延迟)。 如果为所有租户工作负荷重视确定性的低延迟响应,应考虑从默认 均衡 电源计划切换到 高性能 电源计划。 高性能电源计划将一直以全速运行处理器,有效地禁用 Demand-Based 切换和其他电源管理技术,并优化性能,以节省电源。
对于那些因减少物理服务器数量而节省成本并希望确保其虚拟化工作负载达到最佳性能的客户,您应考虑使用 高性能 电源计划。
服务器核心安装选项
Windows Server 2016 具有 Server Core 安装选项。 服务器核心提供用于托管一组选择的服务器角色(包括 Hyper-V)的最小环境。 它为主机 OS 提供较小的磁盘占用空间,以及较小的攻击和服务面。 因此,强烈建议 Hyper-V 虚拟化服务器使用 Server Core 安装选项。
服务器核心安装仅在用户登录时提供控制台窗口,但 Hyper-V 公开远程管理功能,包括 Windows PowerShell ,以便管理员可以远程管理它。
专用服务器角色
根分区应专用于 Hyper-V。 在运行 Hyper-V 的服务器上运行其他服务器角色可能会对虚拟化服务器的性能产生不利影响,尤其是在它们消耗大量 CPU、内存或 I/O 带宽时。 尽量减少根分区中的服务器角色具有其他优势,例如减少攻击面。
系统管理员应仔细考虑根分区中安装的软件,因为某些软件可能会对运行 Hyper-V 的服务器的整体性能产生不利影响。
来宾操作系统
Hyper-V 支持多种不同的客户操作系统,并已针对这些操作系统进行了调整。 每个来宾支持的虚拟处理器数取决于来宾作系统。 支持的来宾操作系统的列表,请参阅 Hyper-V 概述。
CPU 统计信息
Hyper-V 发布性能计数器来帮助描述虚拟化服务器的行为并报告资源使用情况。 用于在 Windows 中查看性能计数器的标准工具集包括性能监视器和 Logman.exe,它可以显示和记录 Hyper-V 性能计数器。 相关计数器对象的名称以 Hyper-V 为前缀。
应始终使用 Hyper-V 虚拟机监控程序逻辑处理器性能计数器来度量物理系统的 CPU 使用率。 任务管理器和性能监视器在根分区和子分区中报告的 CPU 使用率计数器并不反映实际的物理 CPU 使用率。 使用以下性能计数器监视性能:
Hyper-V 虚拟机监控程序逻辑处理器 (*)\% 总运行时间 逻辑处理器的总非空闲时间
Hyper-V 虚拟机监控程序逻辑处理器 (*)\% 来宾运行时间在来宾或主机中运行周期所花费的时间
Hyper-V 虚拟机监控程序逻辑处理器% 虚拟机监控程序运行时 在虚拟机监控程序中运行的时间
Hyper-V 虚拟机监控程序根虚拟处理器 \\\* 测量根分区的 CPU 使用率
Hyper-V 虚拟机监控程序虚拟处理器 (*)\\* 测量来宾分区的 CPU 使用率