如何通过JMX远程连接Flink?

时间:2016-04-28 10:47:16

标签: jmx apache-flink

对于我即将到来的学士论文,我想开发一个工具,从Apache Flink收集系统和应用程序数据,并将这些数据以某种“事件”发送到另一个系统。此工具将安装在Flink作业和任务管理器节点上。除了像dstat这样的linux系统实用程序的数据,我想收集JMX数据。

我的问题是,我无法弄清楚如何通过使用端口到Flinks jobmanager通过远程JMX连接进行连接。虽然收集器将在同一台机器上,但我真的试图避免使用--javaagent来访问Flink的JVM的JMX数据。

另一个问题是,我有一个基于https://github.com/apache/flink/tree/master/flink-contrib/docker-flink的本地docker设置并更新到flink-1.0.2,我无法通过jconsole连接,因为我不知道如何“打开”一个JMX远程端口为工作和任务管理员。

有没有办法实现这个目标?

提前致谢,任何想法都非常赞赏。

1 个答案:

答案 0 :(得分:6)

解决!

我需要添加env.java.opts: -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false

在flink-conf.yaml。

不可以通过jconsole连接jobmanager。