HBase region is not online 问题修复

16 篇文章 0 订阅
1 篇文章 0 订阅

一年多没有搞HBase了,回想前年和营神一起战斗的日子,~~~。今天线上遇到下面一个问题:

hbase(main):002:0> get 'mynamespace:user_basic_info','BAC3510A922CF026500874EA3975E123'
COLUMN CELL 


ERROR: org.apache.hadoop.hbase.NotServingRegionException: Region mynamespace:user_basic_info,BA5968E36ADB91CE1EA37D44267F5865,1489326561674.0250284baa6119d676821e86cfaa29f4. is not online on *******,60020,1491385979553
at org.apache.hadoop.hbase.regionserver.HRegionServer.getRegionByEncodedName(HRegionServer.java:2922)
at org.apache.hadoop.hbase.regionserver.RSRpcServices.getRegion(RSRpcServices.java:1053)
at org.apache.hadoop.hbase.regionserver.RSRpcServices.get(RSRpcServices.java:2006)
at org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:33644)
at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2170)
at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:109)
at org.apache.hadoop.hbase.ipc.RpcExecutor.consumerLoop(RpcExecutor.java:133)
at org.apache.hadoop.hbase.ipc.RpcExecutor$1.run(RpcExecutor.java:108)
at java.lang.Thread.run(Thread.java:745)

其他region 都是正常的,重启regionserver 后依然报同样的错误。

首先检查这张表是否存储一致性问题

hbase hbck -details  table

发现的确出现了2个不一致的地方

2 inconsistencies detected.

既然不一致,咱就尝试修复一下:

hbase hbck -repair table

这个功能要管理权限,使用慎重!修复完了以后结果如下

Summary:
Table hbase:meta is okay.
    Number of regions: 1
    Deployed on:  ctum2f0602005.idc.wanda-group.net,60020,1482504754412
Table idctag:user_basic_info is okay.
    Number of regions: 124

0 inconsistencies detected.
Status: OK

测试一下是否修复:

Java HotSpot(TM) 64-Bit Server VM warning: Using incremental CMS is deprecated and will likely be removed in a future release
17/04/06 11:10:15 INFO Configuration.deprecation: hadoop.native.lib is deprecated. Instead, use io.native.lib.available
HBase Shell; enter 'help<RETURN>' for list of supported commands.
Type "exit<RETURN>" to leave the HBase Shell
Version 1.2.0-cdh5.7.1, rUnknown, Wed Jun  1 16:27:04 PDT 2016

hbase(main):001:0> get 'mynamespace:user_basic_info','BAC3510A922CF026500874EA3975E123'
COLUMN                                     CELL                                                                                                                       
 index:chineseName_encrypt                 timestamp=1489324693470, value=950887757EDFFFDE26E9961E8998591A                                                            
 index:city                                timestamp=1489324693470, value=\xE9\x95\x87\xE6\xB1\x9F                                                                    
 index:ffan_enrollment_time                timestamp=1489324693470, value=2016-10-29 08:54:13                                                                         
 index:from_***                         timestamp=1489324693470, value=0                                                                                           
 index:from_child                          timestamp=1489324693470, value=0                                                                                           
 index:from_**                         timestamp=1489324693470, value=0                                                                                           
 index:from_**                          timestamp=1489324693470, value=1                                                                                           
 index:from_***                          timestamp=1489324693470, value=0                                                                                           
 index:from_***                      timestamp=1489324693470, value=0                                                                                           
 index:from_***                           timestamp=1489324693470, value=0                                                                                           
 index:from_theme                          timestamp=1489324693470, value=0                                                                                           
 index:from_travel                         timestamp=1489324693470, value=0                                                                                           
 index:mobile_encrypt                      timestamp=1489324693470, value=BAC3510A922CF026500874EA3975E123                                                            
 index:***                  timestamp=1489324693470, value=\xE6\xB1\x9F\xE8\x8B\x8F                                                                    
 index:***                           timestamp=1489324693470, value=\xE6\xB1\x9F\xE8\x8B\x8F                                                                    
15 row(s) in 0.3020 seconds

测试通过

如果hbase fsck 过程提示文件有损坏,可以使用hdfs 如下命名check region对应的文件

hdfs fsck /hbase/data/mynamespace/tablename/0250284baa6119d676821e86cfaa29f4/index/f142db2e1d844d48858ee2d919299ca0 -locations -blocks -files

出现的这样原因我后续会分析。

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
HBaseRegionHBase表的分区单元,存储着表中的一部分数据。下面是HBase Region常见故障和修复方法: 1. Region服务器(RegionServer)宕机:当Region服务器宕机时,该服务器上的所有Region将不可用。解决方法是将宕机的RegionServer重新启动或替换,并确保它重新加入HBase集群。主节点(HMaster)会自动将不可用的Region重新分配到其他可用的RegionServer上。 2. Region负载不均衡:有时候,某些RegionServer可能负载过重,而其他RegionServer负载较轻。这可能导致性能下降和不均匀的数据访问。解决方法是使用HBase提供的负载均衡工具,如Ambari或HBase Shell中的balancer命令,来重新分配Region,使其在各个RegionServer上均匀分布。 3. Region损坏或不可用:某些情况下,Region可能会损坏或变得不可用。这可能是由于硬件故障、网络问题或其他原因导致的。解决方法可以通过HBase内置的修复工具来修复Region。例如,可以使用HBase Shell中的修复命令(修复指定的Region或整个表)来尝试修复问题。 4. Region合并失败:在某些情况下,Region合并操作可能会失败,导致无法合并相邻的Region。这可能是由于硬件资源不足、数据分布不均匀等原因导致的。解决方法可以手动触发合并操作,使用HBase Shell中的合并命令(合并指定的Region或整个表),或者调整HBase的配置参数来优化合并策略。 5. 数据损坏或一致性问题:在某些情况下,Region中的数据可能会损坏或出现一致性问题。这可能是由于磁盘故障、写入错误或其他原因导致的。解决方法可以使用HBase提供的数据一致性检查工具来检测和修复数据一致性问题。例如,可以使用HBase Shell中的检查和修复命令来进行数据一致性检查和修复。 在处理HBase Region的故障时,重要的是根据具体情况选择合适的修复方法,并确保数据的一致性和可靠性。同时,建议定期备份HBase数据,以便在遇到严重故障时能够进行数据恢复。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值