运维监控系统PIGOSS BSM 如何使用JMX实现对中间件Tomca的监控?

早期的PIGOSS BSM对Tomcat的监控,采用的是HTTP方式,具体实现方式是监控Tomcat的管理页面。可以监控Tomcat的JVM内存使用情况和连接情况,对于一般客户来说,基本足够。而使用JMX来监控Java中间件,PIGOSS也有很多成功案例,如监控Resin、Weblogic、JBOSS等,所以使用JMX监控Tomcat也是完全可行的。

正好某客户使用了大量的Tomcat做为Web发布中间件,而客户的Tomcat经常因为访问量过大导致响应迟钝甚至down掉,因此HTTP方式监控Tomcat的几个指标已经满足了要求了。那如何使用JMX来监控Tomcat呢?

激活Tomcat的JMX远程配置

通过JMX远程监控Tomcat,首先需要激活Tomcat的JMX远程配置:

  1. 修改Tomcat相应脚本  bin/setenv.sh(注意脚本中的参数在一行,不要换行)
[root@app_tomcat apache-tomcat-8.5.71]# pwd
/root/apache-tomcat-8.5.71
[root@app_tomcat apache-tomcat-8.5.71]# cat bin/setenv.sh 

-CATALINA_OPTS="-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"

  2. 配置权限文件,比如我们使用JVM用户:monitorRole; 权限为:readonly

[root@app_tomcat apache-tomcat-8.5.71]# cat conf/jmxremote.access

monitorRole   readonly
controlRole   readwrite \
              create javax.management.monitor.*,javax.management.timer.* \
              unregister

  3. 配置密码文件(JVM用户名:monitorRole  ; 密码为:xie )

[root@app_tomcat apache-tomcat-8.5.71]# cat conf/jmxremote.password

monitorRole  xie
controlRole   xie

 4. 修改权限

chmod 600 -R  ./conf/jmxremote.*
chmod 755 -R  ./bin/*

 5. 重启Tomcat即可

 6. 检查Tomcat端口是否正常,也可以看./log是否有错

netstat -anlp | grep 8080     #检查Tomcat端口
netstat -anlp | grep 8999     #检查JVM端口

JVM连接测试

找一台安装了JDK的Windows主机,直接执行jconsole就可以远程看到指定Tomcat的很多信息

 使用PIGOSS BSM对Tomcat进行监控

经过调研,并结合Jconsole的监控结果,PIGOSS BSM可以对Tomcat进行监控,并采集下面指标

监控效果图

实际监控效果配置简单,监控指标很丰富。客户上线后,表示非常赞赏。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值