ntpdate(no server suitable for synchronization found)

今天维护一个集群系统时,被人报障说集群的机器时间不对。。。我去看了一下,crontab 里有对时的命令啊。再手动执行一下,才发现,原来被我设的防火墙给墙住了。。。机器只允许特定的外网ip访问,内网无限制。。。所以ntpdate 外面一些对时服务器的时候,根本不会收到返回了。

话说这个防火墙,也是其它部门的同事建议我设的,本部门的程序员对安全这些事情好不上心的,专心于系统功能的开发,甚至连我多次建议的系统管理经验也不采纳。算了,none of my business 。

而他们说这个系统对时,很急,要不集群间的机器heartbeat 时间不对,就会以为对方挂了的了。

那我就马上在另一台对外网无限制的机器上搭一个ntpd ,就作为一个对时服务器的代理吧。

安装ntpd,这个很简单,那台机器是 centos 5,那就用yum。

#yum install ntp

装好还不能用呢,最快速度使用上的话,那就只修改一行配置,因为默认是只允许本地对时而已,我们必须加上内网都可以对时

#vi /etc/ntp.conf

把下面这行,取消注释,并加上自己网段的相关信息即可

#restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap

如:

restrict 10.100.20.0 mask 255.255.255.0 nomodify notrap

然后重启ntp

/etc/init.d/ntpd restart

重启成功后,如果你立刻想对时的话,是会报错的,如:

#ntpdate 10.100.20.59 # 就是我刚配的ntpd server
11 Feb 00:37:36 ntpdate[22276]: no server suitable for synchronization found

这种错误,应该是没有ntpd server 才会报的啊,究竟为什么呢??

原来,如果ntpd server 没有进行过对时的话,也是会报这个错的。。。很汗,为什么不写得明白一点呢??

好了,既然知道原因,只需要等待数分钟,让我的ntpd server 10.100.20.59 自己去对了一次时后,我们再操作,就会成功的了。

# ntpdate 10.100.20.59
11 Feb 00:41:30 ntpdate[22323]: adjust time server 10.100.20.59 offset -0.005792 sec

Submit a Comment