为什么这个 VMWare Linux 客户机上的时钟不同步?

为什么这个 VMWare Linux 客户机上的时钟不同步?

最近我注意到在 VMWare 客户机上运行的这个 RHEL 系统上的时钟严重不同步(正常运行时间约为半年):

$ timedatectl
      Local time: Sun 2021-11-07 09:54:12 CET
  Universal time: Sun 2021-11-07 08:54:12 UTC
        RTC time: Sun 2021-11-07 08:59:27
       Time zone: Europe/Berlin (CET, +0100)
     NTP enabled: no
 NTP synchronized: no
 RTC in local TZ: no
      DST active: no
 Last DST change: DST ended at
                  Sun 2021-10-31 02:59:59 CEST
                  Sun 2021-10-31 02:00:00 CET
 Next DST change: DST begins (the clock jumps one hour forward) at
                  Sun 2022-03-27 01:59:59 CET
                  Sun 2022-03-27 03:00:00 CEST

我相信 RTC 实际上是 VMWare 主机的系统时钟,事实上它是正确的,并且本地时间晚了五分钟。VMWare 主机的管理员告诉我,我不应该使用 ntpd 或 chrony *) 来保持时钟同步,而应该依赖主机时钟。而这正是我一直认为我在做的事情:

$ vmware-toolbox-cmd timesync status
Enabled

那么为什么系统时钟不同步?

VMWare文档说:

启用定期时间同步后,VMware Tools 会将客户机操作系统的时间设置为与主机时间相同。时间同步后,VMware Tools 每分钟检查一次,以确定客户机和主机操作系统上的时钟是否仍然匹配。如果不匹配,则客户机操作系统上的时钟将同步以匹配主机上的时钟。

你可能会问,既然有“VMWare 主机管理员”,我为什么不直接向他提出这个问题呢?我当然会这么做。我只是好奇这里发生了什么。

*) 大约一年前,我注意到我的系统时钟到处乱跳。原来是我无意中同时启用了 ntpd 和 chrony。VMWare 管理员发现了问题所在,告诉我不要使用它们,只需使用 vmware-toolbox-cmd 依赖主机时钟即可。

答案1

使用贵组织使用的 NTP 服务器在客户端上配置 chrony(或 ntpd)。重新启动,等待 3 分钟以接收前几个数据包。

如果本地时间与 RTC 仍然有很大差异,则 VM 主机的时钟可能不正确。您现在的五分钟偏移量肯定很大。请虚拟机管理程序管理员确认VM 主机上设置的 NTP 服务器与您的组织在整个网络中使用的相同。

NTP 可以在客户机中继续运行,并且比客户机时间同步具有更好的性能。尽管您可以选择停止 ntpd,但一旦解决了时钟偏移之谜。

相关内容