概述
因為tomcat是部署在linux環境上,所以以下都是在linux環境做測試。
在一個監控系統只有一個zabbix-java-gateway,可以部署在zabbix-sever端也可以部署在其他機器上,需要和zabbix-server網絡可達。Zabbix-Javagateway就相當於一個代理,它負責收集客戶端tomcat數據,zabbix-server只要向zabbix-java-gateway取數據添加到資料庫即可。
一、tomcat配置
1、部署zabbix_agent
rpm -ivh zabbix-agent-4.2.6-1.el7.x86_64.rpm
2、修改zabbix_agent配置文件
vim /etc/zabbix/zabbix_agentd.conf=======================================================================PidFile=/var/run/zabbix/zabbix_agentd.pidLogFile=/var/log/zabbix/zabbix_agentd.log #錯誤日誌LogFileSize=0ListenPort=10050 #啟動監聽埠StartAgents=3 #被動模式下選擇,主動模式則為0ListenIP=0.0.0.0 #監聽所有IPServer=xx.xxx #被動模式下必填,將zabbix-server端的ip填入Hostname=ZCAPZC #本機的hostname,此值必須與zabbix的網頁上創建的主機名一致Include=/etc/zabbix/zabbix_agentd.d/*.conf=======================================================================
3、啟動zabbix_agent
systemctl start zabbix-agentsystemctl enable zabbix-agentsystemctl status zabbix-agent
4、添加catalina-jmx-remote.jar
下載地址:http://archive.apache.org/dist/tomcat/tomcat-8/
找到對應tomcat版本的catalina-jmx-remote.jar,catalina-jmx-remote.jar文件在tomcat版本的/bin/extras/目錄下,然後放到tomcat/lib下
wget http://archive.apache.org/dist/tomcat/tomcat-8/v8.5.35/bin/extras/catalina-jmx-remote.jarchmod u+x catalina-jmx-remote.jar
5、添加tomact中JMX的參數
打開tomcat/bin/catalina.sh文件,在#!/bin/sh下面添加如下,注意hostname填本機的ip地址。
CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.port=12345 -Djava.rmi.server.hostname=1xx.xx.xx.xx"
6、重啟tomcat
./startup.sh
二、配置zabbix服務端
1、安裝zabbix-java-gateway
zabbix-java-gateway默認工作在10052埠(zabbix-server默認工作在10051埠,zabbix-agent默認工作在10050埠)
#安裝yum -y install zabbix-java-gateway#啟動systemctl start zabbix-java-gateway#開機啟動systemctl enable zabbix-java-gateway
2、配置zabbix_java_gateway.conf和zabbix_server.conf
重點:Java-gateway配置文件的START_POLLERS參數 >= zabbix_server配置文件的StartJavaPollers參數,建議一樣,都設為5。
2.1、配置zabbix_java_gateway.cnf
# vim /etc/zabbix/zabbix_java_gateway.conf==================================================================================================PID_FILE="/var/run/zabbix/zabbix_java.pid"#LISTEN_IP="xx.xx.xxx" #本機ip地址,如果和server安裝在相同的位置可以不修改LISTEN_PORT=10052 #埠可以修改為其他,在server段需要相同的配置START_POLLERS=5 #設置啟動多個線程,這裡和server段相同TIMEOUT=3 #超時時間==================================================================================================
2.2、配置zabbix_server.conf:
讓zabbix-server服務能連接到zabbix-java-gateway服務
# vim /etc/zabbix/zabbix_server.conf==================================================================================================JavaGateway=xx.xx.xx.xx #如果是本機安裝直接使用127.0.0.1JavaGatewayPort=10052 #埠號和javagateway要對應StartJavaPollers=5 #線程數和客戶端配置對應 不能少於客戶端數目 StartJavaPollers<=START_POLLERS==================================================================================================
3、重啟zabbix-server和zabbix-java-gateway服務
systemctl restart zabbix-serversystemctl restart zabbix-java-gateway
三、配置web介面
Zabbix-server通過JavaPollers進程調用zabbix-java-gateway獲得tomcat數據,而zabbix-java-gateway就是通過這裡配置的tomcat地址和埠,連接到tomcat從而獲取到數據。
1、配置-->主機-->創建主機-->JMX添加-->輸入IP(tomcat伺服器IP)和埠(12345)
2、配置-->主機-->tomcat伺服器-->模版-->Template App Apache Tomcat JMX、Template App Generic Java JMX-->添加-->更新
3、配置成功顯示
找到主機,如果JMX顯示顏色,則配置成功。
4、查看圖形
監測-圖形-選擇主機和圖形
到這裡就完成了zabbix對tomcat的監控了,至於展示部分推薦用grafana來做展示,但是grafana沒有對應的模板,所以還是自己做一下監控模板好點。。後面再分享下~