首页 首页 大数据 大数据入门 查看内容

Apache HBase 问题排查思路

木马童年 2018-10-10 21:15 13 0

作者:范欣欣 来源:Hadoop技术博文 本文来自于中国 HBase 技术社区在杭州举办的第三次 HBase Meetup 会议,第四次 HBase Meetup 会议将于本周六(2018-09-08)在上海举办。详情请点击:中国HBase技术社区第四届MeetUp ...

作者:范欣欣 来源:Hadoop技术博文

本文来自于中国 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 这里下载。

在不久的将来,多智时代一定会彻底走入我们的生活,有兴趣入行未来前沿产业的朋友,可以收藏多智时代,及时获取人工智能、大数据、云计算和物联网的前沿资讯和基础知识,让我们一起携手,引领人工智能的未来!

未分类
0

聚焦多智时代,引领智能变革

© 多智时代(www.duozhishidai.com)版权所有 / 工信部备案 豫ICP备15012664号