问题描述:错误删除表数据导致启动hbase后Master过一会儿就变成不健康状态,无法创建表,节点报错Hbase region in transition
解决方案:
1.运行命令hbase hbck 查看报错原因,找到出错的表
2.进入ZooKeeper客户端删除hbase上不存在的表躲在的节点位置
在ZooKeeper部署节点找到zkCli.sh进入
# find / -name zkCli.sh
# ./zkCli.sh
[zk: localhost:2181(CONNECTED) 13] ls /hbase/table
[zk: localhost:2181(CONNECTED) 14] rmr /hbase/table/DefaultFrequencyRangeOccupancyRatePlus
参考ZooKeeper命令详解:https://blog.csdn.net/wugouzi/article/details/78286459
3.强制删除hdfs上出错的表所在的位置
# hadoop fs -rm -R /hbase/data/default/DefaultFrequencyRangeOccupancyRatePlus
4.执行hbase修复指令
hbase hbck -repair
说明:如果报权限问题的话,请执行
sudo -u hbase hbase hbck -repair
5.在cm上重启启动habse,等待一段时间后发现一切正常,且可以正常新建表
参考文档:
https://blog.csdn.net/wyl9527/article/details/78409827