一 zabbix_server添加对Java的支持
(1)zabbix添加对java的支持:
zabbix_server编译时添加 –enable-java
1
|
[root@prx02 zabbix-3.0.3]
|
(2)配置zabbix_server.conf:
1
|
[root@localhost zabbix_java]
|
修改以下几项:
1
2
3
|
JavaGateway=127.0.0.1
JavaGatewayPort=10052
StartJavaPollers=5
|
(3)启动zabbix_java:
1
2
3
|
[root@localhost zabbix_java]
[root@localhost zabbix_java]
|
启动这几项:
1
2
3
4
|
LISTEN_IP=”0.0.0.0″
LISTEN_PORT=10052
PID_FILE=”/tmp/zabbix_java.pid”
START_POLLERS=5
|
1
|
[root@localhost zabbix_java]
|
重启zabbix_server:
1
|
[root@localhost zabbix_java]
|
二 配置zabbix客户端的Tomcat
(1)给待监控的tomcat添加catalina-jmx-remote.jar:
1
2
3
4
|
[root@localhost tmp]
[root@sevA lib]
/usr/local/apache-tomcat-h5/lib
|
(2)修改该tomcat客户端的catalina.sh文件:
1
|
[root@sevA apache-tomcat-h5]
|
在文件最上面添加:
1
2
3
4
5
6
|
export CATALINA_OPTS=”$CATALINA_OPTS
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=12000
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false
-Djava.rmi.server.hostname=192.168.1.232″
|
注:
(3)启动tomcat:
三 在zabbix_server上测试获取数据
(1)下载cmdline-jmxclient-0.10.3.jar :
地址:http://pan.baidu.com/s/1nvGWeO5
(2)在zabbix_server使用cmdline-jmxclient获取数据:
输出如下:
1
2
3
4
5
|
07/06/2016 14:03:21 +0800 org.archive.jmx.Client NonHeapMemoryUsage:
committed: 52559872
init: 24576000
max: 136314880
used: 51997824
|
四 zabbix的web界面配置
(1)主机增加JMX接口:

(2)Link TOMCAT模板:
切换到templates选项卡,选择zabbix自带的tomcat/JMX模板(PS:如果tomcat的端口已经更改过的话,需要重新复制原来的模板并修改其中的key和端口号)

问:如何监控同一主机上的多个Tomcat实例?
1
|
只需要完全复制一套tomcat自带的tomcat模板,然后重命名键和键值即可(PS:因为zabbix中不允许两个一样的Key存在),主要修改几个跟你应用对应的端口号即可
|
(3)最后的效果如下:

本文转自 pangfc 51CTO博客,原文链接:http://blog.51cto.com/983836259/1862590,如需转载请自行联系原作者