Linux配置tomcat通过Jconsole远程监控(JMX)
1、修改tomcat的bin目录下catalina.sh ,如果是windows则是catalina.bat在这个位置添加# ----- Execute The Requested Command -----------------------------------------
大约在240行的样子
添加如下内容
CATALINA_OPTS="$CATALINA_OPTS
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9999
-Dcom.sun.management.jmxremote.authenticate=true
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.access.file=/usr/local/jdk/jre/lib/management/jmxremote.access
-Dcom.sun.management.jmxremote.pwd.file=/usr/local/jdk/jre/lib/management/jmxremote.password"
注:其实这里如果要是内网临时看下,不配置用户名、密码也是可以的,把-Dcom.sun.management.jmxremote.authenticate=false
2、修改权限文件
打开/usr/local/jdk/jre/lib/management/jmxremote.access,然后到最后,取消如下注释
monitorRole readonly
controlRole readwrite \
create javax.management.monitor.*,javax.management.timer.* \
unregister
如果同级目录下不存在jmxremote.password 文件,可以将jmxremote.password.template文件改名jmxremote.password
最后配置用户名、密码
monitorRole QEDcontrolRole QED
然后把jmxremote.password、jmxremote.access文件的权限为600
3、配置完成,重启tomcat
重启tomcat后,要检查下,本地是不是启动了配置的端口
# ss -ltn |grep 9999
或
# netstat -ntpl |grep 9999
如果端口存放,说明启动正常4、利用JDK自带的jconsole插件进行连接测试(注,需要安装jdk,只安装jre不行)
到安装的bin目录下,找到jconsole.exe,然后启动运行。
Jconsole是JDK自带的监控工具。它用于连接正在运行的本地或者远程的JVM,对运行在java应用程序的资源消耗和性能进行监控,并画出大量的图表,提供强大的可视化界面。而且本身占用的服务器内存很小,甚至可以说几乎不消耗,不失为一款好工具。
注:java下载地址https://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-windows-x64.exe?AuthParam=1496806400_a55d57d83ddbbfb73e00718064ff41de
启动之后,在远程进程上,输入服务器IP:端口以及用户名、密码,即可登陆至此,配置完成,可通过Jconsole远程监控tomcat(JMX)
参考:
https://docs.oracle.com/javase/6/docs/technotes/guides/management/jconsole.html
https://tomcat.apache.org/tomcat-6.0-doc/monitoring.html
评论