JVM参数 - JMX监控Tomcat运行状况
JVM参数 - JMX监控Tomcat运行状况
参考文献:
https://www.cnblogs.com/yangpeng007/p/7246829.html
M监控参数:
-Dcom.sun.management.jmxremote.port 远程主机端口号的
-Dcom.sun.management.jmxremote.ssl=false 是否使用SSL连接
-Dcom.sun.management.jmxremote.authenticate=false 是否开启远程服务权限
-Djava.rmi.server.hostname 远程主机名,使用IP地址
监控Tomcat:
如果为tomcat容器需要进行监控,那么,在tomcat下的catalina.sh下配置如下的参数,然后,这样就可以让jvisualvm该工具远程查看对应的JVM虚拟机当前的情况。
-Djava.rmi.server.hostname=192.168.14.171 //tomcat所在服务器的IP地址
-Dcom.sun.management.jmxremote //设置JVM允许远程jmx进行调用查看
-Dcom.sun.management.jmxremote.port=9500 //设置JVM调用查看的端口为9500
-Dcom.sun.management.jmxremote.ssl=false //设置JVM远程不能使用SSL方式进行调用
-Dcom.sun.management.jmxremote.authenticate=false //设置JVM查看不需要权限
使用JConsole监控Tomcat运行状态
linux系统
修改catalina.sh文件,
在:# ----- Execute The Requested Command -----行的上面添加:
#如果是Tomcat启动
if [ $1 = start ] ; then
# 设置jmx 是否通过ssl 连接
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.ssl=false"
# 设置rmi 远程连接ip 地址
JAVA_OPTS="$JAVA_OPTS -Djava.rmi.server.hostname=192.168.14.171"
# 设置jmx 远程连接端口号
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.port=7500"
# 设置jmx 远程连接是否需要用户认证,即用户名和密码
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.authenticate=true"
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.pwd.file=/opt/jdk1.8.0_73/jre/lib/management/jmxremote.password"
fi
Windows系统
修改catalina.bat文件:
set JAVA_OPTS=-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9001
-Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
打开JConsole:
位置:D:\Program Files\Java\Jdk8\jdk1.8.0_66\bin\jconsole.exe
监控效果: