vsphere 对客户机进行快照动作导致时间偏移

环境信息

  • Vpshere 6.0
  • Esxi 6.0

现场

在进行虚拟机更改配置前进行了快照备份。此时就发现客户机发生了时间变化,手动进行了修正但并未关注时间变动根源。然后在配置更改完成后删除快照,也没有再对时间进行检查,此时导致业务系统启动后报错才发现时间存在问题。

最后一次修正时间时,发现ntpd因时间偏差过大而报错。手动停止NTP服务后,使用ntpdate 命令强制同步时间后才可正常启动ntpd服务。

根因

客户机安装有vmtools,在进行快照动作时,会强制同步宿主机时钟。如果宿主机未配置时钟同步,此时就会导致客户机产生产生时间偏移。

临时方案

使用 ntpdate 强制同步时间后,重启ntpd服务。

# ntpdate -d xxx.xxx.xxx.xxx     使用此步骤确认offset值
# ntpdate xxx.xxx.xxx.xxx 强制同步时间
# service ntpd restart  重启ntpd服务

调整时钟前建议暂停客户机上的应用。

永久解决方案

方案一: 修改虚拟机配置

访问esxi web界面https://esxi_hosts_ipadd/
右键虚拟机—编辑设置–虚拟机选项—高级—编辑配置—添加参数

time.synchronize.continue = "FALSE"
time.synchronize.restore = "FALSE"
time.synchronize.resume.disk = "FALSE"
time.synchronize.shrink = "FALSE"
time.synchronize.tools.startup = "FALSE"
time.synchronize.tools.enable = "FALSE"
time.synchronize.resume.host = "FALSE"

在这里插入图片描述

方案二:配置宿主机使用同步

扩展:启用定期时间同步 (翻译)

链接: Enable Periodic Time Synchronization

当您启用定期时间同步时,VMware Tools会将客户操作系统的时间设置为与主机时间相同。
时间同步发生后,VMware Tools每分钟检查一次,以确定来宾和主机操作系统上的时钟是否仍然匹配。如果没有,则将客人操作系统上的时钟同步,以匹配主机上的时钟。
如果客户机操作系统上的时钟落后于主机上的时钟,VMware Tools会将客户机上的时钟向前移动,以匹配主机上的时钟。如果客户操作系统上的时钟领先于主机上的时钟,VMware Tools会导致客户上的时钟运行得更慢,直到时钟同步。
原生时间同步软件,如适用于Linux和Mac OS X的网络时间协议(NTP)或适用于Windows的Microsoft Windows时间服务(Win32Time),通常比VMware Tools定期时间同步更准确。在您的客人中只使用一种形式的定期时间同步。如果您使用的是本机时间同步软件,请禁用VMware Tools定期时间同步。
无论您是否打开VMware Tools定期时间同步,时间同步都会在某些操作后发生:

  • 当您启动VMware Tools守护进程时,例如在重新启动或开机操作期间
  • 当您从暂停操作中恢复虚拟机时
  • 在您恢复到快照后
  • 在你缩小磁盘后
    当操作系统启动或重新启动时,当您首次打开定期时间同步时,如果在.vmx文件中未启用time.synchronize.tools.startup.backward参数,则客户机时钟设置为转发。对于其他事件,同步是时间向前的。
    要完全禁用时间同步,您必须编辑虚拟机的配置文件(.vmx文件),并将多个同步属性设置为FALSE。

先决条件

  • 禁用其他定期时间同步机制。例如,一些客户机可能默认打开NTP或Win32Time时钟同步。
  • 如果您计划编写此过程中使用的命令脚本,并且需要知道退出代码是什么,请参阅常见退出代码。

Mac OS X来宾操作系统使用NTP,不会与主机不同步。对于Mac OS X来宾操作系统,无需打开VMware Tools时间同步。

步骤

  1. 在客户操作系统中打开命令提示符或终端。
  2. 更改为VMware Tools安装目录。
操作系统默认路径
窗口C:\Program Files\VMware\VMware Tools
Linux和Solaris/usr/sbin
FreeBSD/usr/local/sbin
Mac OS X/库/应用程序支持/VMware工具
  1. 键入命令以确定是否启用了时间同步。
 utility-name时间同步状态

对于utility-name请使用特定于客户机的程序名称。

操作系统程序名称
窗口VMwareToolboxCmd.exe
Linux、Solaris和FreeBSDvmware-tools-cmd
MAC OS Xvmware-tools-cli
  1. 键入命令以启用或禁用定期时间同步。
 utility-name时间同步subcommand

对于subcommand,请使用启用禁用

结果

VMware Tools服务会按照您的指定启用或禁用定期时间同步。禁用定期时间同步不会禁用所有VMware Tools时间同步。

接下来要做什么

如果您需要在虚拟机中保留一个虚构的时间,以便客户机操作系统中的时钟永远不会与主机上的时钟同步,请完全禁用客户机操作系统的时间同步。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值