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

ALM-13004 ZooKeeper堆内存使用率超过阈值

告警解释

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

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

告警属性

告警ID

告警级别

是否自动清除

13004

重要

告警参数

参数名称

参数含义

来源

产生告警的集群名称。

服务名

产生告警的服务名称。

角色名

产生告警的角色名称。

主机名

产生告警的主机名。

Trigger Condition

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

对系统的影响

ZooKeeper可用内存不足,可能会造成内存溢出导致服务崩溃,可能导致上游组件(例如Yarn、Flink、Spark等)业务运行失败。

可能原因

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

处理步骤

检查堆内存使用率。

  1. 在FusionInsight Manager首页,选择“运维 > 告警 > 告警”,单击告警“ZooKeeper堆内存使用率超过阈值”所在行的下拉菜单,在定位信息中确认告警上报的主机名所在的节点IP地址。
  2. 在FusionInsight Manager首页,选择“集群 > 待操作集群的名称 > 服务 > ZooKeeper > 实例”,单击对应IP地址的“角色”列的“quorumpeer”。单击图表区域右上角的下拉菜单,选择“定制 > CPU 和内存”,勾选“ZooKeeper堆内存与直接内存使用率”,单击“确定”,查看堆内存使用情况。
  3. 查看ZooKeeper使用的堆内存是否已达到ZooKeeper设定的最大堆内存的95%。

    • 是,执行4
    • 否,执行7

  4. 在FusionInsight Manager首页,选择“集群 > 待操作集群的名称 > 服务 > ZooKeeper > 配置 > 全部配置 > quorumpeer > 系统”。将GC_OPTS参数中-Xmx的值根据实际情况调大,具体调整方案如下:

    1. 单击“实例”,选择对应IP地址的“角色”列的“quorumpeer”,单击图表区域右上角的下拉菜单,选择“定制 > CPU 和内存”,勾选“ZooKeeper堆内存与直接内存资源状况”,单击“确定”,查看ZooKeeper实际使用的堆内存大小。
    2. 根据堆内存实际使用量,修改GC_OPTS参数中的-Xmx值,该值一般为Zookeeper数据容量的2倍。例如当前ZooKeeper堆内存使用达到2G,则GC_OPTS建议配置为“-Xms4G -Xmx4G -XX:NewSize=512M -XX:MaxNewSize=512M -XX:MetaspaceSize=64M -XX:MaxMetaspaceSize=64M -XX:CMSFullGCsBeforeCompaction=1”。

  5. 保存配置,并重启ZooKeeper服务。

    服务在重启过程中将不可用。另外,依赖该服务的上层服务也将受到影响。

  6. 观察界面告警是否清除?

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

收集故障信息。

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

告警清除

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

参考信息

无。