ALM-45588 IoTDBServer直接内存使用率超过阈值
告警解释
系统每60秒周期性检测IoTDBServer进程直接内存使用状态,当连续5次检测到IoTDBServer实例直接内存使用率超出阈值(最大内存的90%)时,产生该告警。当IoTDBServer直接内存使用率小于或等于阈值时,告警恢复。
告警属性
告警ID |
告警级别 |
是否自动清除 |
---|---|---|
45588 |
重要 |
是 |
告警参数
参数名称 |
参数含义 |
---|---|
来源 |
产生告警的集群名称。 |
服务名 |
产生告警的服务名称。 |
角色名 |
产生告警的角色名称。 |
主机名 |
产生告警的主机名。 |
Trigger Condition |
系统当前指标取值满足自定义的告警设置条件。 |
对系统的影响
直接内存溢出可能导致服务不可用,可能影响该IoTDBServer进程无法正常提供数据读写服务。
可能原因
节点IoTDBServer实例直接内存使用率过大,或配置的直接内存不合理,导致使用率超过阈值。
处理步骤
检查直接内存使用率。
- 在FusionInsight Manager首页,选择“运维 > 告警 > 告警”,弹出告警页面,选中“告警ID”为“45588”的告警,在该页面的告警详情里查看“定位信息”中的角色名并确定实例的IP地址。
- 选择“集群 > 待操作集群的名称 > 服务 > IoTDB > 实例”,单击告警上报的IoTDBServer,进入实例“概览”页面。单击图表区域右上角的下拉菜单,选择“定制 > 内存 > IoTDBServer直接内存使用率”,单击“确定”。
- 查看IoTDBServer使用的直接内存是否已达到IoTDBServer设定的阈值(默认值为最大直接内存的90%)。
- 在FusionInsight Manager首页,选择“集群 > 待操作集群的名称 > 服务 > IoTDB > 配置 ”,单击“全部配置”, 选择“IoTDBServer > 系统”,将参数“GC_OPTS”中“-XX:MaxDirectMemorySize”的值根据实际情况调大,并保存配置。
- 出现该告警时,说明当前IoTDBServer设置的直接内存无法满足当前IoTDBServer进程所需的直接内存。
- 建议将参数“GC_OPTS”中“-XX:MaxDirectMemorySize”的值设置为“IoTDBServer进程使用的直接内存大小”的两倍(可根据实际业务场景进行修改)。
- IoTDBServer进程使用的直接内存大小可以通过“定制 > 内存 > IoTDBServer直接内存资源状况”获取。若“GC_OPTS”中没有参数“-XX:MaxDirectMemorySize”,则需进行手动添加。
- 重新启动受影响的服务或实例,观察界面告警是否清除。
- 是,处理完毕。
- 否,执行6。
收集故障信息。
告警清除
此告警修复后,系统会自动清除此告警,无需手工清除。
参考信息
无。