文档首页/ MapReduce服务 MRS/ 用户指南/ MRS集群运维/ MRS集群告警处理参考/ ALM-19032 RegionServer的RPC写队列数超过阈值
更新时间:2024-11-12 GMT+08:00

ALM-19032 RegionServer的RPC写队列数超过阈值

告警解释

系统每30秒周期性检测每个HBase服务的RegionServer实例的RPC写队列待处理任务个数,当检测到某个RegionServer上的RPC写队列待处理任务个数连续10次超出阈值时产生该告警。

当RegionServer实例的RPC写队列待处理任务个数小于或等于阈值时,告警消除。

该告警仅适用于MRS 3.3.1及之后版本。

告警属性

告警ID

告警级别

是否可自动清除

19032

  • 紧急:默认阈值为2000
  • 重要:默认阈值为1600

告警参数

类别

参数名称

参数含义

定位信息

来源

产生告警的集群名称。

服务名

产生告警的服务名称。

角色名

产生告警的角色名称。

主机名

产生告警的主机名。

附加信息

Threshold

产生告警的阈值。

对系统的影响

RegionServer RPC写队列数超过阈值,请求队列堆积会导致RegionServer内存GC压力,造成写入请求的响应时间增加,对于时延敏感型业务,可能会导致大量的业务写入请求超时。

可能原因

  • RegionServer堆内存配置不合理。
  • 慢盘故障。
  • RegionServer配置不合理。
  • RegionServer的Region分布不均匀,存在热点。
  • WAL Sync操作延迟过大。

处理步骤

  1. 在FusionInsight Manager首页,选择“运维 > 告警 > 告警”,查看“告警ID”为“19032”的告警的“定位信息”中上报该告警的服务实例和主机名。

检查RegionServer堆内存。

  1. 在FusionInsight Manager的告警列表中,查看1中的告警实例是否有“HBase服务进程堆内存使用率超过阈值”告警产生。

    • 是,执行3
    • 否,执行5

  2. 参考“ALM-19008 HBase服务进程堆内存使用率超过阈值”的处理步骤处理该故障。
  3. 等待几分钟后,在告警列表中查看该告警是否清除。

    • 是,处理完毕。
    • 否,执行5

  4. 在FusionInsight Manager首页,选择“集群 > 服务 > HBase > 图表”,在“图表分类”中选择“GC”,查看GC次数和GC时间监控是否异常。

    • 是,执行6
    • 否,执行9

  5. 单击“配置”,在搜索框中搜索“GC_OPTS”,在RegionServer所在节点内存允许范围内,适当调大RegionServer该参数的“Xmx”值,建议最大值不超过31GB,单击“保存”保存配置。
  6. 单击“概览”,选择“更多 > 重启服务”,重启HBase服务。
  7. 等待几分钟后,在告警列表中查看该告警是否清除。

    • 是,处理完毕。
    • 否,执行9

检查慢盘故障。

  1. 查看1中上报告警节点是否存在“慢盘故障”或“磁盘不可用”告警。

    • 是,执行10
    • 否,执行12

  1. 参考“ALM-12033 慢盘故障”或“ALM-12063 磁盘不可用”告警处理步骤处理该故障。
  2. 等待几分钟后,在告警列表中查看该告警是否清除。

    • 是,处理完毕。
    • 否,执行12

检查RegionServer配置。

  1. 在FusionInsight Manager首页,选择“集群 > 服务 > HBase > 配置 > 全部配置”,查看“hbase.wal.hsync”和“hbase.hfile.hsync”的参数值是否都为“true”。

    • 是,执行13
    • 否,执行15

  2. 将“hbase.wal.hsync”和“hbase.hfile.hsync”参数值都设置为“false”,单击“保存”保存配置。单击“概览”,选择“更多 > 重启服务”,重启HBase服务。

    HBase服务重启期间,HBase服务的业务无法使用,包括数据读写、表相关操作、访问HBase WebUI界面等。

  3. 等待几分钟后,在告警列表中查看该告警是否清除。

    • 是,处理完毕。
    • 否,执行15

检查RegionServer Region分布是否均衡。

  1. 在FusionInsight Manager首页,选择“集群 > 服务 > HBase”,单击“HMaster Web UI”右侧“HMaster(主)”超链接,进入该HBase实例的WebUI界面,查看“Region Servers”区域“Base Stats”页签“Num.Regions”列上Region的个数分布是否均衡。

    • 是,执行20
    • 否,执行16

  2. omm用户登录HBase客户端所在节点。
  3. 进入客户端安装目录,设置环境变量。

    cd 客户端安装目录

    source bigdata_env

    kinit 归属于supergroup用户组或具备Global的Admin权限的用户集群未启用Kerberos认证(普通模式)请跳过该操作)

  1. 执行以下命令打开HBase负载均衡功能,并确认是否成功打开。

    hbase shell

    balance_switch true

    balancer_enabled

    执行结果为“true”表示负载均衡功能已打开。

    执行balancer命令手动触发负载均衡。

    建议打开和手动触发负载均衡操作在业务低峰期进行。

  2. 等待几分钟后,在告警列表中查看该告警是否清除。

    • 是,处理完毕。
    • 否,执行20

检查WAL sync延迟

  1. 在FusionInsight Manager首页,选择“集群 > 服务 > HBase > 图表”,在“图表分类”中选择“操作统计”,查看“P999 WAL Sync操作延迟-所有实例”监控值是否超过500ms。

    • 是,执行21
    • 否,执行22

  1. 单击“实例”,勾选上报告警的RegionServer实例,选择“更多 > 重启实例”,可快速恢复,还需执行22联系运维人员排查可能存在问题的磁盘。

    在RegionServer重启期间, 客户端的请求会进行多次失败重试,短暂影响业务读写。

收集故障信息

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

告警清除

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

参考信息

不涉及。