`
lp895876294
  • 浏览: 279738 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

JMX监控centos下的tomcat

 
阅读更多

 通过JMX远程监控tomcat的堆内存 、线程、CPU等信息,便于并发参数调试。

环境:

        Tomcat部署容器:Centos

        Tomcat版本:7.0

        JDK版本:1.7-x64

  • Tomcat配置:

        1.将catalina-jmx-remote.jar放到tomcat目录的lib文件夹下。

        2.在conf/server.xml中配置jmx远程监听接口,通过属性rmiRegistryPortPlatform和rmiServerPortPlatform配置JMX远程监控端口值。

<Listener className="org.apache.catalina.mbeans.JmxRemoteLifecycleListener"
           rmiRegistryPortPlatform="8999" rmiServerPortPlatform="8999"/>

         3.修改bin/catalina.sh,添加jmx远程监控参数:

#add jmx monitor param
CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=172.16.230.106 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.password.file=/apache-tomcat-7.0.57-x64-8084-system/conf/jmxremote.password -Dcom.sun.management.jmxremote.access.file=/apache-tomcat-7.0.57-x64-8084-system/conf/jmxremote.access -Dcom.sun.management.jmxremote.authenticate=true"

        注:java.rmi.server.hostname:tomcat所在机器的IP地址;com.sun.management.jmxremote.ssl:禁用ssl,开启后肯能会出现关闭tomcat后,jmx端口没有关闭的问题;com.sun.management.jmxremote.password.file:连接JMX的用户名和密码,用空格分隔;-Dcom.sun.management.jmxremote.access.file:连接JMX的用户名和角色,用空格分隔;Dcom.sun.management.jmxremote.authenticate:连接JMX时,是否需要进行用户名和密码认证。

   TOMCAT和JAVA虚拟机相关的参数都可以通过CATALINA_OPTS变量进行配置,例如:

# modify java runtime param
CATALINA_OPTS="$CATALINA_OPTS -server -Xms2048m -Xmx2048m -XX:PermSize=256m -XX:MaxPermSize=256m"

   在centos中启动tomcat之后,可以通过查询进程看到tomcat的启动参数信息。

 

  • 客户端连接

   配置好JAVA之后,直接在命令行中输入jconsole,打开jconsole监控窗口,在监控窗口中输入JMX的监听IP+端口,以及用户名和密码。打开jconsole后,可以看到相关的运行参数信息。

 

 

注:centos7中放开端口限制

firewall-cmd --zone=public --add-port=8999/tcp --permanent
firewall-cmd --reload

  

参考地址:

   https://tomcat.apache.org/tomcat-7.0-doc/monitoring.html

   https://tomcat.apache.org/tomcat-7.0-doc/config/listeners.html

 

  • 大小: 197.5 KB
  • 大小: 251.7 KB
  • 大小: 459.9 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics