首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Nagios服务器上的NTP问题

Nagios服务器上的NTP问题
EN

Unix & Linux用户
提问于 2015-07-12 16:57:26
回答 2查看 1.8K关注 0票数 0

我们的Nagios服务器NTP没有正常工作。首先是问题:

代码语言:javascript
复制
root@ccsd-lx-noc03 /var/log> tail -n 10000 messages | grep "NTP"
Jul  5 16:19:36 ccsd-lx-noc03 nagios: SERVICE ALERT: localhost;NTP-localhost;WARNING;HARD;4;NTP WARNING: Offset 53.03026778 secs
Jul  5 16:20:49 ccsd-lx-noc03 nagios: SERVICE ALERT: localhost;NTP-localhost;CRITICAL;HARD;4;NTP CRITICAL: Offset -84.96075022 secs
Jul  5 16:20:50 ccsd-lx-noc03 nagios: SERVICE ALERT: localhost;NTP2-localhost;CRITICAL;HARD;4;NTP CRITICAL: Offset -84.95908391 secs
Jul  5 16:22:49 ccsd-lx-noc03 nagios: SERVICE ALERT: localhost;NTP2-localhost;CRITICAL;HARD;4;NTP CRITICAL: Offset -84.96072233 secs
Jul  5 16:23:40 ccsd-lx-noc03 nagios: SERVICE ALERT: localhost;NTP-localhost;CRITICAL;HARD;4;NTP CRITICAL: Offset -84.96058169 secs
Jul  5 16:24:20 ccsd-lx-noc03 nagios: SERVICE ALERT: localhost;NTP2-localhost;WARNING;HARD;4;NTP WARNING: Offset 53.01928848 secs
Jul  5 16:24:44 ccsd-lx-noc03 nagios: SERVICE ALERT: localhost;NTP-localhost;CRITICAL;HARD;4;NTP CRITICAL: Offset -84.961512 secs
Jul  5 16:25:14 ccsd-lx-noc03 nagios: SERVICE ALERT: localhost;NTP2-localhost;CRITICAL;HARD;4;NTP CRITICAL: Offset -84.9693791 secs
Jul  5 16:26:01 ccsd-lx-noc03 nagios: SERVICE ALERT: localhost;NTP-localhost;CRITICAL;HARD;4;NTP CRITICAL: Offset -84.96211889 secs
Jul  5 16:26:18 ccsd-lx-noc03 nagios: SERVICE ALERT: localhost;NTP2-localhost;CRITICAL;HARD;4;NTP CRITICAL: Offset -71.26003572 secs
Jul  5 16:27:10 ccsd-lx-noc03 nagios: SERVICE ALERT: localhost;NTP2-localhost;CRITICAL;HARD;4;NTP CRITICAL: Offset -71.26059958 secs
Jul  5 16:27:20 ccsd-lx-noc03 nagios: SERVICE ALERT: localhost;NTP-localhost;WARNING;HARD;4;NTP WARNING: Offset 53.03374252 secs
Jul  5 16:27:32 ccsd-lx-noc03 nagios: SERVICE ALERT: localhost;NTP-localhost;CRITICAL;HARD;4;NTP CRITICAL: Offset -71.26115555 secs
Jul  5 16:28:00 ccsd-lx-noc03 nagios: SERVICE ALERT: localhost;NTP2-localhost;CRITICAL;HARD;4;NTP CRITICAL: Offset -84.96324414 secs
Jul  5 16:28:19 ccsd-lx-noc03 nagios: SERVICE ALERT: localhost;NTP-localhost;WARNING;HARD;4;NTP WARNING: Offset 53.03296909 secs
Jul  5 16:28:25 ccsd-lx-noc03 nagios: SERVICE ALERT: localhost;NTP-localhost;CRITICAL;HARD;4;NTP CRITICAL: Offset -84.96396494 secs
Jul  5 16:29:09 ccsd-lx-noc03 nagios: SERVICE ALERT: localhost;NTP2-localhost;CRITICAL;HARD;4;NTP CRITICAL: Offset -71.26274931 secs

接下来,我不是管理员,他几周前离开了,试图维持秩序。在crontab文件中,我看到以下内容:

代码语言:javascript
复制
root@ccsd-lx-noc03 /data/nagios/var> crontab -l
59 * * * * /usr/sbin/ntpd -q > /dev/null 2>&1

我该怎么解决这个问题?

代码语言:javascript
复制
ntpdate -d time.ccsd.net
 5 Jul 17:58:48 ntpdate[5098]: ntpdate 4.2.6p5@1.2349-o Wed Jun 18 21:20:36 UTC 2014 (1)
