文档首页/ MapReduce服务 MRS/ 用户指南/ MRS集群运维/ MRS集群告警处理参考/ ALM-19038 RegionServer存在写入负载过高Region
更新时间:2026-09-11 GMT+08:00
分享

ALM-19038 RegionServer存在写入负载过高Region

告警解释

系统每30秒周期性检测HBase RegionServer实例上由于MemStore达到上限而阻断的请求数,并把请求数与阈值相比较,默认当连续5次检测到请求数超出告警阈值(默认为450)时产生该告警。

当HBase RegionServer实例上由于MemStore达到上限而阻断的请求数小于或等于阈值时,告警恢复。

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

告警属性

告警ID

告警级别

是否可自动清除

19038

次要

是

告警参数

类别

参数名称

参数含义

定位信息

来源

产生告警的集群名称。

服务名

产生告警的服务名称。

角色名

产生告警的角色名称。

主机名

产生告警的主机名。

附加信息

Trigger Condition

系统当前指标取值满足自定义的告警设置条件。

对系统的影响

HBase RegionServer实例由于MemStore达到上限而阻断写入请求,会导致写入性能下降。

可能原因

HBase客户端业务写入请求访问过载或存在热点。

处理步骤

检查HBase客户端业务写入请求是否存在访问过载或热点。

  1. 登录Manager界面,选择“运维 > 告警 > 告警”,查看当前告警详细信息,记录定位信息中上报告警的RegionServer实例主机名。
  2. 在Manager界面,选择“运维 > 日志 > 在线检索”,“检索内容”输入关键词“RegionTooBusy”,“服务”选择HBase服务,“主机范围”选择步骤 1中获取的主机,单击“搜索”,在搜索结果中查看并记录写入负载过高的Region名称。

    • 如果搜索结果为单一Region频繁出现RegionTooBusy,则HBase客户端业务写入请求存在热点,执行步骤 3。
    • 如果搜索结果为多个Region出现RegionTooBusy,则HBase客户端业务写入请求可能存在访问过载,执行步骤 4。

  3. HBase客户端业务写入请求存在热点时,可对Region进行分裂操作:

    1. 登录HBase客户端所在节点,配置环境变量并认证用户:

      cd 客户端安装目录

      source bigdata_env

      kinit 组件业务用户(集群未启用Kerberos认证(普通模式)请跳过此步骤)

    2. 执行以下命令对Region进行分裂:

      split 'regionName'

      regionName为步骤 2查看到的Region名称。Region分裂完成后执行步骤 5。

  4. HBase客户端业务写入请求可能存在访问过载,可对表进行分裂操作或修改冲洗磁盘的内存大小:

    • 对表进行分裂操作
      1. 在Manager界面,选择“集群 > 服务 > HBase”,在概览界面单击“HMaster Web UI”右侧的“HMaster(xxx,主)”链接,进入HBase WebUI页面。
      2. 在“Region Servers”区域的“Base Stats”单击上报告警的RegionServer,在该RegionServer的“Regions”区域搜索步骤 2查看到的Region名称,搜索结果所在行的第一个分隔符内容即为HBase表名称,例如搜索到的结果为“hbase,xxxx”,则HBase表名称为“hbase”。
      3. 返回HBase WebUI Home页面,在“Tables”区域中单击查看到的表名称进入表信息页面,在“Table Regions”区域查看“ReadRequests”、“WriteRequests”、“Start Key”和“End Key”列查看表的分区信息,确认表的预分区是否合理。
      4. 如果表的预分区不合理,且短时间内无整改业务预分区规划,可通过表级别分裂动作避免RegionTooBusy。
        1. 登录HBase客户端所在节点,配置环境变量并认证用户:

          cd 客户端安装目录

          source bigdata_env

          kinit 组件业务用户(集群未启用Kerberos认证(普通模式)请跳过此步骤)

        2. 执行以下命令对表进行分裂:

          split 'tableName'

          表分裂完成后执行步骤 5。

    • 修改冲洗磁盘的内存大小
      1. 在Manager界面,选择“集群 > 服务 > HBase > 配置”,在搜索框中搜索“hbase.hregion.memstore.flush.size”,根据实际业务调大该值以调整内存阻断的MemStore的大小,该值建议不大于256MB,否则会不利于RegionServer内存的使用。

        阻断请求的内存计算公式为:hbase.hregion.memstore.block.multiplier * hbase.hregion.memstore.flush.size

      2. 单击“保存”保存配置。单击“实例”,勾选受影响的RegionServer实例,选择“更多 > 重启实例”,在弹窗中输入用户名和密码并单击“确定”重启RegionServer实例使配置生效。

        RegionServer实例重启完成后执行步骤 5。

  5. 等待5分钟,检查该告警是否恢复。

    • 是,操作结束。
    • 否,执行步骤 6。

  6. 重复执行1次步骤 1~步骤 4后,等待5分钟,检查该告警是否恢复。

    • 是,操作结束。
    • 否,执行步骤 7。

收集故障信息。

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

告警清除

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

参考信息

不涉及。

相关文档