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/conf/jmxremote.access里添加可以连接监控的用户名以及权限:
monitorRole readonly controlRole readwrite
3、在$CATALINA_HOME/conf/jmxremote.password 里添加可以连接监控的用户名以及密码,用户的权限在jmxremote.access里以及配置了:
monitorRole 111111 controlRole 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的线程情况等。
来源:https://www.cnblogs.com/leocook/p/jvisualvmandtomcat.html