本文讲解在华为物理服务器上开启CPU "Monitor/Mwait"功能的方法,以解决vSphere 7.0 Update 3平台上vCLS代理虚拟机提示没有与虚拟机兼容的主机,无法开机,且一直尝试启动反复告警的问题。
一、问题实况
1、VC升级到7.0.3后,VC中可能会一直报以下错误:
vCLS代理虚拟机提示没有与虚拟机兼容的主机,无法开机,且一直尝试启动反复告警
2、分析原因如下:
升级到 vSphere 7.0 Update 3 后或新部署 vSphere 7.0 Update 3 时,会激活vCLS。vCLS 使用代理虚拟机维护集群服务的运行状况。将主机添加到集群时,将创建 vCLS 代理虚拟机vCLS 虚拟机)。每个 vSphere 集群中最多需要运行 3 个 vCLS 虚拟机,并在集群内进行分发。此外,也可在仅包含一个或两个主机的集群上激活 vCLS。在这些集群中,vCLS 虚拟机数量分别是 1 和 2。
vCLS 虚拟机会自动应用新的反关联性规则。每三分钟执行一次检查,如果多个 vCLS 虚拟机位于一个主机上,则这些虚拟机将自动重新分配到不同的主机。
集群中的主机数 | vCLS 代理虚拟机数 |
---|---|
1 | 1 |
2 | 2 |
3 个或更多 | 3 |
而当宿主机BIOS未启用"Monitor/Mwait"功能时,vCLS 虚拟机便会报兼容性出错,无法启动。此时需要在宿主机上开启BIOS的"Monitor/Mwait"功能,每个集群启用"Monitor/Mwait"功能的主机数需大于以上表格要求的设置数,生产集群的主机数通常都会超过3台,因此每个集群至少需有3台主机开启了"Monitor/Mwait"功能。
二、“MONITOR/MWAIT”功能介绍
MONITOR/MWAIT是Intel处理器的一种功能,主要用于改进处理器在特定情况下的功耗效率。具体来说,它可以使处理器在某些指定的等待状态(如等待I/O操作完成)时进入低功耗模式,从而节省电力。这是一种提高能效的有效方式,尤其适用于系统有很多等待时间的情况。
在虚拟化环境中,比如运行VMware或KVM等虚拟化平台,开启MONITOR/MWAIT功能通常是有益的。这是因为虚拟机常常会有大量的等待时间,比如当它们处于空闲状态或等待I/O操作完成时。在这种情况下,如果虚拟化平台能够利用MONITOR/MWAIT功能使处理器进入低功耗模式,就可以大大提高整体系统的能效。
然而,需要注意的是,开启MONITOR/MWAIT功能可能会导致处理器的性能略有下降,因为它需要在进出低功耗模式时进行一些额外的处理。因此,是否开启这个功能取决于具体的系统工作负载和环境。生产环境中可以按实际需要考虑是否开启此功能。VC平台升级到7.0 Update 3以后,为了vCLS正常运行和消除系统告警,需要每个集群都要有满足所需数量的主机启用MONITOR/MWAIT功能。
三、“MONITOR/MWAIT”功能启用方法,以华为服务器为例:
1、启动华为huawei_kvm_client_windows连接到服务器。
2、连接到服务器远程界面,重启服务器
3、启动界面按delete键进入BIOS登入界面,默认密码:Huawei12#$
4、配置界面,在BIOS中打开Monitor/Mwait功能,如下进入Advanced页签Intel RC Group选项
5、进入Processor Configuration
6、选中Monitor/Mwait,回车
7、下移到Enabled选项,回车
8、确认设置 Monitor/Mwait为Enaled,按F10保存退出
9、弹出保存提示
回车退出,服务器会自动重启,重启以后相应服务器CPU的“MONITOR/MWAIT”功能即启用完成。
四、华为机型二设置
BIOS版本新一点的机型多了一层SocketConfiguration菜单。