问题是该机器上的Hyper-V.我删除了Hyper-V,安装了VMware Server,运行了相同的VM.时间同步问题消失了(一天之后<100毫秒的差异). 我的设置是这样的:
HYV1 - HyperV machine (non domain) - sync irrelevant AD1 - VM AD server on HYV1,sync'd to time.nist.gov. HyperV time sync off. S1 - Physical machine,sync'd to domain. S2 - Physical machine running HyperV,sync'd to domain. V1 - Linux VM machine on S2,sync'd to AD1. No HyperV integration.
AD1和S1具有精细同步 – 条带图显示差异小于100ms.
S2像疯了似的漂移.这里有一些针对AD1的条形图:
18:33:22 d:+00.0010138s o:+05.4101899s 18:33:24 d:+00.0010138s o:+05.4319765s 18:33:26 d:+00.0000000s o:+05.4788429s 18:33:28 d:+00.0000000s o:+05.6089942s 18:33:30 d:+00.0010138s o:+05.7240269s 18:33:32 d:+00.0000000s o:+06.0421911s 18:33:34 d:+00.0081104s o:+06.5613708s 18:33:37 d:+00.0000000s o:+06.9096594s 18:33:39 d:+00.0000000s o:+06.8867838s 18:33:41 d:+00.0010127s o:+06.8936401s
在20秒内,它漂了一秒钟.如果我手动将其重置为1秒内,在几分钟内它将再次漂移约2秒钟.一夜之间它从~2s变为~5s. S2内的Linux VM与AD1完美同步.
这是配置:
C:\Users\mgg>w32tm /dumpreg /subkey:Parameters Value Name Value Type Value Data ------------------------------------------------------------ ServiceDll REG_EXPAND_SZ %systemroot%\system32\w32time.dll ServiceMain REG_SZ SvchostEntry_W32Time ServiceDllUnloadOnStop REG_DWORD 1 Type REG_SZ NT5DS NtpServer REG_SZ ad01.mydomain ad02.mydomain C:\Users\mgg>w32tm /dumpreg /subkey:Config Value Name Value Type Value Data ----------------------------------------------------------- FrequencyCorrectRate REG_DWORD 4 PollAdjustFactor REG_DWORD 5 LargePhaSEOffset REG_DWORD 50000000 SpikeWatchPeriod REG_DWORD 900 LocalClockDispersion REG_DWORD 9 HoldPeriod REG_DWORD 5 PhaseCorrectRate REG_DWORD 1 UpdateInterval REG_DWORD 30000 EventLogFlags REG_DWORD 2 AnnounceFlags REG_DWORD 5 TimeJumpAuditOffset REG_DWORD 28800 MinPollInterval REG_DWORD 2 MaxPollInterval REG_DWORD 8 MaxNegPhaseCorrection REG_DWORD -1 MaxPosPhaseCorrection REG_DWORD -1 MaxAllowedPhaSEOffset REG_DWORD 300
我查看了事件日志,除了有关同步的警告(在它失去同步之后)之外,没有其他警告.
我该如何解决此问题?这是唯一遇到此问题的机器.所有其他机器(物理和虚拟)都做得很好.
编辑:澄清:VM(AD1)已关闭集成并与time.nist.gov同步. AD1很好.物理机S1不能同步到AD1并且全部漂移.所有其他物理服务器都可以很好地同步到AD1.
更新
因此,它似乎是运行VM的问题.当VM关闭时,时钟缓慢滑动.打开,它立即开始失去秒.我把VM打开只使用了一半的资源,而现在似乎已经略微减轻了它.谢谢!
Hyper-V来宾最初从主机(HYV1)获取它的时钟,但是当你禁用Hyper-V时间同步时,它会从NIST获得所有进一步的时钟更新(工作正常).您的Linux VM未与Hyper-V集成,因此它可以从域中获取时间,这也可以正常工作.你的其他物理机器工作正常,它只是一个物理服务器,每20秒就有1秒的漂移(这是一个疯狂的漂移量).时间漂移比网络时间同步可以将时钟重置到正确的时间要快得多(如果我记得每8小时正确发生一次).
如果要排除Hyper-V导致S2出错,请创建“无Hypervisor”引导条目,在没有Hyper-V的情况下重新引导,并查看时间漂移是否仍然存在.说明:http://blogs.msdn.com/virtual_pc_guy/archive/2008/04/14/creating-a-no-hypervisor-boot-entry.aspx
-Sean