環境信息
虛擬機版本:centos7 、HBase版本1.3.3 、 Hadoop版本:2.6.4 、Zookeeper版本:3.4.5
異常信息
ERROR [main] zookeeper.RecoverableZooKeeper: ZooKeeper exists failed after 4 attempts
WARN [main] zookeeper.ZKUtil: hconnection-0x44b294960x0, quorum=hadoop2:2182, baseZNode=/hbase Unable to set watcher on znode (/hbase/hbaseid)
org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode = ConnectionLoss for /hbase/hbaseid
異常處理
Hadoop、Zookeeper均啟動成功;HBase啟動成功后,查看進程都在;啟動 hbase shell ,拋出如上異常
再次查看HBase相關進程,消失;說明Hbase啟動失敗,查看后台日志,發現如下關鍵信息:
java.net.ConnectException: Connection refused
zookeeper.RecoverableZooKeeper: ZooKeeper create failed after 4 attempts
Caused by: org.apache.hadoop.hbase.ZooKeeperConnectionException: master:160000x0, quorum=hadoop2:2182, baseZNode=/hbase Unexpected KeeperException creating base node
Caused by: org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode = ConnectionLoss for /hbase
說明Hbase沒有連接上Zookeeper,我們知道,HBase可以使用內置的Zookeeper,也可以使用外部的Zookeeper,通過在配置文件hbase-env.sh
將 export HBASE_MANAGES_ZK 屬性設置為false ,設置為外部的Zookeeper(這個沒有問題)
export HBASE_MANAGES_ZK=false
問題出現在這里:
需要將端口寫在這里:
修改完成,啟動HBase:start-hbase.sh ,啟動HBase shell : hbase shell