首页 > 解决方案 > HBase - hbase:metadata 保存有关不存在的 RegionServer ID 的信息 - “主启动无法进行,在区域联机之前保持模式。”

问题描述

我无法启动 Hbase Master,因为我收到此错误:

[Thread-18] master.HMaster: hbase:meta,,1.1588230740 
    is NOT online; state={1588230740 state=OPEN, ts=1569328636085, server=regionserver17,16020,1566375930434}; 
    ServerCrashProcedures=true. 
    Master startup cannot progress, in holding-pattern until region onlined.

Hbase Master 处于活动状态且绿色,但实际上它没有正确启动,因为它会在日志中生成这些警告,实际上我什至无法在 Hbase shell 中执行列表,因为那时我收到错误:错误:org.apache.hadoop.hbase.PleaseHoldException: Master is initializing

hbase:meta 引用了一些不存在的 ID 1566375930434,它在 WAL 和 zookeeper-client /hbase-unsecure/rs 列表中都不存在。

我尝试使用这些命令:

$ sudo -u hdfs hdfs dfs -rm -r /apps/hbase/data/WALs/

$ zookeeper-client rmr /hbase-unsecure/rs

我也试过了,这个:

rm -f /var/lib/ambari-metrics-collector/hbase-tmp/zookeeper/zookeeper_0/version-2/*

并重新启动了 Hbase,但仍然遇到同样的问题。如果有人可以给我额外的建议,可以尝试什么。谢谢

标签: hadoophdfshbaseapache-zookeeper

解决方案


我们解决了这个问题。解决方案是

  • 停止 Hbase
  • 以root 身份登录到zookeeper-client
  • 执行命令rmr /hbase-unsecure/meta-region-server
  • 启动 Hbase

推荐阅读