NTPD意外死亡的可能原因和解决方案


9

在使用s3进行物理文档存储的Web应用程序上,我们遇到了NTP不断消失的问题。这似乎每天大约发生一两次。发生这种情况时,几乎没有提供任何信息,除了存在PID文件,但是当我检查状态时服务已死。

谁能暗示NTPD死亡的可能原因?我假设时钟漂移可能导致它死亡,但是我不确定是什么原因导致的。有足够的内存和可用磁盘空间。

服务最后一次终止,这是输出:

Sep  6 06:15:25 vm02 rsyslogd: [origin software="rsyslogd" swVersion="5.8.10" x-pid="988" x-info="http://www.rsyslog.com"] rsyslogd was HUPed
Sep  6 06:17:06 vm02 ntpd[10803]: 0.0.0.0 0618 08 no_sys_peer
Sep  6 08:01:10 vm02 ntpd[10803]: 0.0.0.0 0617 07 panic_stop -28101 s; set clock manually within 1000 s.

哪个操作系统和版本?有没有隐藏物在跑?配置了多少个ntp服务器?什么是ntpd选项?
Nils

您可以尝试删除ntp.drift文件,该文件的值可能太高并导致倾斜
Rqomey 2015年

Answers:


6

我会说没有1分钟的方法可以找到确切的原因。

在ESXi环境中,我们之前也遇到过类似的问题。简而言之,我们发现ESXi主机的时钟漂移很大,并且来宾VM正在同步ESXi主机和上游NTP服务器的时间。这导致虚拟机上的NTPd混乱,因此经常死亡。

我们还发现,在极少数情况下,随机数据包丢失也会导致NTPd退出,因为服务器和上游NTPd服务器之间的往返时间用于计算漂移时间。

在以上两种情况下,如果NTPd出现较大的时间漂移​​(例如,超过1000秒),则默认情况下退出。-g选项会有所帮助。

   -g      Normally,  ntpd  exits  with  a  message to the system log if the offset exceeds the panic threshold,
           which is 1000 s by default. This option allows the time to be set to any value  without  restriction;
           however,  this  can  happen only once. If the threshold is exceeded after that, ntpd will exit with a
           message to the system log. This option can be used with the -q and -x options. See the tinker command
           for other options.

您可以查看系统日志,其中应该有一些单词可能会给您提示。您也可以监视“ ntpq -p”输出以粗略了解偏移量如何发展。


在VM上运行ntpd时,也不应与主机同步时间,也不应将本地时钟作为参考。
Paul Gear

3

该日志消息清楚地表明时钟漂移是退出的原因。可能的解决方案:

  • 以-g标志启动ntpd;但是,这不能解决根本原因,即时钟偏斜。
  • 在启动ntpd之前运行ntpdate;可能同样的警告。
  • 添加更多时间源;NTP需要4-6个来源以保持良好的准确性。一种简单的方法是在配置中包括重复引用[0-3] .YOURREGION.pool.ntp.org,例如

    server 0.au.pool.ntp.org iburst
    server 1.au.pool.ntp.org iburst
    server 2.au.pool.ntp.org iburst
    server 3.au.pool.ntp.org iburst
    
    server 0.au.pool.ntp.org iburst
    server 1.au.pool.ntp.org iburst
    server 2.au.pool.ntp.org iburst
    server 3.au.pool.ntp.org iburst
    

1

您可以尝试的另一种选择是chrony。在我们的测试中,它的性能比ntpd更稳定,并且可以更好地处理虚拟环境中遇到的时间偏差。

http://chrony.tuxfamily.org/

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.