时间漂移

时间漂移

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

答案1

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

答案2

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

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

就我而言,我使用的是 VMWare。我可以通过以下方式从 Linux 虚拟机启用它:

vmware-guestd --cmd "vmx.set_option synctime 0 1"

您可以从 Windows 虚拟机打开VMware 工具图标,然后选择虚拟机与主机操作系统之间的时间同步

答案3

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

我曾经在 VMworld 上与 VMware 的一位工程师讨论过这个问题,他告诉我 vmware-tools 的设计初衷并不是完成现在的工作。在过去,中断丢失是一个大问题。而现在这个问题已经小了很多。这就是为什么如果机器时间落后,vmware-tools 能够纠正机器时间,但机器时间超前时却不行。事实上,一旦机器时间超前于“真实”时间,如果你使用 vmware-tools 来计时,你就完蛋了。

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

因此,对于 Linux,你应该总是在 VMware 虚拟机中使用 ntp。完全禁用 vmware-tools synctime。

对于 Vmware 上的 Windows VM,我不太确定,但我认为它们基本相同。使用 AD 中的内置时间同步功能,它比 VMware SyncTime 效果更好。(尽管 AD 时间同步本身很糟糕;但它存在的唯一原因是让 Windows 机器与其域控制器保持同步,只要时钟差异小于 5 分钟,Kerberos 仍会工作,因此对准确性的要求就低得多。)

您可以阅读更多有关 Linux 上的 VMware 时间同步的内容这里

答案4

网络时间协议 (NTP)是你的朋友。

RHEL/CentOS:

yum install ntpd

Debian / Ubuntu:

apt-get install ntpd

视窗:

  • 对于 Windows 2000塔迪斯 2000。运行良好,带有控制面板。如果您使用它,请务必关闭 Windows 时间服务。
  • 对于 Windows 2003/2008:这个问题的其他答案中已经提到过。或者,你可以在 2k3 机器上运行 Tardis 2000,我不知道它是否能在 2k8 上运行。
  • 适用于任何 Windows 工作站:登录时运行以下命令: net time /domain:your-domain-here

对于所有 NTP 服务:

将您的服务指向pool.ntp.org,但您至少需要将其范围缩小到同一大洲。例如,美国服务器将使用0.us.pool.ntp.org、1.us.pool.ntp.org、2.us.pool.ntp.org等。

相关内容