ALM-19033 RegionServer的RPC读队列数超过阈值
告警解释
系统每30秒周期性检测每个HBase服务的RegionServer实例的RPC读队列待处理任务个数,当检测到某个RegionServer上的RPC读队列待处理任务个数连续10次超出阈值时产生该告警。
当RegionServer实例的RPC读队列待处理任务个数小于或等于阈值时,告警消除。
告警属性
告警ID |
告警级别 |
告警类型 |
业务类型 |
是否可自动清除 |
---|---|---|---|---|
19031 |
|
业务质量告警 |
HBase |
是 |
告警参数
类别 |
参数名称 |
参数含义 |
---|---|---|
定位信息 |
来源 |
产生告警的集群名称。 |
服务名 |
产生告警的服务名称。 |
|
角色名 |
产生告警的角色名称。 |
|
主机名 |
产生告警的主机名。 |
|
附加信息 |
Threshold |
产生告警的阈值。 |
对系统的影响
RegionServer RPC读队列数超过阈值,请求队列堆积会导致读取请求的响应时间增加,对于时延敏感型业务,可能会导致大量的业务读取请求超时。
可能原因
- RegionServer堆内存配置不合理。
- RegionServer配置不合理。
- RegionServer的Region分布不均,存在读取热点。
- 慢盘故障。
处理步骤
检查RegionServer堆内存配置。
- 在FusionInsight Manager的告警列表中,查看1中的告警实例是否有“HBase服务进程堆内存使用率超过阈值”告警产生。
- 参考“ALM-19008 HBase服务进程堆内存使用率超过阈值”的处理步骤处理该故障。
- 等待几分钟后,在告警列表中查看该告警是否清除。
- 是,处理完毕。
- 否,执行5。
- 在FusionInsight Manager首页,选择“集群 > 服务 > HBase > 图表”,在“图表分类”中选择“GC”,查看GC次数和GC时间监控是否异常。
- 单击“配置”,在搜索框中搜索“GC_OPTS”,在RegionServer所在节点内存允许范围内,适当调大RegionServer该参数的“Xmx”值,建议最大值不超过31GB,单击“保存”保存配置。
- 单击“概览”,选择“更多 > 重启服务”,重启HBase服务。
- 等待几分钟后,在告警列表中查看该告警是否清除。
- 是,处理完毕。
- 否,执行9。
检查RegionServer配置。
- 在FusionInsight Manager首页,选择“集群 > 服务 > HBase > 配置 > 全部配置”,查看“hbase.bucketcache.size”配置是否合理,该值越大读缓存越大,有助于提升读取性能,在节点剩余内存前提下适当调大该配置,单击“保存”保存配置。单击“概览”,选择“更多 > 重启服务”,重启HBase服务。
- 等待几分钟后,在告警列表中查看该告警是否清除。
- 是,处理完毕。
- 否,执行11。
- 在HBase概览界面,单击“HMaster Web UI”右侧超链接进入HBase WebUI页面,在“Tables”区域的“User Tables”页签单击用户当前正在大量读的表名称,在“Table”页签的“Table Schema”区域查看该表的“BLOCKCACHE”值是否为“false”。
- 使用omm用户登录HBase客户端所在节点,执行以下命令修改11表列族的BLOCKCACHE参数值为“true”:
cd 客户端安装目录
source bigdata_env
kinit 归属于supergroup用户组或具备Global的Admin权限的用户(集群未启用Kerberos认证(普通模式)请跳过该操作)
hbase shell
alter '表名', {NAME => '列族名', BLOCKCACHE => true}
执行以下命令检查列族的BLOCKCACHE参数是否已更改为“true”:
describe '表名'
- 等待几分钟后,在告警列表中查看该告警是否清除。
- 是,处理完毕。
- 否,执行14。
检查RegionServer的Region分布是否均匀。
- 在FusionInsight Manager首页,选择“集群 > 服务 > HBase”,单击“HMaster(主)”,进入HBase WebUI页面,查看Region Servers区域“Base Stats”页签的“Num.Regions”列上Region的个数分布是否均衡。
- 以omm用户登录故障RegionServer节点。
- 进入客户端安装目录,设置环境变量。
cd 客户端安装目录
source bigdata_env
kinit 归属于supergroup用户组或具备Global的Admin权限的用户(集群未启用Kerberos认证(普通模式)请跳过该操作)
- 执行以下命令查看负载均衡功能是否打开。
hbase shell
balancer_enabled
- 执行以下命令打开负载均衡功能,并确认是否成功打开。
balance_switch true
balancer_enabled
执行balancer命令手动触发负载均衡。建议打开和手动触发负载均衡操作在业务低峰期进行。
- 等待几分钟后,在告警列表中查看该告警是否清除。
- 是,处理完毕。
- 否,执行20。
检查慢盘故障。
- 参考“ALM-12033 慢盘故障”、“ALM-12063 磁盘不可用”的处理步骤处理该故障。
- 等待几分钟后,在告警列表中查看该告警是否清除。
- 是,处理完毕。
- 否,执行23。
收集故障信息
告警清除
此告警修复后,系统会自动清除此告警,无需手工清除。
参考信息
不涉及。