jmx远程连接阿里云服务器的问题

Java框架

浏览数:417

2019-7-4

AD:资源代下载服务

最近在学习jvm监控,想尝试连接阿里云的jvm时出现一个问题:无法使用 service:jmx:rmi…
因为是springboot项目,启动的时候使用java -Djava.rmi.server.hostname=xx.xx.xx.xx -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8061 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -jar xxx.jar
用jvisualvm连接8061端口的时候问题报这个问题:无法使用 service:jmx:rmi
从网上找到解决办法:关闭防火墙。但是阿里云的防火墙是默认关闭的啊……
原因是:除了JMX server指定的监听端口号外,JMXserver还会监听一到两个随机端口号,可以通过命grep 来查看当前java进程需要监听的随机端口号
于是用netstat -ntpl查看,发现与8061端口相同的PID下,有两个端口号是不认识的

于是把这两个端口在阿里云服务器的安全组里,配置成开放

再尝试连接,就成功连上了

值得注意的是:下次启动jar包的时候,又会是另外两个随机的端口号,需要在安全组里修改开放的端口号

参考资料:
https://www.cnblogs.com/gossip/p/6141941.html

作者:hhymyi