实际情形:当服务器非常多的时候,比如1000台服务器,要求每天或者某个时间点开启服务,或者执行一项job。

配置过程

首先检查 ntp 命令是否安装

没有安装则安装一下 yum install ntp ntpdate -y

为了方便切换到root用户执行

su root

编辑配置文件

vim /etc/ntp.conf

如图

%title插图%num

在文件末尾添加

server 127.127.1.0

fudge 127.127.1.0 stratum 10

解释:

1、去掉注释,是允许192.168.1.0 网段的服务器来获取时间

2、添加注释,禁用使用其他网段服务器的时间

3、当该节点丢失网络连接,依然可以采用本地时间作为时间服务器为集群中的其他节点提供时间同步

vim /etc/sysconfig/ntpd

添加以后代码

SYNC_HWCLOCK=yes

启动ntp服务器
首先查看ntp服务器的状态

service ntpd status

如图

%title插图%num

启动ntp服务器

service ntpd start

%title插图%num

设置开机自启:chkconfig ntpd on

*后检测是否配置成功了
登录到其他服务器上(在一个网段内的)

上面我是将hadoop112作为ntp服务器

下面我进入hadoop113服务器 (root身份)

输入crontab -e

添加代码

*/1 * * * * /usr/sbin/ntpdate hadoop112

意思是每隔1分钟同步一次时间

%title插图%num

退出编辑后按照下面的查看时间,修改时间。然后等待一分钟查看一下时间有没有自动修改回来

%title插图%num

扩展知识:

crontab讲解

在上方出现了crontab -e

并且添加了一行代码,下面进行讲解

*/1 * * * * /usr/sbin/ntpdate hadoop112

基本格式 :
*      *   *    *   *  command
分 时 日 月 周   命令