介绍下zabbix监控Tomcat服务;
1. 配置Tomcat Jmx
(1). 编辑catalina.sh,加入如下配置(注意空格)
# vim ${TOMCAT_HOME}/bin/catalina.sh
CATALINA_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.port=12345"
(2). 添加catalina-jmx-remote.jar
添加catalina-jmx-remote.jar到${TOMCAT_HOME}/lib/下.
(3). 启动Tomcat
# sh ${TOMCAT_HOME}/bin/startup.sh
(4). 测试Jmx
# java -jar cmdline-jmxclient-0.10.3.jar - 目标IP:PROT java.lang:type=Memory NonHeapMemoryUsage
2. zabbix server配置
首先我们需要了解一下他们的对应关系,zabbix_server开启java poller, zabbx_java开启JavaGateway,端口为10052,Tomcat JMX开启12345提供性能数据。
数据获取:java poller<-->JavaGateway:10052<-->Tomcat:12345.
数据获取:java poller<-->JavaGateway:10052<-->Tomcat:12345.
(1). Java支持
编译安装zabbix server需要加上--enable-java以支持jmx监控,如果之前的zabbix server没加,那么请重新编译安装, 分享下我的安装参数:
# ./configure --prefix=/usr/local/zabbix-3.0.0/ --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2 --enable-java
(2). 启动zabbix_java
# service zabbix-agent restart
(3). zabbix_server.conf配置
JavaGateway=zabbix server Ip
JavaGatewayPort=10052
StartJavaPollers=5
3. Zabbix图形界面配置
(1). 主机增加JMX接口
进入后台,configuration->hosts->选择你的主机->jmx interface 点击add,输入对应的tomcat ip地址和jmx端口,如下图:
(2). Link TOMCAT模板
切换到templates选项卡,选择zabbix自带的tomcat/JMX模板,如下图: