流计算 Oceanus TaskManager CPU 负载过高事件

Flink 作业的 TaskManager 负责执行用户定义的各类算子逻辑,CPU 负载过高可能会导致吞吐量下降,以及延迟的上升等各类问题。当作业的大多数 TaskManager 长期接近满载时,会触发本事件。

相关产品
流计算 Oceanus 产品页,含版本规格、价格与购买入口。

一、事件介绍

注意:该功能目前为 Beta 版,暂不支持规则的自定义,后续该能力会陆续上线。

二、判定标准

·系统每5分钟会检测一次 Flink 作业中所有 TaskManager 的 CPU 使用率指标。

·当某个 TaskManager 的 CPU 使用率连续5个数据点的值都超过90%,则说明这个 TaskManager 处于 CPU 超高负载状态。

·如果该作业超过80%的 TaskManager 都处于超高负载状态,则会触发该事件的推送。

注意:为了避免频繁告警,每个作业的每个运行实例 ID 每小时最多触发一次该事件的推送。

三、告警配置

用户可以对该事件 配置作业监控告警(异常事件),并实时接收触发和恢复的告警通知。

四、处理建议

如果用户使用的是 Flink 1.13 版本,可以使用 Flink UI 内置的 火焰图功能 分析 CPU 调用热点,即占用 CPU 时间片较多的方法(如果火焰图功能未启用,需要在作业的 高级参数 选项中,加入 rest.flamegraph.enabled: true 参数,并重新发布作业版本,才可使用火焰图绘制功能):

如果未开启火焰图功能或者使用1.11等旧版本的 Flink,则可以多次查看 Flink UI 中 TaskManager 各线程的 Thread Dump 信息,寻找繁忙算子的调用频率较高的方法:

如果以上方法均未能解决问题,可以通过 工单 等方式联系我们的技术人员以协助定位。

赞 (0)
上一篇 4天前
下一篇 4天前