时间漂移

dea*_*mer 12 ntp time time-synchronization

你如何处理服务器时间漂移?

Jus*_*ott 24

网络时间协议或 NTP 可用于将服务器上的时间与权威来源同步。例如,Windows 服务器将使用其中一个网络域控制器(该 DC 拥有域的 PDC 模拟器 FSMO 角色 [感谢 Graeme])来获取时间信息。您可以将域控制器配置为从某些已知来源(例如 time.windows.com)获取信息。

  • 如果您可以安排它,我强烈建议您使用 NTP 服务器池,因为它允许您访问多个时间源,同时以一种很好的方式分配负载。有关用法,请参阅 http://www.pool.ntp.org/。 (3认同)
  • 只是想澄清一下,在 Windows 环境中,它不仅仅是为所有域成员承担 NTP 服务器角色的 DC 的“之一”,它特别是拥有域的 PDC 模拟器 FSMO 角色的 DC。您可以将该 DC 配置为从池中的 NTP 服务器同步,并且加入域的所有其他计算机(包括域中的所有其他 DC)将自动同步到该 DC。 (2认同)

Bre*_*nt 9

并代表虚拟机人群......

如果您正在运行虚拟服务器,时间漂移似乎是一个常见问题 - 因此通常有一种方法(除了 NTP)可以使 VM 与其主机保持同步。

就我而言,我使用的是 VMWare。我可以使用以下命令从 linux 虚拟机打开它:

vmware-guestd --cmd "vmx.set_option synctime 0 1"
Run Code Online (Sandbox Code Playgroud)

在 Windows 虚拟机中,您可以从系统托盘中打开vmware-tools图标,然后选择虚拟机和主机操作系统之间的时间同步

  • 实际上,您不想这样做。我在下面发布了一个非常详细的答案。简而言之:vmware-tools SyncTime 已损坏,而 ntp 是要走的路。 (2认同)

wzz*_*zrd 6

VMwareTools SyncTime 不是 ESX 上虚拟机的好选择!如果您遇到问题,VMware 本身已将他们对 VM 计时的建议更改为使用 NTP 而不是 vmware-tools。

我曾经在 VMworld 与一位来自 VMware 的工程师讨论过这个问题,并被告知 vmware-tools 从来没有被设计用来完成它现在所做的工作。在过去,丢失中断是一个大问题。今天少了很多。这就是为什么 vmware-tools 能够在机器落后时更正您的机器时间,而当机器领先时却不能。事实上,一旦机器超前于“实时”时间,如果您使用 vmware-tools 进行计时,您就会陷入困境。

更好的是:使用 ntp 时,与使用 vmware-tools 相比,纠正时间的过程实际上唤醒的频率更低。因此,对于虚拟机,ntp 将提供更少的开销而不是更多。

因此,对于 Linux,您应该始终在 VMware 虚拟机中使用 ntp。完全禁用 vmware-tools 同步时间。

对于 Vmware 上的 Windows VM,我不太确定,但我认为它几乎相同。使用 AD 中内置的时间同步东西,它比 VMware SyncTime 效果更好。(即使 AD 时间同步本身很糟糕;它存在的唯一原因是保持 Windows boxen 与其域控制器同步,只要时钟差异小于 5 分钟,Kerberos 仍然可以工作,所以有很多对准确性的要求较低。)

您可以在此处阅读更多有关 Linux 上的 VMware 时间同步的信息


iny*_*iny 4

使用 NTP 守护进程。