在企业的实际应用过程中,为了解决因各个主机的时间不一致导致的问题(数据的传送和处理发生混乱),那么就需要搭建NTP时间服务器来同步各个主机的时间。
这里同步的主要是软件时间,也即在linux当中可以通过date指令来查看的时间:
硬件时间通常因硬件的自身特性会发生时间的偏移,如机械表走一年慢了2秒钟,那么这时也有重新调整时间的需求。对于计算机而言,为了让时间产生偏移,需要进行实时同步,可以通过计划任务来时间。
服务端搭建NTP服务
首先需要安装ntp包:yum install ntp -y
检查是否安装成功:rpm -q ntp
[root@xz-ftp001-002 ~]# rpm -q ntp
ntp-4.2.6p5-29.el7.centos.2.x86_64
然后编写ntp的配置文件:vim /etc/ntp.conf
server 127.127.1.0 #本地时钟
server time1.aliyun.com #阿里的时钟restrict 127.0.0.1 #本地lo可以使用
restrict 192.168.27.128 #该ip的主机可以使用
# 或
restrict default ignore # 默认忽略
restrict 59.217.250.0 mask 255.255.255.0 nomodify notrap #该ip段的主机都可以使用
重启一下ntp服务:systemctl restart ntpd
到此为止,服务端的ntp服务搭建完成,配置的主机来同步该主机的时间。
客户端同步时间
首先安装:yum install ntpdate
[root@xz-ftp001-002 titanagent]# rpm -qa | grep ntpdate
ntpdate-4.2.6p5-29.el7.centos.2.x86_64
然后通过命令同步即可:ntpdate 192.168.27.128
[root@xz-ywtb-kfmh-001-005 ~]# ntpdate 192.168.27.128
28 Sep 10:58:10 ntpdate[803]: step time server 192.168.27.128 offset 54.944158 sec
同步成功,实时同步可以通过客户端的计划任务来完成:
[root@xz-zjj001-002 ~]# crontab -e
0 */12 * * * /usr/sbin/ntpdate 59.217.250.248
每隔12小时执行一次,多台客户机可以重复操作,搭建完成。
cron表达式工具:https://tool.lu/crontab/