出現此問題可能是zookeeper不穩定造成的,采用的是虛擬機,經常掛起的狀態,使用hbase的list命令出現下面錯誤,這個可能是hbase的穩定性造成的,解決辦法有兩種。這里使用第一種辦法就解決了。
解決方法:
1.重啟hbase
stop-hbase.sh、然后start-hbase.sh
或者,要么實在不行,就關掉所有集群。再重新開啟吧!2.解決方法2:
(1)原因:運行hbase(zookeeper)的用戶無法寫入zookeeper文件,導致znode data為空。
解決:在hbase-site.xml指定一個運行hbase的用戶有寫入文件權限的目錄作為zookeeper數據目錄,如
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/user88/zk_data</value>
</property>
(2)hbase-site.xml文件中的
<property>
<name>hbase.rootdir</name>
<value>hdfs://hadoop1:49002/hbase</value>
</property>rootdir中的IP設定很重要,需要設定對應的IP
與core-site.xml中fs.defaultFS中的路徑不相同
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop1:9000</value>
</property>
3.解決方法2:格式化namenode
這里,不多贅述。但是一般沒到沒辦法情況下,不要去格式化。