继续执行以下步骤之前,请确保以下事项:
- 外部基础架构不存在任何问题,例如硬件出现故障或可能的配置错误(常见的配置问题包括 IP 冲突、意外的流量调整、中继和 EtherChannel 端口配置错误)
- 网络未出现拥堵
- ESXi 主机所在的网络稳定并按预期运行
- 已使用 VMXNET3 网络适配器配置了虚拟机
- 硬件驱动程序和固件版本是最新的
- BIOS 是最新的且已进行相应配置
- 虚拟机正在运行最新版本的 VMware Tools(它们包含虚拟机的驱动程序)
- 任何安全软件(如入侵检测/防御系统或数据包检查器)都具有足够的可用资源且已正确配置(请检查日志,以了解是否存在未正确筛选的流量或丢弃的数据包)
确认基础架构运行状况良好且所有组件都已正确配置后,检查节电配置。对于具有多个虚拟 CPU 的虚拟机,还要检查 CPU %RDY
时间较长是否会对这些虚拟机产生负面影响。
最后一步是检查 RSS 设置。更改 RSS 设置应仅由经过培训的网络管理员来执行。VMware 还建议确认所有相关应用程序(包括操作系统)都支持更改 RSS 配置。
电源计划
为确保系统可以利用可用资源,在调查性能问题时禁用所有节电功能是非常重要的。如果节电配置看起来与性能问题有关,则应创建基于性能和节电要求的自定义电源计划。如果您不确定为系统所建议的节电配置,请咨询硬件供应商。
要在 Windows 2008 Server 上调整电源计划设置,请执行以下操作:
- 单击开始,键入
powercfg.cpl
,然后按 Enter。 - 确保已选择高性能选项。
注意:步骤 3 至 6 是可选的。
- 单击更改计划设置。
- 单击更改高级电源设置。
- 要启用对所有设置的访问权限,请单击更改当前不可用的设置。
- 浏览可用设置,并根据需要进行调整。
- 单击确定以进行确认,并关闭所有窗口。
注意:某些更改可能需要重新引导客户机系统。
检查 CPU %RDY 时间
要确定虚拟机是否受较长 CPU %RDY
时间的影响,请使用以下方法之一:
- 对特定主机或群集上的所有虚拟 CPU 进行计数,然后除以逻辑 CPU 数。结果为 1 或更大意味着,该主机或群集过载,应进行调查。值 4 或更大被视为过载,必须立即进行调查。
注意: - 此方法的目的是快速确定主机是否过载,而不是确定它是否没有过载。VMware 建议使用
esxtop
来观察详细的主机性能。
- 虽然超线程使逻辑处理器的数量增加为原来的两倍,但是它无法提供与两个物理处理器内核相同的性能。如果主机可能过载,请使用物理 CPU 数(而不是逻辑 CPU 数)进行计算。
- 当在具有受影响虚拟机的主机上运行时,
esxtop
命令会显示 CPU %RDY
时间的值。有关如何使用和解释 esxtop
输出的详细信息,请参见 Interpreting esxtop Statistics 社区文档中的环境统计信息部分。还可以运行随 vSphere Management Assistant (vMA) 一起提供的 resxtop
。 vm-support
命令提供了创建性能快照的功能。有关详细信息,请参见 Collecting performance snapshots using vm-support (1967)。
要减轻已过载主机的负载,请使用以下方法之一:
- 将受影响的虚拟机移至具有更多可用资源的主机
- 将其他虚拟机从主机中移出
- 减少受影响虚拟机上虚拟 CPU 的数目
注意:客户机操作系统可能不支持更改 CPU 计数。有关详细信息,请联系操作系统供应商。
启用并配置接收方调整 (RSS)
在启用 RSS 之前:
- 确保将虚拟机的硬件版本设置为版本 7 或更高。有关详细信息,请参见 Virtual machine hardware versions (1003746)。
- 确保将虚拟网络适配器设置为 VMXNET3,且操作系统受此适配器支持。有关详细信息,请参见 Choosing a network adapter for your virtual machine (1001805)。
- 确保在客户机操作系统中启用了 RSS。要在 Windows 客户机操作系统中验证这一点,请打开命令提示符并运行以下命令:
netsh int tcp show global
输出指示了是否已启用接收方调整状态。
- 确保将虚拟机中的网络适配器配置为使用 RSS。要在 Windows 客户机操作系统中验证这一点,请执行以下操作:
- 打开设备管理器,导航到网络适配器,然后右键单击要在其上启用 RSS 的适配器。
- 在“属性”窗口中,单击高级选项卡,然后单击左侧列表中的 RSS。
- 将值更改为已启用,然后单击确定关闭窗口。可能需要重新引导以使所做的更改生效。
注意:启用/禁用 RSS 功能会将适配器上的网络连接中断几秒钟。如果您正通过远程桌面会话访问系统,请确保可以其他方式访问系统,以防发生会导致网络连接不能返回的问题。
默认情况下,Windows 最多可以将四个 CPU 用于 RSS。
注意:TSO(TCP 分段清除)是某些网卡的一种功能,可用于将 CPU 中分组的数据卸载到网卡。TSO 受 E1000、增强型 VMXNET 和 VMXNET3 虚拟网络适配器支持(但不受普通的 VMXNET 适配器支持)。在 ESXi 上,TSO 已默认在 VMkernel 中启用,但仅当虚拟机正在使用 VMXNET3 设备、增强型 VMXNET 设备或 E1000 设备时,才在这些虚拟机中支持 TSO。TSO 可以提高性能,即使基础硬件不支持 TSO。