http://baijiahao.baidu.com/s?id=1582997438282198970&wfr=spider&for=pc
Hbase 集群服务器时间不同步导致HRegionServer无法启动
通过start-hbase.sh命令在主节点启动Hbase集群,可以看出主节点node01、node02,
从节点node02、node03、node04均成功启动
通过浏览器访问//node01:60010,从节点和backup并没有成功启动
通过jps命令查看进程,发现HRegionServer进程启动后立即退出
查看日志发现:Master rejected startup because clock is out of sync
问题原因是时间不同步造成的
同步时间命令:date -s "2017-07-04 17:21:00" 再次启动Hbase集群
成功启动
[小结]
以上问题的产生是因为时间不一致的问题,Hbase默认的容忍间隔是30s,那如果时间不一致超过30s。那再regionServerStartup 的时候 就会报出上面的异常
在regionserver 向master reportForDuty 的过程中会调用regionServerStartup 此时也会检查时间间隔。
[解决办法]
办法一:修改默认配置
hbase.master.maxclockskew
你认为合适的值
办法二:
修改各服务器时间 保证间隔在30s以内,或者使各服务器跟同一个服务器时间保持同步。
时间不同步产生的原因:
当操作虚拟机时如果是挂起 就会造成与其他机器时间不同步