ERROR [main] zookeeper.RecoverableZooKeeper: ZooKeeper create failed after 4 attempts

时间:2024-04-24 21:36:21
ERROR [main] zookeeper.RecoverableZooKeeper: ZooKeeper create failed after 4 attempts
ERROR [main] master.HMasterCommandLine: Master exiting
java.lang.RuntimeException: Failed construction of Master: class org.apache.hadoop.hbase.master.HMaster more……

从问题看出你可能走入了一个误区——认为Hbase启动或安装出现问题。

从原理上讲,在集群中Zookeeper中会通过投票方式选举出一个Zookeeper为主,其余类似于主的热备,

而主Zookeeper会指定Hmaster,并由指定的Hmaster来进行Hbase的操作。

现在报错是ZooKeeper create failed after 4 attempts(Zookeeper尝试创建并失败4次导致最终无法创建)带来的后果就是你的Hmaster未选举出(并离线),使得你的Hbase无法管理。

大概原因可能有两种:

一是因为各机器间无法正常通信导致集群脑裂Zookeeper无法进行选举或是各主机之间权限不足导致声明Master的短命节点文件无法被创建(可能性较低)

二是也许干脆就是集群数量过小无法选举?

大概是这些可能,我也还在学习阶段无法给出太过明确的答案,不过建议你从集群互相的通讯(包括每个节点上的Zookeeper安装情况以及互信、网络情况来入手考虑一下?)

还有比较重要的一点是:请确保每台HBase机器上的zookeeper是存活的,并且可以互相通信。