文档首页/ MapReduce服务 MRS/ 用户指南(安卡拉区域)/ 告警参考/ ALM-14016 DataNode直接内存使用率超过阈值
更新时间:2024-11-29 GMT+08:00

ALM-14016 DataNode直接内存使用率超过阈值

告警解释

系统每30秒周期性检测HDFS服务直接内存使用状态,当检测到DataNode实例直接内存使用率超出阈值(最大内存的90%)时,产生该告警。

直接内存使用率小于阈值时,告警恢复。

告警属性

告警ID

告警级别

告警类型

业务类型

是否可自动清除

14016

紧急(默认阈值为95%)

重要(默认阈值为90%)

业务质量告警

HDFS

告警参数

类别

参数名称

参数含义

定位信息

来源

产生告警的集群名称。

服务名

产生告警的服务名称。

角色名

产生告警的角色名称。

主机名

产生告警的主机名。

附加信息

触发条件

系统当前指标取值满足自定义的告警设置条件。

对系统的影响

DataNode可用直接内存不足,可能会造成内存溢出导致服务崩溃。

可能原因

该节点DataNode实例直接内存使用率过大,或配置的直接内存不合理,导致使用率超过阈值。

处理步骤

检查直接内存使用率。

  1. 在FusionInsight Manager首页,选择“运维 > 告警 > 告警”,单击告警“ALM-14016 DataNode直接内存使用率超过阈值”所在行的下拉菜单,在“定位信息”中查看告警上报的角色名并确定实例的IP地址。
  2. 在FusionInsight Manager首页,选择“集群 > 待操作集群的名称 > 服务 > HDFS > 实例 > DataNode(对应上报告警实例IP地址)”,单击图表区域右上角的下拉菜单,选择“定制 > 资源”,勾选“DataNode内存使用详情”。查看直接内存使用情况。
  3. 查看DataNode使用的直接内存是否已达到DataNode设定的最大直接内存的90%(默认阈值)。

    • 是,执行4
    • 否,执行8

  4. 在FusionInsight Manager首页,选择“集群 > 待操作集群的名称 > 服务 > HDFS > 配置 > 全部配置 > DataNode > 系统”。查看“GC_OPTS”参数中是否存在“-XX:MaxDirectMemorySize”。

    • 是,执行5
    • 否,执行6

  5. 调整“-XX:MaxDirectMemorySize”大小。

    1. 在“GC_OPTS”中查看 “-Xmx”配置的大小,并判断节点内存是否够用。

      节点内存是否够用可根据实际环境进行判断,例如可使用以下方法:

      root用户登录告警上报的实例的IP地址,执行free -g命令,查看“free”列的“Mem”值即为节点可用内存,如下示例中节点可用内存为4G。
                    total        used        free      shared  buff/cache   available
      Mem:            112          48           4          10          58          46
      ......

      如果节点可用内存大于或等于“-Xmx”的值,则节点内存够用。如果节点可用内存小于“-Xmx”的值,则节点内存不够用。

      • 是,修改“-XX:MaxDirectMemorySize”的配置值与“-Xmx”配置值相同。
      • 否,适量调大“-XX:MaxDirectMemorySize”的大小,但取值不得超过节点可用内存。
    2. 保存配置,重启DataNode实例。

  6. 查看告警信息,是否存在告警“ALM-14008 DataNode堆内存使用率超过阈值”。

    • 是,参考“ALM-14008 DataNode堆内存使用率超过阈值”进行处理。
    • 否,执行7

  7. 观察界面告警是否清除。

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

收集故障信息。

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

告警清除

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

参考信息

不涉及。