Chrony 时间服务运行不完美,同步问题

Chrony 时间服务运行不完美,同步问题

在我们的 Ubuntu 20.04 服务器上,我们运行 chrony 作为时间服务。不幸的是,我们总是遇到时间同步问题。如果它始终能正确运行 0.05 秒,那就太好了。

我们如何解决这个问题?需要关闭什么?如何设置 chrony 以避免出现问题?我们有标准配置。

此外,如果有人能告诉我可以检查什么来找出为什么 chrony 有时无法同步,那就太好了:

systemctl status chrony
● chrony.service - chrony, an NTP client/server
     Loaded: loaded (/lib/systemd/system/chrony.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2020-11-13 08:33:58 CET; 3 weeks 3 days ago
       Docs: man:chronyd(8)
             man:chronyc(1)
             man:chrony.conf(5)
   Main PID: 825 (chronyd)
      Tasks: 2 (limit: 2282)
     Memory: 2.0M
     CGroup: /system.slice/chrony.service
             ├─825 /usr/sbin/chronyd -F -1
             └─826 /usr/sbin/chronyd -F -1

Nov 13 08:33:58 server systemd[1]: Starting chrony, an NTP client/server...
Nov 13 08:33:58 server chronyd[825]: chronyd version 3.5 starting (+CMDMON +NTP +REFCLOCK +RTC +PRIVDROP +SCFILTER +SIGND +ASYNCDNS +SECHASH +IPV6 >
Nov 13 08:33:58 server chronyd[825]: Frequency -39.027 +/- 0.054 ppm read from /var/lib/chrony/chrony.drift
Nov 13 08:33:58 server chronyd[825]: Loaded seccomp filter
Nov 13 08:33:58 server systemd[1]: Started chrony, an NTP client/server.
Nov 13 08:34:02 server chronyd[825]: Selected source NTP Server IP
Nov 23 07:41:33 server chronyd[825]: Can't synchronise: no selectable sources
Nov 23 08:14:56 server chronyd[825]: Selected source NTP Server IP

提前致谢。

答案1

我们有时也会遇到问题,chrony 无法同步到“LAN 上的 NTP 服务器服务”。

我们的问题是,用作“NTP 时间主机”的服务器是 Windows Server,之前是 2008,然后是 2012R2、2016,现在是 2019。我们的系统仍然使用旧代码和 MS SQL,这就是 M$ 的原因。

局域网内其他服务器越来越多Linux、Ubuntu变种,使用Chrony来同步到Windows服务器的时间。

似乎“w32tm 时间服务服务器”存在一些兼容性问题。w32tm 在我们使用的每个不同 Windows Server 版本上的工作方式略有不同。对于最新的 Windows 2019 服务器,Chrony 无法同步到 w32tm 时间,直到安装了某些 Windows 更新。Windows 更新 KB4592440 使 w32tm 服务能够更好地响应 Linux chrony 时间查询,因此如果使用 Chrony 同步到 Windows 域服务器,请确保已安装所有 Windows 更新。

另外,我们注意到 NTP 类型比 NT5D5 更好用,NT5D5 是“域时间”,需要域认证。

一种可能性是使用 Windows 服务器上的 Meinberg NTP 守护程序而不是 w32tm 服务。我们也对此进行了测试,它是 Windows 时间的一个很好的替代方案。

chrony 的一个问题是,如果 Windows 域时间相差“太多”,Chrony 可能会认为 NTP 时间服务器不可靠。

有一些设置可能会有所帮助/etc/chrony/chrony.conf

maxdistance 16.0
makestep 1 3
maxupdateskew 100.0   

如果 ntpserver 不太稳定,这些可能会有所帮助。

Windows 通常会给出更高的“根分散”,3 秒或更长时间,这让 chrony 认为它不是一个可靠的来源。

相关内容