Chrony 网络时间协议监控
免费使用此 InfluxDB 集成Chrony 是一种用于保持计算机同步的网络时间协议(NTP)的实现。它是 ntpd 的替代品,而 ntpd 是 NTP 的参考实现,旨在在间歇性网络连接(例如可能不会持续运行的笔记本电脑)、拥塞网络或当低负载时时钟速度变化时同步时间。时间保持非常重要,尤其是对于 时间序列数据库 的用户来说,他们依赖于他们跟踪的交易以正确的顺序和正确的时间序列。这说起来容易做起来难,因为收集到的 时间序列数据 可能分布在地理位置分散的主机上,而这些主机的计算机上保留了精确的时间。
通过互联网同步的机器之间的精度在几毫秒以内;在局域网中,在几十微秒内。使用硬件时间戳或硬件参考时钟,可以实现亚微秒级的精度,这在试图确定特定问题的原因时可能很重要。
为什么使用 Chrony 的 Telegraf 插件?
无论您的用例(DevOps、IoT)如何,如果您从地理位置分散的设备收集时间序列数据,您可能需要确保时间戳是准确的。通过使用 Chrony 和 Chrony Telegraf 插件,您可以收集这些指标到 InfluxDB 并构建仪表板来减少系统时钟的时间漂移。仪表板是查看漂移何时可能成为问题的简单方法。
如何使用 Telegraf 插件监控 Chrony
要获取标准 Chrony 指标,需要使用 chronyc 可执行文件。以下是可以返回的所有头信息。
- 参考 ID - 这是计算机当前同步的服务器的 ref ID 和名称。如果参考 ID 为 127.127.1.1,则计算机未同步到任何外部源,您正在“本地”模式中操作。
- 层 - 层表示参考时钟距离计算机的跳数。
- 参考时间 - 这是处理来自参考源的最后一次测量的 UTC 时间。
- 系统时间 - 通过略微加快或减慢系统时钟,直到错误被消除,然后返回到系统时钟的正常速度来纠正系统时钟中的任何错误。系统时钟将不同于 chronyd 对当前真实时间的估计,此行报告的值是由于此效应造成的差异。
- 最后偏移 - 这是最后一次时钟更新时的估计本地偏移。
- 均方根偏移 - 这是偏移值的长期平均值。
- 频率 - 如果 chronyd 不纠正它,系统的时钟将会错误的“频率”。它用 ppm(百万分之几)表示。
- 残余频率 - 当前所选参考源的“残余频率”。这反映了来自参考源的测量表明频率应该是多少与当前使用的频率之间的任何差异。
- 偏差 - 这是频率的估计误差界限。
- 根延迟 - 这是到最终同步的计算机的 stratum-1 计算机的网络路径延迟。
- 根分散 - 这是通过所有计算机累计到最终同步的计算机的 stratum-1 计算机的总分散。分散是由于系统时钟分辨率、统计测量变化等。
- 跳变状态 - 这是跳变状态,可以是正常、插入秒、删除秒或未同步。
用于监控的关键 Chrony 指标
您应积极包括在监控中的一些重要 Chrony 指标包括
system_time
(浮点数,秒)last_offset
(浮点数,秒)rms_offset
(浮点数,秒)frequency
(浮点数,ppm)residual_freq
(浮点数,ppm)skew
(浮点数,ppm)root_delay
(浮点数,秒)root_dispersion
(浮点数,秒)update_interval
(浮点数,秒)
有关更多信息,请参阅文档。