ALM-14028 待补齐的块数超过阈值
告警解释
系统每30秒周期性检测待补齐的块数量,并把待补齐的块数量和阈值相比较。需补齐的块数量指标默认提供一个阈值范围。当检测到丢失的块数量超出阈值范围时产生该告警。
用户可通过“运维 > 告警 > 阈值设置 > 待操作集群名称 > HDFS > 文件和块 > 需要复制副本的块总数(NameNode)”修改阈值。
平滑次数为1,待补齐的块数量小于或等于阈值时,告警恢复;平滑次数大于1,待补齐的块数量小于或等于阈值时,告警恢复。
告警属性
告警ID |
告警级别 |
告警类型 |
业务类型 |
是否可自动清除 |
---|---|---|---|---|
14028 |
重要(默认阈值为10000) 次要(默认阈值为1000) |
业务质量告警 |
HDFS |
是 |
告警参数
类别 |
参数名称 |
参数含义 |
---|---|---|
定位信息 |
来源 |
产生告警的集群名称。 |
服务名 |
产生告警的服务名称。 |
|
角色名 |
产生告警的角色名称。 |
|
主机名 |
产生告警的主机名。 |
|
NameService名 |
产生告警的NameService名称。 |
|
附加信息 |
触发条件 |
系统当前指标取值满足自定义的告警设置条件。 |
对系统的影响
HDFS存储数据丢失,HDFS可能会进入安全模式,无法提供写服务。丢失的块数据无法恢复。
可能原因
- DataNode实例异常。
- 数据被删除。
- 写入文件的副本数大于DataNode的节点数。
处理步骤
- 在FusionInsight Manager首页,选择“运维 > 告警 > 告警”查看是否存在告警“ALM-14003 丢失的HDFS块数量超过阈值”。
- 按照“ALM-14003 丢失的HDFS块数量超过阈值”的处理方法处理,然后等待5分钟,检查告警是否清除。
- 是,结束。
- 否,执行3。
- 以root用户登录HDFS客户端,用户密码为安装前用户自定义,请咨询MRS集群管理员。执行如下命令:
- 执行命令hdfs fsck / >> fsck.log,获取当前集群的状况。
- 使用命令统计当前待复制块数量M:
cat fsck.log | grep "Under-replicated"
- 使用命令统计“/tmp/hadoop-yarn/staging/”目录下的待复制块数量N:
cat fsck.log | grep "Under replicated" | grep "/tmp/hadoop-yarn/staging/" | wc -l
“/tmp/hadoop-yarn/staging/”目录为默认值,如果客户有修改,可以通过mapred-site.xml文件配置项“yarn.app.mapreduce.am.staging-dir”获取此路径。
- 比对N是否占了M的大多数(N/M>50%)。
- 执行命令来重新配置目录的文件副本数(文件副本数选择DataNode节点数或者默认文件副本数):
hdfs dfs -setrep -w 文件副本数 /tmp/hadoop-yarn/staging/
默认文件副本数通过如下方式获取:
登录Manager页面,选择“集群 > 服务 > HDFS > 配置 > 全部配置”,搜索dfs.replication参数,该参数的值即是默认文件副本数。
然后等待5分钟,检查告警是否清除。
- 是,结束。
- 否,执行9。
收集故障信息
告警清除
此告警修复后,系统会自动清除此告警,无需手工清除。
参考信息
不涉及。