1. 程式人生 > 其它 >ambari啟動HBase就掛掉,HBase:File system needs to be upgraded. You have version null and I want version 8

ambari啟動HBase就掛掉,HBase:File system needs to be upgraded. You have version null and I want version 8

1、問題

ambari中發現HBase master掛掉,重啟之後過了幾秒master又掛掉,去HBase日誌目錄檢視master日誌報錯:

HBase:File system needs to be upgraded. You have version null and I want version 8 is your hbase.rootdir vaild?if so,you may neet to run 'hbase hbck -fixVersion'

2、解決

去HBase在HDFS上的家目錄發現,/hbase/hbase.version這個檔案丟失

首先需要將資料備份

hadoop fs -mv /hbase /hbase_bak

然後再ambari重啟HBase叢集

重啟完成後會在HDFS上生成新的hbase家目錄,將新的家目錄下的hbase.version拷貝到我們備份的目錄中

hadoop fs -cp /hbase/hbase.version /hbase_bak

hadoop fs -ls /hbase_bak

確認拷貝完成後,將新生成的/hbase目錄刪除,將原來的資料恢復

hadoop fs -rm -r /hbase

hadoop fs -mv /hbase_bak /hbase

恢復好後在ambari重啟HBase叢集

進入hbase shell測試發現建立表等操作會卡很長時間並且HBase會報錯:

Table Namespace Manager not fully initialized, try again later

以為等一會就會初始化完成,但是等了好久都不行,可能是HBase與Zookeeper中的資料不一致造成的

於是需要刪除HBase在Zookeeper中的資料

首先在ambari中找到HBase在Zookeeper中的資料存放路徑 HBase->Configs->Advanced 搜尋zookeeper找到zookeeper.znode.parent屬性值

找到之後執行Zookeeper客戶端命令刪除

cd ${ZOOKEEPER_HOME}/bin
./zkCli.sh
rmr <上面搜尋到的屬性值>

刪除後在ambari重啟HBase master,重啟之後發現一切正常!