2

我们在服务器上安装了 NTP 以保持时间同步。服务器的时间还能漂移吗?如果是,我们如何检测到这一点?我们可以在某些最大漂移后强制服务器重置吗?

4

1 回答 1

4

在不了解您的时域设置的情况下,这是一个非常棘手的问题。

如果您的时间设置配置正确,则不会。您的所有服务器都将保持在可接受的真实时间距离内。但这假设您拥有自己的第 0 / 1 层时间接收器和至少 5 个低层的外部参考源。

如果您的时间设置是“关闭的”,其中您只从您自己的 S0/1 参考源中花费时间,那么根据该来源,的,您的服务器可能会偏离 UTC,但都会保持同步。仅当您使用实际上不提供时间戳的纯 PPS 类型源时,这才会真正成立。

如果您的时间设置“糟糕”,例如只有 1 或 2 个外部参考服务器处于高层,那么如果参考源意外或由于其他干扰而出错,那么您的服务器可能会因很大原因而关闭。如果您的所有服务器都使用相同的上游源,那么如上所述,它们应该都彼此同步,但可能与 UTC 不一致。如果您的所有服务器都使用不同的来源,那么与彼此和 UTC 相比,它们都可能不同步。

接下来回答你问题的最后一部分;,我不会强迫任何服务器做任何事情(比如跳过时间/日期) (在运行一段时间内)

至于监控 ntp,这可能是一个棘手的问题。如果你想自动化它,那么你可以在网上找到脚本,它允许将 ntp 统计数据收集到 mrtg 中,这将允许你绘制漂移、偏移、处置等。我已经成功地为许多主机实现了这个,它出现了工作得很好。如果您超出您定义的限制,它将为您提供图表和警报。否则,您将拥有诸如 ntpstats 和其他可以搜索的日志文件之类的内容,但我怀疑这就是您要避免的。

如果您需要更好或更具体的答案,请随时更新您的问题。希望这会有所帮助。

您可以尝试此链接以获取有关通过脚本和 MRTG 进行监控的想法,这里还有许多 Icinga/Nagios 插件可能会有所帮助。我的脚本基于第一个链接中的示例 - 但它们允许在我的 RRD 文件中使用 +ive 和 -ive 绘图。为此,您需要先生成 RRD,然后运行rrdtool tune <name_of_rrd>.rrd -i ds1:U -a ds1:U

但我也注意到在 ntp-4.2.6p5 的源文件中,我发现以下目录/ntpsnmpd/有一个有趣的README内容,它说您可以通过 SNMP agentx 访问一些值。看看 - 直到现在我还没有看到它并且从未测试过它。

于 2016-06-09T22:27:58.840 回答