使用jdk自带的 jconsole 进行远程连接

先放出参考连接文章

https://www.linuxidc.com/Linux/2015-02/113415.htm

https://www.cnblogs.com/think-in-java/p/6138439.html

其实要做的东西很简单

1.首先到远程的tomcat的 catalina.sh 文件中加入


JAVA_OPTS="$JAVA_OPTS -Djava.rmi.server.hostname=192.168.202.121 -Dcom.sun.management.jmxremote"
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.port=12345"
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.authenticate=true"
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.ssl=false"
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.pwd.file=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.101-3.b13.el7_2.x86_64/jre/lib/management/jmxremote.password"


其中 192.168.202.121 为远程服务器的ip地址

pwd.file 指向jdk/jre/lib/management/ 的 jmxremote.password 文件

然后到 jdk/jre/lib/management 下面

然后通过  jmxremote.password.template  复制一份 jmxremote.password 文件出来

再把这个路径下的  两个文件权限修改成600

chmod 600 jmxremote.password jmxremote.access


编辑  jmxremote.password 文件,把  
monitorRole  QED
 controlRole   R&D

前面两行的注释去掉,也就是去掉 # 号
controlRole  就是账号, R&D 就是密码
然后启动tomcat,即可


如果你连接失败的话,有可能是两个原因

1.防火墙没有关闭,端口访问不到,确定一下这个

2.在linux输入命令 hostname -i 看是不是访问服务器的ip地址,如果不是

需要到 /etc/hosts 下面把这行映射配上

你的服务器ip localhost

然后再测试应该就行了


最后再说一下,由于配置了这个东西,所以使用 shutdowt.sh的时候将会无法停止tomcat

解决方法有两个

1.通过 ps -ef|grep tomcat 查找进程,然后kill -9 这个进程

2.在catalina.sh 中再加入

CATALINA_PID=../conf/tomcat.pid

指定tomcat.pid 的位置,然后shutdown的时候就可以停止tomcat了

不过还是会报 12345被占用的错,但是似乎没啥影响,,这个待验证,不过我觉得既然有这个功能,应该就不会有什么问题吧

主要是配置了jconsole这个东西以后才有的一个问题

http://blog.sina.com.cn/s/blog_4f925fc30100tx1d.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值