更新时间:2026-06-18 GMT+08:00
ALM-19013 region处在RIT状态的时长超过阈值
告警解释
系统按300秒周期性检测HBase上的region处在RIT状态的数量。当检测到处在RIT状态的region时长超过阈值时长(连续两次超过阈值),上报该告警。当处在超时状态的region都恢复后,告警恢复。
告警属性
| 告警ID | 告警级别 | 是否自动清除 |
|---|---|---|
| 19013 | 重要 | 是 |
告警参数
| 参数名称 | 参数含义 |
|---|---|
| 来源 | 产生告警的集群名称。 |
| 服务名 | 产生告警的服务名称。 |
| 角色名 | 产生告警的角色名称。 |
| 主机名 | 产生告警的主机名。 |
对系统的影响
业务表的部分数据丢失或不可用。
可能原因
- Compaction永久阻塞。
- HDFS文件异常。
处理步骤
检查告警上报原因。
- 在集群Manager首页,选择,选中“告警ID”为“19013”的告警,查看“定位信息”中的主机名及角色名。
登录集群Manager具体操作,请参考访问MRS集群Manager。
- 选择“集群 > 服务 > HBase ”,单击图表区域右上角的下拉菜单,选择“定制 > 服务 > 处在RIT状态的region数”,单击“确定”,查看该图表中“处在RIT状态达到阈值时长的region数”监控项是否在连续3个检测周期内检测到值(默认阈值为60秒)。 图1 处在RIT状态的region数
- 在基本信息区域单击“HMaster Web UI”右侧的“HMaster(xxx,主)”超链接,进入HBase WebUI页面,在“Home”页面的“Tables”区域查看是否只是某一个表的region RIT状态超时。 图2 Tables
- 使用root用户登录安装HBase客户端的节点,执行以下命令:
切换至客户端安装目录:
cd 客户端安装目录
配置环境变量:
source bigdata_env
如果集群已启用Kerberos认证(安全模式),需执行以下命令认证用户:
kinit hbase
- 执行以下命令,并查看是否报错“No table descriptor file under hdfs://hacluster/hbase/data/default/table”。
hbase hbck
- 在HBase WebUI页面的导航栏中选择“Procedure & Locks”,在“Procedures”区域观察是否存在处于Waiting状态的Region,并记录“Id”列的Procedure ID。
- 执行以下命令将Procedure Lock释放:
hbase hbck -j 客户端安装目录/HBase/hbase/tools/hbase-hbck2-*.jar bypass -o pidpid即为步骤 6记录的处于Waiting状态的Region的Procedure ID。
- Procedure Lock释放后,在步骤 6中的“Procedures”区域观察Region的“State”值是否一直为“RUNNABLE(Bypass)”。
- 在Manager界面,选择“集群 > 服务 > HBase”,在“概览”页面的右上角选择“更多 > 执行HMaster倒换”,输入当前用户密码并单击“确定”进行HMaster主备切换。
- HMaster主备倒换成功后,等待几分钟后执行以下命令设置Region状态为CLOSED:
hbase hbck -j 客户端安装目录/HBase/hbase/tools/hbase-hbck2-*.jar setRegionState RegionName CLOSED - 执行以下命令重新手动上线该Region:
hbase hbck -j 客户端安装目录/HBase/hbase/tools/hbase-hbck2-*.jar assigns -o RegionName - 在客户端执行以下命令,并查看否报错“No table descriptor file under hdfs://hacluster/hbase/data/default/table”。
hbase hbck
- 是,执行步骤 13。
- 否,处理完毕。
收集故障信息
告警清除
此告警修复后,系统会自动清除此告警,无需手工清除。
参考信息
无。
