您的位置:首页 > 运维架构 > Linux

linux时间同步

2016-08-27 11:45 162 查看
本文参考文章如下:
http://www.c 4000
nblogs.com/zhwl/p/3670409.html
http://blog.csdn.net/bbirdsky/article/details/20445385

linux集群时间同步

说明:由于hadoop集群对时间要求很高,所以集群内主机要经常同步。本文档适合ubuntu、redhat系列。

注:很多内容是在网上摘录,然后试验后总结,如有疑问可留言探讨。

 

 

1.设置主机时间准确(所有机器)。//如果不需要同步网络时间则可以省略这一步

1.1查看本机时间和时区(date)

1.2设置时区(通过tzselect 命令选择时区 ; 选择后执行cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime)(这里是redhat的修改时区,ubuntu较简单,命令网上查找)

1.3修改时间(date -s 00:00:00或者网络同步:apt-get install ntpdate ; ntpdate cn.pool.ntp.org)

1.4写入硬盘时间(hwclock -w)

这样主机时间设置完毕。

2.时间同步(主机)

配置主机环境(yum install ntp  )(用ubuntu做主机也可,设置参考ubuntu时间同步)

•vi /etc/ntp.conf

在后面加上

server 127.127.1.0

Fudge 127.127.1.0 stratum 10

•关闭防火墙: #service iptables stop

•重新启动服务:

service ntpd stop(ubuntu是service ntp stop)

service ntpd start

service ntpd restart

这样主机准备完毕。

3.其他机器同步

•等待大概五分钟,再到其他机上同步该机器时间(先确保时区一样,否则同步以后时间也是有时区差的)

ntpdate IP地址(主机的)

Date查看时间是否同步完成。

4.根据需要,这里可以让分机器定时自动同步时间

4.1.yum install crontabs(atp-get)

4.2.crontab -e 编辑内容: * */12 * * * /usr/sbin/ntpdate 172.72.103.228(每12个小时更新一次,也可特定时间更新一次,格式可网上查找)

4.3保存退出即可,可以到/var/spool/mail/下查看记录

遇到的问题:

1. 使用ntpdate IP地址(主机的)后同步时间失败,报错信息如下:
ntpdate: no server suitable for synchronization found

【解决】:
注意:若不加上-u参数, 会出现以下提示:no server suitable for synchronization found
-u:从man ntpdate中可以看出-u参数可以越过防火墙与主机同步;
210.72.145.44:中国国家授时中心的官方服务器。

2. 最后从节点使用ntpdate与主机同步时间时,发现提示同步时间成功,但是时间却和主机对不上。

[root@slave2 home]# ntpdate -u 192.168.6.180
26 Aug 20:01:34 ntpdate[5920]: adjust time server 192.168.6.180 offset 0.004114 sec

[root@master home]# date
Sat Aug 27 10:51:06 CST 2016

【解决】:
出现这种情况是由于时区不同的原因,注意所有机器应该在同一时区,查看时区方法如下:

[root@master home]# more /etc/sysconfig/clock 
ZONE="America/Los_Angeles"

设置方法:
tzselect ;选择后执行cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
然后再次使用命令:ntpdate -u xxx.xxx.xxx.xxx
时间这个时候应该同步成功了。
但是再次查看时区,发现时区并没有更改,依然是America/Los_Angeles,亟待各位解决。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: