一、hbase出現的問題
1.元數據表hbase:namespace 不在線
導致查詢數據時 master is initing
2.一些表的region一直處於opening狀態
3.region is not online
二、修復工具編譯
git地址
https://github.com/apache/hbase-operator-tools 下載到idea
我使用的hdp的3.1.78,hbase為2.0.2,這個工具就不支持這版本
2.0.2的 hbase-server 的Hbck里面是 沒有assigns等其他的方法
我這邊是使用了從git拉下來的版本(hbase 2.4.7)直接編譯的,需要在pom文件里面修改一下依賴作用域
去掉scope的 provide 打一個 胖包(原因是我的集群版本的都沒有這些方法,執行命令去找 hbase classpath的hbase-server相關的jar 絕對會報錯)
編譯好在target,上傳到hbase的機器上
三、工具安裝
執行hbase命令,看到hbase2版本 要運行的命令是這樣
hbase hbck -j /opt/software/hbase-hbck2-1.2.0-SNAPSHOT.jar
按照HBCK2 的readme文件
為了方便我直接加入hbase的環境變量
hdp版本的hbase命令環境變量
vim /bin/hbase,加到class_path后面
執行 hbase classpath 查看一下有沒有加進去
下一篇寫hbase的這個運維工具用法