更新时间:2026-06-16 GMT+08:00
分享

ALM-19040 HBase存在异常状态Region

告警解释

系统每60秒周期性检测HBase是否存在异常状态的Region,异常状态包括ABNORMALLY_CLOSED(Region被异常关闭)、FAILED_OPEN(RegionServer打开Region失败)、FAILED_CLOSE(RegionServer关闭Region失败);当检测到HBase存在异常状态Region时,上报该告警。

当HBase不存在异常状态Region时,告警清除。

本章节仅适用于MRS 3.6.0-LTS.1及之后版本。

告警属性

告警ID

告警级别

是否可自动清除

19040

重要

告警参数

类别

参数名称

参数含义

定位信息

来源

产生告警的集群名称。

服务名

产生告警的服务名称。

角色名

产生告警的角色名称。

主机名

产生告警的主机名。

附加信息

Threshold

产生告警的阈值。

对系统的影响

存在异常状态的Region表示Region可能未如预期正常上线,业务访问到该Region时可能会报错。

可能原因

HBase Region上下线时因为异常原因未能完整完成Region上下线动作。

处理步骤

检查HBase中是否存在异常状态的Region。

  1. 登录Manager界面,选择“集群 > 服务 > HBase > 图表”,在“图表分类”中选择“ 服务”,查看“异常状态Region数目统计”监控图表,确认异常状态Region的数量。
  2. 单击“概览”,单击“HMaster Web UI”右侧的超链接进入HBase WebUI界面。
  3. 在“Tables”区域的“User Tables”页签中,对“Other”列进行排序,查看该列值是否存在不为“0”的情况。

  4. 单击“Other”列不为“0”所在行的“Name”列的表名进入表详情页面,在“Table Regions”区域中的“Base Stats”页签,查看是否存在多个“Region State”为“ABNORMALLY_CLOSED”的Region。

  5. 在业务允许的情况下,可在hbase shell中执行以下操作使表Region重新上线。

    1. 禁用HBase表:

      disable '表名'

    2. 启用HBase表:

      enabled '表名'

  6. 表Region上线后,等待几分钟后检查本告警是否恢复。

    • 是,处理完毕。
    • 否,执行步骤 8

  7. 该表中仅少许表Region状态异常,需使用HBCK工具修复表。

    1. 在HBase WebUI页面的导航栏中选择“Procedure & Locks”,在“Procedures”区域观察是否存在Region的Procedure长时间未更新。
    2. 使用客户端安装用户登录安装HBase客户端的节点,执行以下配置环境变量并认证用户:

      cd 客户端安装目录

      source bigdata_env

      kinit hbase集群未启用Kerberos认证(普通模式)请跳过该操作)

    3. 执行以下命令将Procedure Lock释放:

      hbase hbck -j 客户端安装目录/HBase/hbase/tools/hbase-hbck2-*.jar bypass -o pid

      pid即为在7.a中的“Procedures”区域查看到的“Id”列的Process ID。

    4. Procedure Lock释放后,在7.a中的“Procedures”区域观察Region的“State”值是否一直为“RUNNABLE(Bypass)”。
      • 是,执行7.e
      • 否,执行7.g
    5. 在Manager界面,选择“集群 > 服务 > HBase”,在“概览”页面的右上角选择“更多 > 执行HMaster倒换”,输入当前用户密码并单击“确定”进行HMaster主备切换。
    6. HMaster主备倒换成功后,等待几分钟后检查本告警是否恢复。
      • 是,处理完毕。
      • 否,执行7.g
    7. 执行以下命令设置Region状态为CLOSED:

      hbase hbck -j 客户端安装目录/HBase/hbase/tools/hbase-hbck2-*.jar setRegionState RegionName CLOSED

    8. 执行以下命令重新手动上线该Region:

      hbase hbck -j 客户端安装目录/HBase/hbase/tools/hbase-hbck2-*.jar assigns RegionName

    9. 登录HBase WebUI页面,在导航栏选择“Procedure & Locks”,查看是否有对应的Region上线Procedure。
    10. 在导航栏选择“Home”,查看“Tables”区域的“User Tables”页签中的“Other”列的值是否全都为“0”。
    11. 在Manager界面,选择“集群 > 服务 > HBase > 图表”,在“图表分类”中选择“ 服务”,查看“异常状态Region数目统计”监控图表,确认是否存在异常状态Region。
      • 是,执行步骤 8
      • 否,处理完毕。

收集故障信息

  1. 在FusionInsight Manager界面,选择“运维 > 日志 > 下载”。
  2. 在“服务”中勾选待操作集群的“HBase”。
  3. 在“主机”中勾选HMaster实例所在的主机。
  4. 单击右上角的时间编辑按钮,设置日志收集的“开始时间”和“结束时间”分别为告警产生时间的前后10分钟,单击“下载”。
  5. 请联系运维人员,并发送已收集的故障日志信息。

告警清除

系统会自动清除此告警,无需手工清除。

参考信息

不涉及。

相关文档