yywx001 发表于 2018-12-6 13:45:22

用JMX远程监控Tomcat-12943214

  本文使用的tomcat版本为7.0.77。
  要通过JMX远程监控Tomcat,首先需要进行Tomcat的JMX远程配置。
  注意:此配置添加在catalina.bat文件开头的注释行(rem或#)后面即可。
http://images2015.cnblogs.com/blog/669197/201706/669197-20170614150008290-1875647030.png
  不需鉴权的配置:
  先修改Tomcat的启动脚本,windows下为bin/catalina.bat(linux下为catalina.sh),添加以下内容:
set JMX_REMOTE_CONFIG=-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false  
set CATALINA_OPTS=%CATALINA_OPTS% %JMX_REMOTE_CONFIG%
linux为JAVA_OPTS=-Dcom.sun.management.jmxremote.port=8999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false-Dcom.sun.management.jmxremote.port=8999,是jmxremote使用的端口号,可修改。  
-Dcom.sun.management.jmxremote.authenticate=false,表示不需要鉴权,主机+端口号即可监控。
  需要鉴权的配置:
set JMX_REMOTE_CONFIG=-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8999 -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  
set CATALINA_OPTS=%CATALINA_OPTS% %JMX_REMOTE_CONFIG%
复制并修改授权文件
  JAVA_HOME/jre/lib/management下有jmxremote.access和jmxremote.password.template的模板文件,将两个文件复制到CATALINA_BASE/conf目录下
  *重命名jmxremote.password.template文件为jmxremote.password
  *修改CATALINA_BASE/conf/jmxremote.access 添加内容:
  monitorRole readonly
  controlRole readwrite
  *修改CATALINA_BASE/conf/jmxremote.password 添加内容:
  monitorRoleliuke#可自定义
  controlRole   liuke#可自定义
使用jconsole或jvisualvm测试JMX
  运行JAVA_HOME/bin目录下的jconsole或jvisualvm,打开控制台,然后建立连接,填写地址、端口号、用户名、口令即可连接。
http://images2015.cnblogs.com/blog/669197/201706/669197-20170614145711150-1732199341.pnghttp://images2015.cnblogs.com/blog/669197/201706/669197-20170614145734337-1922303780.png
http://images2015.cnblogs.com/blog/669197/201706/669197-20170614145823728-1240838745.png


页: [1]
查看完整版本: 用JMX远程监控Tomcat-12943214