使用VisualVM,我可以看到有两种连接远程主机的类型。
jstatd
JMX
因此,我尝试使用JMX,我遵循了许多教程,但到目前为止还没有运气。
当前,有我的桌面和一个运行Java服务器应用程序的Linux机器。我正在尝试在桌面上设置VisualVM客户端,以查看在Linux框中运行的Java应用程序。
我在start.sh脚本上为Linux上的Java应用程序添加了以下JAVA_OPTS脚本。
JMX_PORT="-Dcom.sun.management.jmxremote.port=33333" <-- allowed on firewall
JMX_SSL="-Dcom.sun.management.jmxremote.ssl=false"
JMX_AUTH="-Dcom.sun.management.jmxremote.authenticate=false"
JMX_IP="-Djava.rmi.server.hostname=xx.xx.xx.xx" <-- where linux box NAT ip.
我假设在Linux上的Java应用程序已成功启动,并添加了start.sh的jmx选项,因为没有错误或警告,我认为。
当我尝试添加JMX连接时,它说它无法连接。
我检查了33333是否被阻止,不是,我可以使用台式机上的telnet通过端口连接到该IP。
我应该为VisualVM打开任何其他端口吗?
要使用JMX,还需要执行其他任何设置,例如RMI Registry Server或创建jstatd策略文件并启动jstat守护程序吗?我以为它仅用于jstatd连接,所以我没有继续该教程。
我没有其他线索可以解决此问题,所以最终使用了ssh隧道。
现在,使用VisualVm上的添加新的jmx连接成功添加了远程主机。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句