ALM-43013 JDBCServer2x进程GC时间超出阈值
告警解释
系统每60秒周期性检测JDBCServer2x进程的GC时间,当检测到JDBCServer2x进程的GC时间超出阈值(连续3次检测超过12秒)时产生该告警。用户可通过“运维 >告警 > 阈值设置 > Spark2x > GC时间 > JDBCServer2x的总GC时间”修改阈值。当JDBCServer2x进程GC时间小于或等于阈值时,告警恢复。
MRS 3.3.0-LTS及之后的版本中,Spark2x服务改名为Spark,服务包含的角色名也有差异,例如JDBCServer2x变更为JDBCServer。相关涉及服务名称、角色名称的描述和操作请以实际版本为准。
告警属性
告警ID |
告警级别 |
是否自动清除 |
---|---|---|
43013 |
重要 |
是 |
告警参数
参数名称 |
参数含义 |
---|---|
来源 |
产生告警的集群名称。 |
服务名 |
产生告警的服务名称。 |
角色名 |
产生告警的角色名称。 |
主机名 |
产生告警的主机名。 |
Trigger Condition |
系统当前指标取值满足自定义的告警设置条件。 |
对系统的影响
GC时间超出阈值,会影响JDBCServer2x进程运行的性能,甚至造成JDBCServer2x进程不可用,Spark JDBC任务执行变慢或失败。
可能原因
该节点JDBCServer2x进程堆内存使用率过大,或配置的堆内存不合理,导致进程GC频繁。
处理步骤
检查GC时间
- 在FusionInsight Manager首页,选择“运维 > 告警 > 告警”,选中“ID”为“43013”的告警,查看“定位信息”中的角色名以及确认主机名所在的IP地址。
- 在FusionInsight Manager首页,选择“集群 > 服务 > Spark2x > 实例”,单击告警上报的JDBCServer2x,进入实例“概览”页面,单击图表区域右上角的下拉菜单,选择“定制 > JDBCServer2x的GC时间”,单击“确定”,查看JDBCServer2x进程的GC时间是否大于阈值(默认12秒)。
图1 JDBCServer2x的GC时间
- 在FusionInsight Manager首页,选择“集群 > 服务 > Spark2x > 配置”,单击“全部配置”,选择“JDBCServer2x > 默认”,“SPARK_DRIVER_MEMORY”参数默认值为4G。若参数值调整后,仍偶现告警,可按0.5倍速率调大。若告警次数比较频繁,可以按1倍速率调大。多业务量、高并发的情况可以考虑增加实例。
- 重启所有的JDBCServer2x实例。
重启实例期间实例不可用,当前实例节点的任务会执行失败。
- 等待10分钟,观察界面告警是否清除。
- 是,处理完毕。
- 否,执行6。
收集故障信息
告警清除
此告警修复后,系统会自动清除此告警,无需手工清除。
参考信息
无。