欢迎,来自IP地址为:18.97.9.175 的朋友
Hyper-V 是 Windows 平台的虚拟化解决方案,虽然有些功能还不及 VMware 产品,但是其使用便利性也让它虚拟化产品中占有一席之地。而其特有的故障迁移方案,组建多节点故障迁移群集,可以大大提升系统可用性,降低单节点运维成本,不失为数据中心的一个解决方案。
近期在使用 Windows 2012 R2 Hyper-V 群集时遇到一个问题,就是调整群集中虚拟机的时钟非常困难,即便是调整了对应宿主机的时钟,一段时间后,无论是宿主机还是虚拟机,时钟都会变成原来错误的时钟。
处理办法
想要调整虚拟机的时钟,当然是要调整宿主机的时钟,但是如果宿主机是群集中的一个节点,那么调整起来就比较麻烦,尤其是 Windows 2012 R2 这种群集,需要通过 AD 域控来进行身份验证,可以按如下步骤调整:
1、将 Hyper-V 群集所处的域控服务器(AD)时钟调整正确时间
2、关闭群集中的所有虚拟机
3、将群集中所有节点的时钟调整至正确时间
4、打开群集中的所有虚拟机
此时,宿主机和虚拟机的时钟就被调整完成了。
原因分析(个人推测)
结合之前调整群集节点虚拟机时钟失败的经历和以上操作成功的经验,个人分析按以上步骤可以调整时钟而单独修改却不能成功的原因可能在于:
故障迁移群集程序会检测群集中所有虚拟机的状态,自动保持各节点时钟同步,而各节点间的时钟会以虚拟机的时钟为准,从而保证虚拟机在进行实时迁移时时钟一致;当群集中所有虚拟机都关闭后,群集中所有节点会同 AD 域控同步时钟,再次开启虚拟机后,虚拟机会从其宿主机服务器重新获取时钟,由于之前群集中的所有节点已经重新设置过时钟,所以此时虚拟机获取的时钟就是修改过的,从而完成虚拟机的时钟调整。
由此可以看出,Windows 2012 R2 Hyper-V 群集会自动完成各节点的时钟同步,并且如果群集中有虚拟机运行,则强制保持群集所有节点时钟与虚拟机同步。