分布式任务之间经常通信会有心跳等发送,这个操作会检查时间,所以服务器之间时间出现的差异会有所影响,需要同步服务器之间的时间
1.在服务端设置
修改/etc/ntp.conf,[root@node1 ~]vi /etc/ntp.conf其他的配置不怎么需要改,只需要关注restrict的配置:
1. 注释掉原来的restrict default ignore这一行,这一行本身是不响应任何的ntp更新请求,其实也就是禁用了本机的ntp server的功能,所以需要注释掉。
2. 加入:restrict 192.168.1.0 mask 255.255.255.0(我之前是这样写的restrict 10.58.26.0 mask 255.255.255.0 nomodify) -- 让192.168.1.0/24网段上的机器能和本机做时间同步
3. 这样就可以了,记得下面的:
server 127.127.1.0 # local clock
fudge 127.127.1.0 stratum 10
这两行需要,这是让本机的ntpd和本地硬件时间同步。
当然,我们也可以添加server xxx.xxx.xxx.xxx,让他和其他的time server时间同步。
4. /etc/init.d/ntpd restart
5. chkconfig ntpd on
6. 修改iptables配置,将tcp和udp 123端口开放,这是ntp需要的端口,在/etc/services中可以查到这个端口。
2.客户端设置
这样node1就成为一台time server了,现在我们配置node2这台机器,也是修改/etc/ntp.conf ,[root@node2 ~]vi /etc/ntp.conf
1. restrict default ignore这行保留为注释状态,因为sales不需要做time server
2. 注释掉server 127.127.1.0, fudge 127.127.1.0 stratum 10这两行,因为这台机器不需要和本地硬件时钟同步了。
3.设置定时任务
vi /var/spool/cron/root(或crontab -e)或者编辑文件:vim /etc/crontab
*/10 * * * * /usr/sbin/ntpdate 10.79.0.114; /sbin/hwclock -w 或者使用: */10 * * * * root /usr/sbin/sntp -P no -r 10.79.0.114
4.使用手动同步功能
ntpdate -d 服务端IP
本文介绍了如何在Linux服务器之间通过NTP进行时间同步,包括服务端和客户端的设置步骤,以及设置定时任务和手动同步功能。确保服务器时间一致对于分布式任务通信至关重要。
1818

被折叠的 条评论
为什么被折叠?



