Apache HBase 问题排查思路
本文来自于中国 HBase 技术社区在杭州举办的第三次 HBase Meetup 会议,第四次 HBase Meetup 会议将于本周六(2018-09-08)在上海举办,详情请点击:中国HBase技术社区第四届MeetUp上海站——HBase应用实践专场
HBCK - HBCK检查什么?
(1)HBase Region一致性
集群中所有region都被assign,而且deploy到唯一一台RegionServer上
该region的状态在内存中、hbase:meta表中以及zookeeper这三个地方需要保持一致
(2)HBase 表完整性
对于集群中任意一张表,每个rowkey都仅能存在于一个region区间
HBCK – 常用检查命令
./bin/hbase hbck
./bin/hbase hbck –details
./bin/hbase hbck TableFoo TableBar
HBCK - 局部低危修复
-fixAssignments :修复没有assign、assign不正确或者同时assign到多台RegionServer的问题region。
-fixMeta :主要修复.regioninfo文件和hbase:meta元数据表的不一致。修复的原则是以HDFS文件为准:如果region在HDFS上存在,但在hbase.meta表中不存在,就会在hbase:meta表中添加一条记录。反之如果在HDFS上不存在,而在hbase:meta表中存在,就会将hbase:meta表中对应的记录删除。
HBCK –高危修复
region区间overlap相关问题的修复属于高危修复操作,因为这类修复通常需要修改HDFS上的文件,有时甚至需要人工介入。
对于这类高危修复操作,建议先执行hbck -details详细了解更多的问题细节,再执行相应的修复命令
-repair|-fix 命令强烈不建议生产线使用
HBCK –案例
RIT处理套路
套路一:pending_open(或pending_close)状态的region通常可以使用hbck命令修复
套路二:failed_open (或failed_close)状态的region通常无法使用hbck命令修复
套路三:failed_open (或failed_close)状态的region需检查日志确认region无法打开关闭的具体原因
套路四:region处于RIT状态但hbck显示正常,把zk上的region-in-transaction节点相关region删除,重启master
HBase-日志分析
监控分析只能告诉你可能是什么原因,间接原因
日志分析才能告诉你问题的精确原因,最直接原因。
一般的问题都能在日志中找到直接原因,再根据原因找答案。
通过日志分析可以弄清楚事情的来龙去脉,监控不会告诉你那么多
下面是本次会议的全部PPT,完整PPT下载请到 http://hbase.group/?/article/52 这里下载。点击下面阅读原文即可进入。
欢迎关注本公众号:iteblog_hadoop:
回复 spark_summit_201806 下载 Spark Summit North America 201806 全部PPT
0、回复 电子书 获取 本站所有可下载的电子书
2、Elasticsearch 6.3 发布,你们要的 SQL 功能来了
3、Spark Summit North America 201806 全部PPT下载[共147个]
4、干货 | 深入理解 Spark Structured Streaming
5、Apache Spark 黑名单(Blacklist)机制介绍
6、Kafka分区分配策略(Partition Assignment Strategy)
8、干货 | Apache Spark 2.0 作业优化技巧
10、干货 | 如何使用功能强大的 Apache Flink SQL
11、更多大数据文章欢迎访问https://www.iteblog.com及本公众号(iteblog_hadoop)12、Flink中文文档:http://flink.iteblog.com13、Carbondata 中文文档:http://carbondata.iteblog.com