JConsole的远程连接

JConsole是基于JMX的可视化监视、管理工具。可以很方便的监视本地及远程服务器的java进程的内存使用情况。下面介绍如何连接远程服务器,进行远程java程序的监控。

1、使用hostname -i 查看远程主机的hostname。
如果显示为 127.0.0.1,需要进行修改。
vim /etc/hosts
修改127.0.0.0.1 为服务器真实的外网ip。

2、被监控的程序运行时给虚拟机添加一些运行的参数
无需认证的远程监控配置
-Dcom.sun.management.jmxremote.port=60001   //监控的端口号
-Dcom.sun.management.jmxremote.authenticate=false   //关闭认证
-Dcom.sun.management.jmxremote.ssl=false
-Djava.rmi.server.hostname=192.168.1.50    
其中-Djava.rmi.server.hostname为上一步修改后主机的外网真实ip(可以使用hostname -i查看),其中监控的端口号可以自己定义,在远程连接的时候会用到
设置需要密码的远程登陆配置
-Dcom.sun.management.jmxremote.port=60001 
-Dcom.sun.management.jmxremote.authenticate=true 
-Dcom.sun.management.jmxremote.ssl=false 
-Dcom.sun.management.jmxremote.pwd.file= {jmxremote.password}Path 
-Djava.rmi.server.hostname=192.168.1.50  
在/usr/lib/jvm/java-8-oracle/jre/lib/management下的jmxremote.access、jmxremote.password。
jmxremote.access中存储用户名和对应的权限关系。
jmxremote.password中存储用户名密码。
注:在jmxremote.password和jmxremote.access的权限为600,所有者rw权限。

3、远程连接
选择远程进程
hostname 即为 服务器外网真实ip,端口号为刚才设置的端口号(注意不要冲突),用户名即为主机用户名,密码如果采用无需认证链接则不需要,否则,填入自己设置的密码。点击连接,即可。(没认证会显示不安全,直接连接即可)

JConsole的远程连接_第1张图片

你可能感兴趣的:(java,Java,Linux)