当尝试打开 vSphere HA 群集中某个虚拟机的电源时,可能会出现故障切换资源不足 (not enough failover resources)错误。

问题

如果选择“群集允许的主机故障数目”接入控制策略且出现某些问题,则可能由于资源不足而无法打开虚拟机电源。

原因

出现该问题可能存在多种原因。
  • 群集中的主机已断开连接、处于维护模式、无响应或出现 vSphere HA 错误。

    若主机处于断开连接状态或处于维护模式下,则通常是由用户操作导致的。若主机无响应或存在错误,则通常是由更为严重的问题引起的,例如,主机或代理出现故障或存在网络问题。

  • 群集包含比其他虚拟机具有更大内存或 CPU 预留的虚拟机。

    “群集允许的主机故障数目”接入控制策略基于对插槽大小(由虚拟机的 CPU 和内存预留两部分组成)的计算。如果对插槽大小的计算由于离群虚拟机而发生偏离,则接入控制策略可能会变得过于严格并导致无法打开虚拟机电源。

  • 群集中没有可用的插槽。

    当群集中没有可用的插槽,或打开虚拟机电源导致插槽大小增加(因为该虚拟机的预留大于现有虚拟机的预留)时,会出现问题。无论是哪种情况,都应使用 vSphere HA 高级选项来减小插槽大小,使用不同的接入控制策略或修改策略以允许较少的主机故障。

解决方案

vSphere Web Client 中,查看显示在群集监控选项卡的 vSphere HA 区域中的高级运行时信息窗格。该信息窗格显示了插槽大小以及群集中的可用插槽数。如果插槽大小过大,请单击群集的资源分配选项卡,根据预留对虚拟机进行排序以确定哪个虚拟机具有最大的 CPU 和内存预留。如果存在比其他虚拟机具有更大预留的离群虚拟机,请考虑使用其他 vSphere HA 接入控制策略(如“预留的群集资源的百分比”接入控制策略)或使用 vSphere HA 高级选项设置插槽大小的绝对上限。但这两个选项都增加了出现资源碎片的风险。