【Flink on k8s】JConsole 远程监控 TaskManager

问题:如何定位 Flink 作业卡在哪里?

首先,配置文件 flink-conf.yaml 添加 Java RMI 远程调度,打开容器的本地 IP 和端口。

env.java.opts: "-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.rmi.port=1099 -Djava.rmi.server.hostname=127.0.0.1"

然后,将节点 Node 的端口 1099 转发到 TaskManager 的 Pod 的 1099

kubectl port-forward flink-taskmanager-5fdb5f69f-whpwg 1099

最后,打开 JConsole,选择远程进程,填写节点 Node 对外开放的 IP

JConsole 界面.png

通过可视化工具 JConsole,可以实时监控 TaskManager 的 JVM 信息。

TaskManager Thread 监控信息.png
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容