一、工作原理
Tomcat接入zabbix監控需要藉助JMX(zabbix-java-gateway)實現,監控實現流程:zaibbix Server-->Java gateway-->JMX counter
二、接入zabbix配置
zabbix-server端配置
安裝JMX
zabbix-java-gateway可以安裝在任何一臺服務器上,本次安裝在server端。
# yum -y install zabbix-java-gateway
配置Java-gateway文件
# vim /etc/zabbix/zabbix_java_gateway.conf
修改爲如下配置:
LISTEN_IP="0.0.0.0" ## 監聽地址,默認配置
LISTEN_PORT=10052 ## 監聽端口,默認配置
START_POLLERS=5 ## 開啓的工作線程數
啓動zabbix-java-gateway服務
# service zabbix-java-gateway start
# service zabbix-java-gateway status
修改zabbix_server配置文件
# vim /etc/zabbix/zabbix_server.conf
修改以下參數:
JavaGateway=192.168.61.128 # 安裝JavaGateway的服務器的IP地址
JavaGatewayPort=10052 # JavaGateway的服務端口,默認配置
StartJavaPollers=5 # 從javaGateway採集數據的進程數,小於等於Java-gateway文件配置的線程數
重啓zabbix-server服務
# service zabbix-server restart
zabbix-agent端配置
配置catalina.sh文件
# vim /usr/local/apache-tomcat/bin/catalina.sh
開頭添加以下內容:
CATALINA_OPTS="$CATALINA_OPTS
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=12345 # JMX端口,默認12345即可
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
-Djava.rmi.server.hostname=192.168.61.128" # 本機的IP地址
重啓Tomcat服務
# sh /usr/local/apache-tomcat/bin/catalina.sh stop
# sh /usr/local/apache-tomcat/bin/catalina.sh start
測試
測試需要安裝cmdline-jmxclient-0.10.3.jar,執行命令後如果有返回數據,說明設置正確。
# wget http://crawler.archive.org/cmdline-jmxclient/cmdline-jmxclient-0.10.3.jar
# java -jar /tmp/cmdline-jmxclient-0.10.3.jar - 192.168.61.128:12345 java.lang:type=Memory NonHeapMemoryUsage
三、zabbix-GUI端設置
新建主機和模板,幾分鐘後看JMX狀態是否爲綠色。