hbase hbck及region RIT处理

hbase hbck主要用来检查hbase集群region的状态以及对有问题的region进行修复。

 

hbase hbck :检查hbase所有表的一致性,如果正常,就会Print OK

hbase hbck -details:检查hbase所有表的一致性,并且输出详细报告。

hbase hbck table1 table2:指定检查某些表,可以输入多个表,用空格隔开。

 

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 命令强烈不建议生产线使用

案例1:

案例2:

RIT处理套路

  • 套路一:pending_open(或pending_close)状态的region通常可以使用hbck命令修复
  • 套路二:failed_open (或failed_close)状态的region通常无法使用hbck命令修复,需检查日志确认region无法打开(关闭)的具体原因
  • 套路三:region处于RIT状态但hbck显示正常,把zk上的region-in-transaction节点相关region删除,重启master

HBase-日志分析

  • 监控分析只能告诉你可能是什么原因,间接原因
  • 日志分析才能告诉你问题的精确原因,最直接原因。

       一般的问题都能在日志中找到直接原因,再根据原因找答案。

  • 通过日志分析可以弄清楚事情的来龙去脉,监控不会告诉你那么多

HBase常见问题

Region RIT是指Region In Transition,即处于转移状态的Region。在HBase中,当Region需要从一个RegionServer转移到另一个RegionServer时,就会处于RIT状态。RIT状态的Region可能会出现一些问题,需要进行修复。 根据引用\[1\]中提到的套路,对于处于pending_open状态的Region,通常可以使用hbck命令修复。而对于处于failed_open状态的Region,通常无法使用hbck命令修复,需要检查日志确认无法打开的具体原因。对于处于RIT状态但hbck显示正常的Region,可以尝试删除zk上的region-in-transaction节点相关Region,并重启Master来修复。 此外,根据引用\[2\]中提到的HBase Region一致性,集群中所有Region都需要保持在内存中、hbase:meta表中以及Zookeeper中的状态一致。 对于修复Region区间overlap相关问题,根据引用\[3\]中提到的高危修复操作,建议先执行hbck -details命令详细了解问题细节,再执行相应的修复命令。但强烈不建议在生产线上使用高危修复操作。 综上所述,Region RIT是指处于转移状态的Region,在修复时可以根据具体情况使用不同的方法进行修复。 #### 引用[.reference_title] - *1* *2* *3* [hbase hbckregion RIT处理](https://blog.csdn.net/breakout_alex/article/details/116991542)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值