Looking for host time.ccsd.net and service ntp
host found : ns1.ccsd.net
transmit(206.194.10.13)
receive(206.194.10.13)
transmit(206.194.10.13)
receive(206.194.10.13)
transmit(206.194.10.13)
receive(206.194.10.13)
transmit(206.194.10.13)
receive(206.194.10.13)
server 206.194.10.13, port 123
stratum 2, precision -23, leap 00, trust 000
refid [206.194.10.13], delay 0.02682, dispersion 0.00015
transmitted 4, in filter 4
reference time:    d9444d0c.ef1c4dc0  Sun, Jul  5 2015 17:40:44.934
originate timestamp: d94450f9.d4061577  Sun, Jul  5 2015 17:57:29.828
transmit timestamp:  d944514e.d51c3225  Sun, Jul  5 2015 17:58:54.832
filter delay:  0.02911  0.02684  0.02730  0.02682
         0.00000  0.00000  0.00000  0.00000
filter offset: -85.0055 -85.0048 -85.0046 -85.0048
         0.000000 0.000000 0.000000 0.000000
delay 0.02682, dispersion 0.00015
offset -85.004863
 5 Jul 17:58:54 ntpdate[5098]: step time server 206.194.10.13 offset -85.004863 sec
EN

回答 2

Unix & Linux用户

发布于 2015-07-12 19:35:03

因此,我不知道如果安装了NTP,为什么ntpdate似乎在运行。您没有提到这是什么操作系统/发行版,所以我必须保持这个通用,但是:

  1. 删除对ntpdate的所有crontab调用,并删除对ntpd -q的调用。
  2. 从系统包管理器中删除ntpd并重新安装它。
  3. 查看/etc/ntp.conf并确保正确指定上游时间服务器。在大多数情况下,默认的`.`.pool.*‘NTP服务器都是可以的。
  4. 重新安装之后,ntpd应该已经在运行了。如果没有,启动它(通常是service ntp start)。
  5. 在给它一到两分钟的时间同步之后,运行命令ntpq -p。您应该在其中一个服务器的行的开头看到一个*。这表明NTP正在工作和同步。

守护进程应该永远运行--它是稳定的,简单的不应该崩溃。只要确保没有其他干扰就行了。

票数 1
EN

Unix & Linux用户

发布于 2017-04-10 17:42:22

回复“预海报”:如果使用ntpd,不要在服务器上保留ntpdate!

考虑到任何原因,你的系统正在漂移的时间,你要做什么呢?

当您在Linux上遇到时间问题时,首先检查一下任何虚拟化系统--如果您使用VMware/Hyper-V/Xen/KVM/任何东西--考虑一下您的“硬件时钟”到底是什么!有时您的"BIOS“时钟是错误的,但它是虚拟的,就像您的网卡(!)所以,如果你使用VMs,就和你的主管同事谈谈。

简要说明ntpd和ntpd的区别: ntpd通过在系统时间(日期)中轻轻松松地添加一些时间(日期)来“欺骗”您的系统,直到本地系统时间与您的时间源所说的任何内容同步为止,而ntpdate则迅速将您的本地时间设置为“网络时间”。

系统时间是date在Linux上告诉您的命令。但是也有hwclock (需要sudo),它确实是您的硬件,也就是BIOS时钟。

这一次--从字面上讲--你可能需要做

数独时钟-系统时钟

将BIOS/硬件/虚拟时钟设置为系统日期-- ntpd说的。如果您需要更经常地这样做,就会有一个问题。

我知道,这适用于Ubuntu,所以我认为它也适用于Debian。原因是系统可以及时调用ntpdate (cron.weekly?)但是,当你有ntpd运行,它通常会抱怨!只是在ntpd运行时不能运行ntpdate。在一个新的安装上自己测试它。因此,我假设--考虑到您的cron作业-- ntpd实际上不是作为守护进程运行的。否则,你为什么要在每小时59分钟以静音(-q)模式启动它?

奇怪的是,它以“--安静模式”启动ntpd -为什么?是个守护进程,对吧?他们总是在后台跑,不是吗?

通常,您安装ntpd是因为它拥有一个漂移文件,使ntpd能够平滑地调整您的时间,但“随着时间的推移”--它可能会在这里添加一小部分秒,但不会强制重置时间,比如在未来30秒--或者更糟的是过去--因为您可以假设,例如,大多数数据库根本不喜欢时间旅行!

这就是ntpd的目的。相反,ntpdate会迅速纠正任何可能导致关键时间应用程序问题的时间漂移--另一方面,ntpd会在过去的每一秒中增加几毫秒,这样事情就会得到“及时”的正确时间,这并不奇怪,任何严重依赖时间跳变的应用程序--或者向后跳。严重的数据库确实依赖时间戳(例如mysql/postgres/mariadb)。

守护进程应该总是在后台运行,所以我必须假设您的前管理员将ntpdate和ntpd混合在一起--因为通常在没有ntpd的情况下,您会偶尔调用ntpdate,以便在漂移时及时调整时间。ntpd应该运行,而您通常会忘记它“及时”.

或者,您确实有一个非常老的系统,因此您可以考虑根据Linux系统的关键问题进行升级。

我建议,您应该让某些Linux检查您的系统,因为IMHO您的系统似乎配置不当。

你已被不慎警告;-)

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/215466

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档