首页 > 代码库 > jvisualvm远程监控tomcat

jvisualvm远程监控tomcat

1、在 $CATALINA_HOME/bin/startup.sh 倒数第二行(也就是exec "$PRGDIR"/"$EXECUTABLE" start "$@"一行上边)加上如下内容:

export CATALINA_OPTS="$CATALINA_OPTS-Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=192.168.1.130 -Dcom.sun.management.jmxremote.port=7003 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=true -Dcom.sun.management.jmxremote.password.file=../conf/jmxremote.password -Dcom.sun.management.jmxremote.access.file=../conf/jmxremote.access"

各个参数的说明如下:

-Dcom.sun.management.jmxremote 启用JMX远程监控-Djava.rmi.server.hostname=192.168.1.130  这是连接你的tomcat服务器地址-Dcom.sun.management.jmxremote.port=7003  jmx连接端口-Dcom.sun.management.jmxremote.ssl=false  是否ssl加密-Dcom.sun.management.jmxremote.authenticate=true  远程连接需要密码认证-Dcom.sun.management.jmxremote.password.file=../conf/jmxremote.password  指定连接的用户名和密码配置文件-Dcom.sun.management.jmxremote.access.file=../conf/jmxremote.access  指定连接的用户所拥有权限的配置文件

2、在$CATALINA_HOME/lib/jmxremote.access里添加可以连接监控的用户名以及权限:

monitorRole readonlycontrolRole readwrite

3、在$CATALINA_HOME/lib/jmxremote.password 里添加可以连接监控的用户名以及密码,用户的权限在jmxremote.access里以及配置了:

monitorRole  111111controlRole   222222

4、修改jmxremote.access和jmxremote.password的权限:

sudo chmod 600 jmx*

5、重启tomcat就可以了

6、在本地的$JAVA_HOME/bin下双击jvisualvm.exe打开如下图:

7、在远程上右击,添加主机,输入服务器的ip:

8、在远程主机上右击,添加JMX连接,我的端口号是7003,确定:

9、这是会提示输入用户名和密码,也就是你在jmxremote.password里设置的用户名和密码:

10、输入正确的用户名和密码后,链接进去打开连接将会看到如下画面:

这时就可以查看服务器的资源情况、以及tomcat的线程情况等。