美文网首页我爱编程
HBase启动后RegionServer自动挂原因及解决办法【n

HBase启动后RegionServer自动挂原因及解决办法【n

作者: Chensq | 来源:发表于2016-03-29 23:55 被阅读0次

         前天重新在集群配置了一遍Hbase,./start-hbase.sh后各个节点都运行正常,进入hbase shell之后也能正常的增删查改,高兴了一番。今天再启动发现进行普通的status\list\create操作都会报出Master is initializing的错。然后在各个节点jps后发现所有从点的RegionServer都挂了,主节点的Hmaster还正常运行着。

          在从节点查看日志后发现报错如下:

          报错信息也很明确:Master rejected startup because clock is out of sync。由于超出同步时间差,所以主节点拒绝启动regionserver。Hbase设置节点间同步最大时间差是30s。之前配置集群时有注意到一定要保持每个节点系统时间保持一致,然而看到各个虚拟机时间差不大就没怎么在意。由于我开的是虚拟机集群,重启虚拟机后,我的各个节点系统时间差有点大,所以才引发上述错误。

          zookeeper在同步和管理集群时依赖节点系统时间,每隔一定周期zookeeper master会监测所有节点的连接状态。所以解决办法就是利用ntp对集群局域网进行时间同步。

          网上找到一个在centos同步系统时间教程[http://cn.soulmachine.me/blog/20140124/],经过一番努力,终于成功启动hbase集群。

    总结:相比于单机环境,服务器集群对系统时间非常敏感,应时刻保持同步。保持一个ntp服务器连接外网进行时间同步,ntp客户端对ntp服务器请求同步即可。

    相关文章

      网友评论

        本文标题:HBase启动后RegionServer自动挂原因及解决办法【n

        本文链接:https://www.haomeiwen.com/subject/lpbslttx.html