告警解释
系统每30秒周期性检测HDFS DataNode堆内存使用率,并把实际的HDFS DataNode堆内存使用率和阈值相比较。HDFS DataNode堆内存使用率指标默认提供一个阈值范围。当HDFS DataNode堆内存使用率超出阈值范围时,产生该告警。
用户可通过“运维 > 告警 > 阈值设置 > 待操作集群的名称 > HDFS”修改阈值。
平滑次数为1,HDFS DataNode堆内存使用率小于或等于阈值时,告警恢复;平滑次数大于1,HDFS DataNode堆内存使用率小于或等于阈值的90%时,告警恢复。
告警属性
告警ID | 告警级别 | 是否自动清除 |
---|---|---|
14008 | 重要 | 是 |
告警参数
参数名称 | 参数含义 |
---|---|
来源 | 产生告警的集群名称。 |
服务名 | 产生告警的服务名称。 |
角色名 | 产生告警的角色名称。 |
主机名 | 产生告警的主机名。 |
Trigger condition | 系统当前指标取值满足自定义的告警设置条件。 |
对系统的影响
HDFS DataNode堆内存使用率过高,会影响到HDFS的数据读写性能。
可能原因
HDFS DataNode配置的堆内存不足。
处理步骤
清除无用文件
1.以root用户登录HDFS客户端。执行cd命令进入客户端安装目录,然后执行 source bigdata_env 。
如果集群采用安全版本,要进行安全认证。
执行kinit hdfs命令,按提示输入密码。向管理员获取密码。
2.执行hdfs dfs -rm -r 文件或目录路径命令,确认删除无用的文件。
3.检查本告警是否恢复。
- 是,处理完毕。
- 否,执行步骤4。
查看DataNode JVM内存使用情况和当前配置
4.在FusionInsight Manager首页,选择“集群 > 待操作集群的名称 > 服务 > HDFS”。
5.“基本信息”区域,单击“NameNode(主)”,显示HDFS WebUI页面。
说明admin用户默认不具备其他组件的管理权限,如果访问组件原生界面时出现因权限不足而打不开页面或内容显示不全时,可手动创建具备对应组件管理权限的用户进行登录。
6.在HDFS WebUI,单击“DataNodes”页签,查看所有告警DataNode节点的Block数量。
7.在FusionInsight Manager首页,选择“集群 > 待操作集群的名称 > 服务 > HDFS > 配置 > 全部配置”。在“搜索”中,输入“GC_OPTS”,确定当前“HDFS->DataNode”的“GC_OPTS”内存参数。
对系统进行调整
8.根据步骤6中的Block数量和步骤7中DataNode配置的堆内存参数,检查当前配置的内存是否不合理。
- 是,执行步骤9。
- 否,执行步骤11。
说明单个DataNode实例平均Block数量和DataNode内存的对应关系参考值如下:
单个DataNode实例平均Block数量达到2,000,000,DataNode的JVM参数参考值为:-Xms6G -Xmx6G -XX:NewSize=512M -XX:MaxNewSize=512M。
单个DataNode实例平均Block数量达到5,000,000,DataNode的JVM参数参考值为:-Xms12G -Xmx12G -XX:NewSize=1G -XX:MaxNewSize=1G。
单个DataNode实例平均Block数量和DataNode内存的对应关系参考值如下:
- 单个DataNode实例平均Block数量达到2,000,000,DataNode的JVM参数参考值为:-Xms6G -Xmx6G -XX:NewSize=512M -XX:MaxNewSize=512M。
- 单个DataNode实例平均Block数量达到5,000,000,DataNode的JVM参数参考值为:-Xms12G -Xmx12G -XX:NewSize=1G -XX:MaxNewSize=1G。
9.按照Block数量和内存对应关系,对DataNode的堆内存参数进行修改,并单击“保存”,选择“概览 > 更多 > 重启服务”进行重启。
10.检查本告警是否恢复。
- 是,处理完毕。
- 否,执行步骤11。
收集故障信息
11.在FusionInsight Manager首页,选择“运维 > 日志 > 下载”。
12.在“服务”中勾选待操作集群的“HDFS”。
13.单击右上角的设置日志收集的“开始时间”和“结束时间”分别为告警产生时间的前后10分钟,单击“下载”。
14.请联系运维人员,并发送已收集的故障日志信息。
告警清除
此告警修复后,系统会自动清除此告警,无需手工清除。
参考信息
无。