伺服器配置(zabbix_server)
1. 安裝jdk
版本需要1.7以上,我這邊安裝的是1.8的,可以參考我jdk安裝的文章
# 上傳到zabbix_server服務端。安裝(jdk-8u171-linux-x64.rpm)
[[email protected]_0_10_centos src]# rpm -ivh jdk-8u171-linux-x64.rpm
配置檔案如下:
[[email protected]_0_10_centos src]# vi /etc/profile
JAVA_HOME=/usr/java/jdk1.8.0_171-amd64
JAVA_BIN=/usr/java/jdk1.8.0_171-amd64/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME JAVA_BIN CLASSPATH PATH
2、安裝Zabbix-Java-gateway
Zabbix2.0起添加了支援用于監控JMX應用程式的服務程序,稱為“Zabbix-Java-gateway”,它是用java寫的一個程式。安裝gatway,需要Java,Java-devel依賴
安裝yum源:
# 我使用zabbix是3.4.4
[[email protected]_0_10_centos src]# yum -y install http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarc
h.rpm
# 安裝Gateway:3.4.15
[[email protected]_0_10_centos src]# yum install -y java java-devel zabbix-java-gateway
# 檢視版本
[[email protected]_0_10_centos src]# java -version
java version "1.8.0_171"
Java(TM) SE Runtime Environment (build 1.8.0_171-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)
3、修改Java-gateway的配置檔案并啟動它
# 編輯配置檔案
[[email protected]_0_10_centos src]# cat /etc/zabbix/zabbix_java_gateway.conf | grep -v "^#" | grep -v "^$"
LISTEN_IP="0.0.0.0" # 監聽位址
LISTEN_PORT=10052 # 監聽端口
PID_FILE="/var/run/zabbix/zabbix_java.pid"
START_POLLERS=5 # 開啟的工作線程數
TIMEOUT=3
# 啟動服務
[[email protected]_0_10_centos sbin]# /usr/sbin/zabbix_java_gateway
[[email protected]_0_10_centos sbin]# ps -ef | grep zabbix_java_gateway
4、修改zabbix_server的配置檔案并重新開機
# 編輯zabbix_server配置檔案
[[email protected]_0_10_centos sbin]# cat /usr/local/etc/zabbix_server.conf | grep -v "^$" | grep -v "^#" | grep Java
JavaGateway=106.53.73.200 # JavaGateway的伺服器IP位址(server的位址)
JavaGatewayPort=10052
StartJavaPollers=5
# 重新開機server服務
[[email protected]_0_10_centos sbin]# killall zabbix_server
[[email protected]_0_10_centos sbin]ss -tulp | grep zabbix_server
用戶端配置(zabbix_agentd)
# 安裝好tomcat,我這裡是tomcat9
[[email protected]_0_10_centos src]# tar -zxvf apache-tomcat-9.0.29.tar.gz -C /usr/local/
[[email protected]_0_10_centos local]# mv apache-tomcat-9.0.29/ tomcat9.0.29
1、添加tomcat中的JXM參數
# 編輯需要被監控的tomcat服務中bin目錄下的catalina.sh
# 将以下參數添加到CATALINA_OPTS變量中:
[[email protected]_0_10_centos tomcat9.0.29]# vi /usr/local/tomcat9.0.29/bin/catalina.sh
CATALINA_OPTS="$CATALINA_OPTS \
-Djavax.management.builder.initial= \
-Dcom.sun.management.jmxremote=true \
-Dcom.sun.management.jmxremote.port=12345 \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false \
-Djava.rmi.server.hostname=zabbix_agentd被監控主機ip"
# 啟動tomcat
[[email protected]_0_10_centos tomcat9.0.29]# ./bin/startup.sh
zabbix頁面設定
1、導入模闆到zabbix
Configuration(配置)–> Hosts(主機)–> Templates(模闆)
Template App Apache Tomcat JMX
Template App Generic Java JMX

添加監控模闆
選擇圖形檢視
問題解決-Zabbix對tomcat監控總是出現預警:gzip compression is off for connector http-8080 on XXXXXX
配置好之後報錯:
問題解決:
# 編輯tomcat的server.xml檔案
# 從上面節點的屬性可以看出,要使用gzip壓縮功能,你需要在Connector節點中加上如下屬性
# compression=“on” 打開壓縮功能
# compressionMinSize=“50” 啟用壓縮的輸出内容大小,預設為2KB
# noCompressionUserAgents=“gozilla, traviata” 對于以下的浏覽器,不啟用壓縮
# compressableMimeType=“text/html,text/xml,text/javascript,text/css,text/plain” 哪些資源類型需要壓縮
[[email protected]_0_10_centos ~]# vi /usr/local/tomcat9.0.29/conf/server.xml
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
compression="on"
compressionMinSize="50"
noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" />
# 重新開機服務
[[email protected]_0_10_centos ~]# /usr/local/tomcat9.0.29/bin/shutdown.sh
[[email protected]_0_10_centos ~]# /usr/local/tomcat9.0.29/bin/startup.sh
問題解決:
參考連結 :
zabbix監控tomcat服務: https://www.cnblogs.com/HeiDi-BoKe/p/12018301.html