在Hbase 自动均衡器打开的情况下发现region未均衡分配(集群分配策略bytable)
hbase shell执行balancer
返回false
查看active hmaster日志
2022-11-22 17:09:51,768 WARN [RpcServer.default.FPBQ.Fifo.handler=69,queue=6,port=16000] master.HMaster: {70bc7dcc34b5f1af661aaa0c3bd88f7d state=OPEN, ts=1669088497401, se
rver=hbase-worker01.cydata.com.cn,16020,1656510559740} 's server is not in the online server list.
2022-11-22 17:06:37,702 INFO [master/hbase-master02:16000.Chore.1] master.HMaster: Not running balancer because 1 regions found not on an online server
报错一个region并未在在线服务器列表内导致无法balancer
hbase UI页面查看这个region隶属于哪张表
先下线表再上线表,执行balancer成功
追溯其原因
发现此表region状态变为rit过
2022-11-22 17:17:53,569 INFO [PEWorker-12] procedure.MasterProcedureScheduler: Took xlock for pid=1332, ppid=1331, state=RUNNABLE:REGION_TRANSITION_DISPATCH; UnassignProce
dure table=$tablename, region=2747f46ce1908269ebde92290beeee8f, override=true, server=hbase-worker01.cydata.com.cn,16020,1669088470707
--
at org.apache.hadoop.hbase.master.procedure.ServerCrashProcedure.handleRIT(ServerCrashProcedure.java:423)
org.apache.hadoop.hbase.master.procedure.ServerCrashException: ServerCrashProcedure pid=694, server=hbase-worker01.cydata.com.cn,16020,1656510559740