在eclipse中連接到HBase報錯org.apache.hadoop.hbase.PleaseHoldException: Master is initializing,搜索了好久,網上其它人說的解決辦法對我都沒用:
- 做時間同步
- hbase-site.xml中參數hbase.rootdir使用hdfs協議
- 關閉防火牆
最終,參考這個論壇帖子:http://www.aboutyun.com/thread-20600-1-1.html(Hbase shell 啟動報錯,使用status命令報 master is initializing)解決了問題。
1.在主節點停掉HBase
stop-hbase.sh
2.轉到zookeeper程序所在目錄,查看conf目錄下zoo.cfg中dataDir:

3.然后轉到dataDir指定的目錄下:

4.停掉ZooKeeper
zkServer.sh stop
5.將version-2文件夾重命名為version-2-backup
mv version-2 version-2-backup
6.重啟HBase
start-hbase.sh
在Eclipse中重新跑測試,通過

后記:
導致PleaseHoldException: Master is initializing一個可能的原因:在偽分布式的時候做過一些創建表、添加數據的操作,然后直接開始搭完全分布式,也許是之前遺留的一些數據導致的吧。
