监控Zabbix使用JMX监控Tomcat
1.在zabix服务端安装java工具(服务器已安装zabbix)
[root@db02 ~]# rpm -ivh
http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-java-gateway-2.4.7-1.el6.x86_64.rpm
[root@db02 ~]# vim /etc/zabbix/zabbix_server.conf
JavaGateway=127.0.0.1
JavaGatewayPort=10055
StartJavaPollers=5
[root@db02 ~]# vim /etc/zabbix/zabbix_java_gateway.conf
LISTEN_IP="0.0.0.0"
LISTEN_PORT=10055
START_POLLERS=5
[root@db02 ~]# /etc/init.d/zabbix-server restart
Shutting down Zabbix server: [ OK ]
Starting Zabbix server: [ OK ]
[root@db02 ~]# /etc/init.d/zabbix-java-gateway restart
Shutting down zabbix java gateway: [ OK ]
Starting zabbix java gateway: [ OK ]
[root@db02 ~]# netstat -antulp | grep 10055
tcp 0 0 :::10055 :::* LISTEN 15958/java
[root@db02 ~]#
2.在tomcat端添加一个端口,供zabbix获取数据
jmxcmd下载地址:
https://sourceforge.net/projects/jmxcmd/files/latest/download?source=typ_redirect
[root@web02 ~]# vim /usr/local/tomcat-7.0.67/bin/catalina.sh --添加以下行,获取tomcat服务器的IP地址
CATALINA_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=本机IP地址"
[root@web02 ~]# vim /usr/local/tomcat-7.0.67Html/conf/server.xml --暴露一个端口给zabbix获取数据
<Listener classname="org.apache.catalina.mbeans.JmxRemoteLifecycleListener" rmiRegistryPortPlatform="9999" rmiServerPortPlatform="9999"/>
[root@web02 ~]# /usr/local/tomcat-7.0.67/bin/shutdown.sh --关闭tomcat服务
[root@web02 ~]# /usr/local/tomcat-7.0.67/bin/startup.sh --启动tomcat服务
[root@web02 ~]# netstat -antulp | grep 9999
tcp 0 0 :::9999 :::* LISTEN 12469/java
[root@web02 ~]# java -jar jmxcmd.jar - localhost:9999 java.lang:type=Memory NonHeapMemoryUsage
04/26/2016 16:21:38 +0800 de.layereight.jmxcmd.Client NonHeapMemoryUsage:
committed: 136183808
init: 134676480
max: 318767104
used: 36691992
[root@web02 ~]#
3.在zabbix中添加分类,项目,键
(1).启用jmx模块
(2).创建分类
一些Zabbix相关教程集合:
ZABBIX 的详细介绍:请点这里
ZABBIX 的下载地址:请点这里