设为首页 收藏本站
查看: 1347|回复: 0

[经验分享] zabbix通过jmx监控tomcat

[复制链接]

尚未签到

发表于 2017-10-20 10:02:25 | 显示全部楼层 |阅读模式
通过jmx监控tomcat
一、服务端配置
1、安装jdk(版本1.8.0_91)
[iyunv@iZ25kscmkn3Z ~]# rpm -ivh jdk-8u91-linux-x64.rpm
[iyunv@iZ25kscmkn3Z ~]# vi /etc/profile
最后添加:
JAVA_HOME=/usr/java/jdk1.8.0_91
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH
[iyunv@iZ25kscmkn3Z ~]# source /etc/profile
安装与配置比较简单,过程省略。执行java -version命令,出现类似界面表示成功。
[iyunv@iZ25kscmkn3Z ~]# java -version
java version "1.8.0_91"
Java(TM) SE Runtime Environment (build 1.8.0_91-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed mode)
2、安装Zabbix-Java-gateway
[iyunv@iZ25kscmkn3Z ~]# cd /usr/src/zabbix-3.0.0/
[iyunv@iZ25kscmkn3Z zabbix-3.0.0]# ./configure --enable-java -prefix=/usr/local/zabbix/zabbix_java
[iyunv@iZ25kscmkn3Z zabbix-3.0.0]# make && make install

[iyunv@iZ25kscmkn3Z ~]# cd /usr/local/zabbix/zabbix_java/sbin/zabbix_java/
[iyunv@iZ25kscmkn3Z zabbix_java]# ls
bin  lib  settings.sh  shutdown.sh  startup.sh
3、修改Java-gateway的配置文件并启动它
配置文件路径为/data/zabbix/zabbix_java/sbin/zabbix_java/settings.sh
启用以下参数:
[iyunv@iZ25kscmkn3Z zabbix_java]# vi settings.sh
LISTEN_IP="0.0.0.0"
LISTEN_PORT=10052
START_POLLERS=5
4、修改zabbix_server的配置文件并重启
[iyunv@iZ25kscmkn3Z ~]# vi /usr/local/zabbix/etc/zabbix_server.conf
JavaGateway=127.0.0.1
JavaGatewayPort=10052
StartJavaPollers=5
启动zabbix_java
[iyunv@iZ25kscmkn3Z ~]# cd /usr/local/zabbix/zabbix_java/sbin/zabbix_java/
[iyunv@iZ25kscmkn3Z zabbix_java]# ./startup.sh
重启zabbix_server
# /etc/init.d/zabbix_server restart
二、Tomcat服务端
1、给tomcat启动脚本添加参数,开启JMX
[iyunv@qxg-image ~]# vi /usr/local/site/bin/catalina.sh
添加如下内容:
CATALINA_OPTS="${CATALINA_OPTS} -Djava.rmi.server.hostname=10.44.21.14"  ----备注(10.44.21.14是客户端ip地址)
CATALINA_OPTS="${CATALINA_OPTS} -Djavax.management.builder.initial="
CATALINA_OPTS="${CATALINA_OPTS} -Dcom.sun.management.jmxremote=true"
#CATALINA_OPTS="${CATALINA_OPTS} -Dcom.sun.management.jmxremote.port=12345"#端口配置不用了
CATALINA_OPTS="${CATALINA_OPTS} -Dcom.sun.management.jmxremote.ssl=false"
CATALINA_OPTS="${CATALINA_OPTS} -Dcom.sun.management.jmxremote.authenticate=false"  
[iyunv@qxg-image site]# vi conf/server.xml(tomcat8.5版本不要在conf/server.xml增加以下内容,tomcat会起不来)
省略...  
<Server port="8005" shutdown="SHUTDOWN">  
     <Listener className="org.apache.catalina.startup.VersionLoggerListener" />  
     <!-- Security listener. Documentation at /docs/config/listeners.html  
     <Listener className="org.apache.catalina.security.SecurityListener" />  
     -->  
     <!--APR library loader. Documentation at /docs/apr.html -->  
     <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />  
     <!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html -->  
     <Listener className="org.apache.catalina.core.JasperListener" />  
     <!-- Prevent memory leaks due to use of particular java/javax APIs-->  
     <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />  
     <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />  
     <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />  
     <Listener className="org.apache.catalina.mbeans.JmxRemoteLifecycleListener"  
              rmiRegistryPortPlatform="10052" rmiServerPortPlatform="10053" />     ----默认添加最后两行
省略..

2、下载catalina-jmx-remote.jar
wget  http://archive.apache.org/dist/t ... lina-jmx-remote.jar  #我的tomcat版本是7.0.56
将下载后后的jar包放到被监控的tomcat实例的lib目录下。
3、重启tomcat
[iyunv@qxg-image ~]# /usr/local/site/bin/shutdown.sh
[iyunv@qxg-image ~]# /usr/local/site/bin/startup.sh
4、测试是否可以获取数据
下载cmdline-jmxclient-0.10.3.jar工具
在服务器端进行测试
[iyunv@iZ25kscmkn3Z ~]# java -jar cmdline-jmxclient-0.10.3.jar -  10.44.21.143:10052 java.lang:type=Memory NonHeapMemoryUsage
08/29/2016 17:40:15 +0800 org.archive.jmx.Client NonHeapMemoryUsage:
committed: 105644032
init: 2555904
max: -1
used: 101895192

问题:
web界面上显示cannot connect to [[192.168.18.20]:10052]: [111] Connection refused  ,192.168.18.20是我一个agent端的ip地址。debug级别已经调整为4,没有看到报错。
  
tomcat8.5只需要在bin/catalina.sh增加,重启tomcat服务
CATALINA_OPTS="-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.port=12345
-Djava.rmi.server.hostname=10.27.242.110"



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-405651-1-1.html 上篇帖子: 源码安装zabbix3.0.4 下篇帖子: zabbix密钥监控-mysql-nginx-php
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表