23232323 发表于 2016-10-18 08:43:07

zabbix监控Tomcat

一 zabbix_server添加对Java的支持(1)zabbix添加对java的支持:zabbix_server编译时添加 –enable-java
1
# ./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
# 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
# cd /usr/local/zabbix/sbin/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
# ./startup.sh




重启zabbix_server:

1
# service zabbix_server restart




二 配置zabbix客户端的Tomcat(1)给待监控的tomcat添加catalina-jmx-remote.jar:
1
2
3
4
# wget http://archive.apache.org/dist/tomcat/tomcat-7/v7.0.70/bin/extras/catalina-jmx-remote.jar

# mv /tmp/catalina-jmx-remote.jar
/usr/local/apache-tomcat-h5/lib




(2)修改该tomcat客户端的catalina.sh文件:

1
# 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
# /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
# 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)最后的效果如下:



yoyo0762 发表于 2016-10-18 09:28:18

楼主模板呢
页: [1]
查看完整版本: zabbix监控Tomcat