一 zabbix_server添加对Java的支持
(1)zabbix添加对java的支持:
zabbix_server编译时添加 –enable-java
1
|
[root@prx02 zabbix-3.0.3] # ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2 --enable-java
|
(2)配置zabbix_server.conf:
1
|
[root@localhost zabbix_java] # vim /usr/local/zabbix/etc/zabbix_server.conf
|
修改以下几项:
1
2
3
|
JavaGateway=127.0.0.1 JavaGatewayPort=10052 StartJavaPollers=5 |
(3)启动zabbix_java:
1
2
3
|
[root@localhost zabbix_java] # cd /usr/local/zabbix/sbin/zabbix_java/
[root@localhost zabbix_java] # vim /usr/local/zabbix/sbin/zabbix_java/settings.sh
|
启动这几项:
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] # ./startup.sh
|
重启zabbix_server:
1
|
[root@localhost zabbix_java] # service zabbix_server restart
|
二 配置zabbix客户端的Tomcat
(1)给待监控的tomcat添加catalina-jmx-remote.jar:
1
2
3
4
|
[root@localhost tmp] # wget http://archive.apache.org/dist/tomcat/tomcat-7/v7.0.70/bin/extras/catalina-jmx-remote.jar
[root@sevA lib] # mv /tmp/catalina-jmx-remote.jar
/usr/local/apache-tomcat-h5/lib |
(2)修改该tomcat客户端的catalina.sh文件:
1
|
[root@sevA apache-tomcat-h5] # vim /usr/local/apache-tomcat-h5/bin/catalina.sh
|
在文件最上面添加:
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″ |
注:
-
这里12000端口指的是zabbix_server获取数据的端口,后面配置web界面时需要用到
-
192.168.1.232指的是该tomcat所在的IP地址
(3)启动tomcat:
1
|
[root@sevA bin] # /usr/local/apache-tomcat-h5/bin/startup.sh
|
三 在zabbix_server上测试获取数据
(1)下载cmdline-jmxclient-0.10.3.jar :
地址:http://pan.baidu.com/s/1nvGWeO5
(2)在zabbix_server使用cmdline-jmxclient获取数据:
1
|
[root@localhost zabbix] # java -jar cmdline-jmxclient-0.10.3.jar - 192.168.1.232:12000 java.lang:type=Memory NonHeapMemoryUsage
|
输出如下:
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,如需转载请自行联系原作者