是否有任何命令可以用来确保 NTP 服务正在运行并且响应?

是否有任何命令可以用来确保 NTP 服务正在运行并且响应?

是否有任何命令可以用来确保 NTP 服务正在运行并且响应?

我计划使用一些监控和补救脚本来确保一些服务正在运行并且响应迅速,尤其是 NTP。如果服务未运行或无响应,则重新启动服务或再次检查,如果仍然失败 3 次,则发送警报电子邮件。

提前致谢!

答案1

答案是特定于版本的,你可以使用Ubuntu 服务器官方文档以供参考。

Ubuntu 14.04 LTS

在 14.04 LTS 官方文档中建议使用ntp/ ntpdate(请参阅 Ubuntu 14.04 LTS 服务器指南第 49 页):

Ubuntu 使用ntpdatentpd

因此预期的命令将是service ntp status或类似的。

Ubuntu 16.04 LTS

在 16.04 LTS 中,官方文档的说法有所不同(参见16.04 LTS 服务器指南第 54 页):

从 Ubuntu 16.04 开始timedatectl/ timesyncd (属于 的一部分systemd)替换大部分ntpdate/ntp

Ubuntu 16.04 LTS 我不知道,时间服务是通过包chrony完成的。所以这里可以用来检查服务器状态。ntpdntpsystemctl status ntp.service

Ubuntu 18.04 LTS

在 18.04 LTS 中,正如 Rinzwind 已经回答的那样,chrony它被使用(参见18.04 LTS 服务器指南第 56 页)。

我希望这systemctl restart chrony.service可以用于状态检查。

答案2

慢性的自 Ubuntu 18.04 起为默认设置

chrony 是网络时间协议 (NTP) 的多功能实现。它可以将系统时钟与 NTP 服务器、参考时钟(例如 GPS 接收器)以及使用手表和键盘的手动输入同步。它还可以作为 NTPv4 (RFC 5905) 服务器和对等端运行,为网络中的其他计算机提供时间服务。

默认情况下,Ubuntu 软件包将附带指向 ntp.ubuntu.com 和 ubuntu.pool.ntp.org 作为 NTP 池的配置文件,以提供 6 个双栈 NTP 源和 2 个额外的仅 IPv4 源。

一个简单的

chrony activity

将返回错误编号通知以及有多少源处于活动状态,有多少源处于非活动状态。 很容易围绕它编写代码;例如脚本甚至服务。

它还支持通过编辑来记录日志(默认为 syslog) /etc/crony/chrony.conf

# Uncomment the following line to turn additional logging on
log measurements statistics tracking
# or for even more logs add additional items
log measurements statistics tracking rtc refclocks tempcomp

“log” 后面的每个单词都会在 `/var/log/crony/ 中触发其自己的日志。

因此,它也可以用作跟踪和追踪类型的东西,您可以扫描日志并在某些事件或条件下触发邮件。

答案3

虽然前三个命令似乎表明 Chrony 正在运行,但最后一条命令表明仍然存在问题:

$ chronyc activity

200 OK
3 sources online
0 sources offline
0 sources doing burst (return to online)
0 sources doing burst (return to offline)
0 sources with unknown address

$ chronyc sources

210 Number of sources = 3
MS Name/IP address         Stratum Poll Reach LastRx Last sample
===============================================================================
^- gowest.hojmark.net            2   6   373   114    -25ms[  +50ms] +/-   34ms
^* ntp0.nl.uu.net                1   6   377    48    -90ms[  -35ms] +/-   11ms
^- ntp0.rrze.uni-erlangen.de     1   6   377    49    -92ms[  -38ms] +/-   17ms

$ chronyc sourcestats

210 Number of sources = 3
Name/IP Address            NP  NR  Span  Frequency  Freq Skew  Offset  Std Dev
==============================================================================
gowest.hojmark.net          9   5   470     +1.011    179.782    +44us    15ms
ntp0.nl.uu.net              9   6   393    -38.165    336.029   +122us    25ms
ntp0.rrze.uni-erlangen.de  11   6   406     -7.706    167.145   -195us    15ms

$ timedatectl

               Local time: Thu 2021-09-16 12:05:31 UTC
           Universal time: Thu 2021-09-16 12:05:31 UTC
                 RTC time: n/a
                Time zone: Etc/UTC (UTC, +0000)
System clock synchronized: no
              NTP service: inactive
          RTC in local TZ: no

相关内容