Tag: jmxtrans

如何从外部访问docker中的JMX接口?

我正在试图远程监视docker中运行的JVM。 configuration如下所示: 机器1:在Ubuntu机器上的docker上运行一个JVM(在我的情况下,运行kafka) 本机的IP为10.0.1.201; 在Docker中运行的应用程序在172.17.0.85。 机器2:运行JMX监视 请注意,当我从机器2运行JMX监视时,它会失败,出现以下错误(注意:运行jconsole,jvisualvm,jmxtrans和node-jmx / npm:jmx时会发生同样的错误): 对于每个JMX监视工具,失败时的堆栈跟踪如下所示: java.rmi.ConnectException: Connection refused to host: 172.17.0.85; nested exception is java.net.ConnectException: Operation timed out at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:619) (followed by a large stack trace) 现在有趣的部分是当我运行相同的工具(jconsole,jvisualvm,jmxtrans和node-jmx / npm:jmx)在运行docker(从上面的机器1)的同一台机器上JMX监视工作正常。 我认为这表明我的JMX端口是活动的并且正常工作,但是当我从机器2远程执行JMX监控时,它看起来像JMX工具不能识别内部docker IP(172.17.0.85) 以下是JMX监视工作的计算机1上的相关(我认为)networkingconfiguration元素(请注意docker ip,172.17.42.1): docker0 Link encap:Ethernet HWaddr … inet addr:172.17.42.1 Bcast:0.0.0.0 Mask:255.255.0.0 inet6 addr:… Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 […]