文档首页/ MapReduce服务 MRS/ 用户指南/ MRS集群运维/ MRS集群告警处理参考/ ALM-38002 Kafka堆内存使用率超过阈值
更新时间:2024-10-24 GMT+08:00

ALM-38002 Kafka堆内存使用率超过阈值

告警解释

系统每60秒周期性检测Kafka服务堆内存使用状态,当连续10次检测到Kafka实例堆内存使用率超出阈值(最大内存的95%)时产生该告警。

平滑次数为1,堆内存使用率小于或等于阈值时,告警恢复;平滑次数大于1,堆内存使用率小于或等于阈值的90%时,告警恢复。

告警属性

告警ID

告警级别

是否自动清除

38002

重要

告警参数

参数名称

参数含义

来源

产生告警的集群名称。

服务名

产生告警的服务名称。

角色名

产生告警的角色名称。

主机名

产生告警的主机名。

Trigger Condition

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

对系统的影响

Kafka可用内存不足,会造成内存溢出导致Broker实例崩溃,影响该Broker正常提供读写服务。

可能原因

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

处理步骤

检查Kafka实例堆内存使用率。

  1. 在FusionInsight Manager首页,选择“运维 > 告警 > 告警 > Kafka堆内存使用率超过阈值 > 定位信息”。查看告警上报的实例的主机名。
  2. 在FusionInsight Manager首页,选择“集群 > 待操作集群的名称 > 服务 > Kafka > 实例”,选择上报告警实例主机名对应的角色。单击图表区域右上角的下拉菜单,选择“定制 > 进程 > Kafka堆内存使用率”,单击“确定”。

    图1 Kafka堆内存使用率

  3. 查看Kafka使用的堆内存是否已达到Kafka设定的最大堆内存的95%。

    • 是,执行4
    • 否,执行6

检查Kafka配置的堆内存大小。

  1. 在FusionInsight Manager首页,选择“集群 > 待操作集群的名称 > 服务 > Kafka > 配置 > 全部配置 > Broker(角色) > 环境变量”。将“KAFKA_HEAP_OPTS”参数的值参考如下说明调大。

    图2 KAFKA_HEAP_OPTS参数
    • 建议“KAFKA_HEAP_OPTS”参数中“-Xmx”和“-Xms”值保持一致。
    • 建议根据2查看“Kafka堆内存使用率”,调整“KAFKA_HEAP_OPTS”的值为“Kafka使用的堆内存大小”的两倍(可根据实际业务场景进行修改)。

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

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

收集故障信息。

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

告警清除

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

参考信息

无。