时间漂移


Answers:


24

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


3
如果可以安排,我强烈建议您使用NTP服务器池,因为它可以让您访问多个时间源,同时以一种很好的方式分配负载。有关用法,请参见pool.ntp.org
艾利·佩恩

2
只是想澄清一下,在Windows环境中,并不是所有域成员都承担NTP服务器角色的DC的“ DC”之一,而是专门为域承担PDC仿真器FSMO角色的DC。您将配置该DC以从池中的NTP服务器进行同步,并且加入该域的所有其他计算机(包括该域中的所有其他DC)将自动与该DC同步。
ThatGraemeGuy

9

并代表虚拟机人群...

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

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

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

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


2
实际上,您不想这样做。我在下面发布了一个非常详尽的答案。简而言之:vmware-tools SyncTime已损坏,ntp是解决方法。
09年

1
vmware现在建议您在VM上使用ntpd,而不要使用它
Alex J

6

对于ESX上的虚拟机,VMwareTools SyncTime不是一个好的选择!如果遇到问题,VMware本身已将其有关在VM中进行计时的建议更改为使用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 Boxen与域控制器保持同步,并且只要时钟差小于5分钟,Kerberos仍将工作,因此对准确性的要求降低。)

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



4

NTP是您的朋友。

RHEL / CentOS:

yum install ntpd

Debian / Ubuntu:

apt-get install ntpd

视窗:

  • 对于Windows 2000Tardis 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等。


3

正如许多人回答的那样,NTP是必经之路。根据您的需求和要求,可以使用几种可能的设计来同步时间。

  1. 将单个计算机同步到公共主机,即pool.ntp.org
  2. 指定本地主机(带有上游NTP)并将其他所有内容同步到该主机
  3. 附有您自己的GPS硬件的本地主机(可能为$$$)

如果您有许多计算机,则选项2和3对网络更友好。有关更多详细信息,请阅读有关NTP和时钟层

此外,我发现Windows的默认同步间隔时间过长(一周一次),这会导致过多的漂移。如果您想将时间设置为较短的时间(我每天使用一次),则应查看以下内容。

http://www.softpedia.com/get/System/System-Miscellaneous/Internet-Time-Update.shtml http://www.tweakxp.com/article36948.aspx


2

好的NTP服务器,主要是。进行设置,以使时钟自上次NTP同步以来不超过几秒钟,并且不会出现任何问题。

如果您的服务器每天漂移超过30秒,则可能需要寻找更好的替代方法,但是大多数计算机内部的时钟通常比每天30秒要好得多,因此每天一次同步通常是可以的。

请注意,如果您将其设置为定期同步(ntpdate),并且不使用NTP守护进程(ntpd),则可能会跳过几分钟-如果您落后3秒,并且NTP同步尝试在10分58秒处进行更新,它将跳到1分钟1秒,并且根据您使用的调度程序,它可能不会触发11分钟的任务。

NTP守护程序在后台运行,并且固定时间很慢,因此程序和进程会注意到时间可能比平时更快或更慢,但不会跳秒。

-亚当


1

是一个NTP服务器,它需要使DC上的时间保持同步。阅读本文,了解有关如何将DC与外部源同步的说明,以及有关如何与Windows 2003 配置权威性时间服务器的知识库文章。同时需要使域时间保持同步。加入该域的工作站将自动与权威时间服务器同步。


0

对所有服务器使用通用时钟源,并确保正确设置了时区。很好的Internet来源是“ time.windows.com”。如果使用Windows,则可以将“ net time”和“ w32tm”用于与时间相关的命令。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.