我有一个性能实验室,它运行在防火墙后面,所以实验室里的所有机器都无法访问互联网。实验室里的所有机器都是域的一部分,域控制器也位于实验室内。问题是有些服务器的时间漂移严重。
一些背景信息:
DC 是 Win Server 2K3 Enterprise SP2。
- 9 台机器正在运行 Server 2K3 Standard。(这些都在 1 分钟内完成,所以没问题)
- 3 台机器是 Win Server 2K8 R2 Standard(这些是物理服务器)-(这些时间相差 1 到 6 分钟,并且永远不会再同步)
- 6 台机器是 Win Server 2K8 R2 Core(这些是 Hyper-V 主机)(有些也有所不同)
- 在这 6 台机器上,我们在每台机器上托管 1 个 Win 2K8 R2 Standard 实例。(这些实例相差 1 到 6 分钟,并且永远不会再同步)
- 1 台运行 Win 2K8 R2 Enterprise 的机器充当 SCVMM。(6 分钟后再也没有同步)
从上述情况来看,问题似乎出在 2008 服务器上。
我发现了以下内容:
如何在 Windows Server 中配置权威时间服务器(使用内部硬件时钟) http://support.microsoft.com/kb/816042
从这里我在 PT-DC01(域控制器)上安装了“Microsoft Fix it 50394”
我还发现:
如何在 Windows Server 中配置权威时间服务器 http://support.microsoft.com/kb/816042
从这里开始,我在 SSVMM(环境中的服务器)上安装了“Microsoft Fix it 50395”,设置如下:
- Ntp服务器:pt-dc01.pt.local,0x1
- SpecialPollInterval:900(15 分钟*)
- MaxPosPhaseCorrection:3600(1 小时*)
- MaxNegPhaseCorrection:3600(1 小时*)
* 显然排除括号内的任何内容。
我还在两台服务器上重新启动了 Windows 时间服务。我只对这两台服务器进行了操作,以证明它首先有效。问题是它似乎不起作用:在撰写本文时,SSVMM 的时间为 12:10,而 PT-DC01 的时间为 12:04。
我检查了注册表,发现这些值都没有改变,所以我手动更新了 NtpServer,并将 MaxPosPhaseCorrection 和 MaxNegPhaseCorrection 保留为 0xffffffff,这意味着它们将始终更新。
重新启动服务器没有效果。
c:\>w32tm /resync /nowait
没有效果
我还运行了以下命令http://www.zimbio.com/open+source+consulting/articles/193/Troubleshooting+w32tm+issues
w32tm /config /manualpeerlist:"pt-dc01.pt.local",0×1 /syncfromflags:MANUAL
w32tm /config /update
net stop w32time
net start w32time
w32tm /resync /nowait
pause
还是没有效果。我也尝试在第一行用 0x8 代替 0x1。
任何帮助将非常感激。
答案1
所有域成员应自动将其时间与上次进行身份验证的域控制器同步。这些 DC 将依次从具有 PDC 模拟器角色的 DC 同步。除非有真正的理由,否则无需疯狂地配置它。这都是默认设置。
答案2
如果您在 AMD 处理器上运行某些服务器,并且虚拟机(在基于 AMD 的机器上)没有启用“将客户端时间同步到主机”选项,那么您将得到一些偏移。这似乎是 AMD 特有的,它不会影响基于 Intel 的芯片。但是,这种偏移不会让您感到困惑 - 我们说的最多是几秒钟。
Active Directory 会自动同步到其他地方的域控制器(正如 MarkM 指出的那样),但它们同步的时间长得可笑……有时长达几个小时。所有这些都发生在 Windows 时间服务下,我相信它默认启用。Kerberos 通常有 +/- 5 分钟的容差。如果您的时钟偏差超过 5 分钟,则存在严重问题。
如果您非常绝望,并且尽管采取了所有其他措施,问题仍然持续存在,您可能需要安装第三方 NTP 服务(如果问题持续存在)。在物理硬件(不是虚拟机!)上安装一次服务,然后将所有其他机器指向它。
答案3
仅当您启用了 NetBIOS 时,上述内容才成立。
此外,对于在 Hyper-V 上运行的虚拟服务器:当您创建虚拟机时,Hyper-V 有一个默认设置,该设置规定 VM 应将其时间与主机同步。无论您在 VM 上做什么,这似乎都是强制执行的。因此,要么确保您的主机的时间与您的 PDC 同步,要么禁用 Hyper-V 中的设置(VM 属性 -> 硬件配置 -> 集成服务 -> 时间同步)。