1. 程式人生 > >性能測試之監控--zabbix通過jmx監控tomcat

性能測試之監控--zabbix通過jmx監控tomcat

rap light 主機 關註 ali opts stat jdk1.8 x64

前提:

已經安裝好了zabbix server

實驗環境

Centos 7

Zabbix 3.0

Tomcat 7.0

JDK 1.8

安裝JDK

tar -zxvf jdk-8u181-linux-x64.tar.gz -C /usr/local/ 

vim ~/.bash_profile(此處的配置文件是我的所有配置)

export JAVA_HOME=/usr/local/jdk1.8.0_181
export TOMCAT_HOME=/usr/local/tomcat
export CATALINA_HOME=/usr/local/tomcat
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin:$CATALINA_HOME/bin
export CLASS_PATH=$JAVA_HOME/bin/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tool.jar
export PATH

修改完配置文件執行:
source ~/.bash_profile 使上面的環境變量立刻生效

執行:
ln -s $JAVA_HOME/bin/java /usr/bin/java

安裝Zabbix-Java-gateway

Zabbix2.0起添加了支持用於監控JMX應用程序的服務進程,稱為“Zabbix-Java-gateway”,它是用java寫的一個程序。

1、安裝yum源:
rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm

2、安裝gateway:
yum install -y  java-devel  zabbix-java-gateway

3、測試是否安裝成功:

service zabbix-java-gateway status
輸出: zabbix-java-gateway is stopped 證明安裝成功

4、修改java-gateway的配置

vi /etc/zabbix/zabbix_java_gateway.conf

# 監聽地址
LISTEN_IP=”0.0.0.0″
# 監聽端口
LISTEN_PORT=10052
# PID_FILE文件
PID_FILE=”/var/run/zabbix/zabbix_java.pid”
# 開啟的工作線程數
START_POLLERS=5

5、啟動zabbix-java-gateway

service zabbix-java-gateway start

安裝Tomcat(實驗場景是安裝了同一臺機器)

tar zxvf apache-tomcat-7.0.90.tar.gz -C /usr/local/
修改配置文件,參考上面的~/.bash_profile
啟動tomcat

修改zabbix_server的配置文件並重啟

1、vi /etc/zabbix/zabbix_server.conf ,添加下面幾個參數:

# JavaGateway的服務器IP地址
JavaGateway=192.168.226.134
# JavaGateway的服務端口
JavaGatewayPort=10052
# 從javaGateway采集數據的進程數
StartJavaPollers=5

2、配置文件修改後,重啟zabbix-server:

service zabbix-server restart

現在zabbix-java-gateway就配置好了

Tomcat配置jmx

1、vi /usr/local/tomcat/bin/catalina.sh
修改添加一下參數:
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=127.0.0.1"

2、下載catalina-jmx-remote.jar,將下載後後的jar包放到被監控的tomcat實例的lib目錄下

mv catalina-jmx-remote.jar /usr/local/tomcat/lib/

重啟tomcat


3、通過jmxcmd.jar測試tomcat中jmx配置是否正確:
jar包下載地址:https://sourceforge.net/projects/jmxcmd/files/
執行命令:java -jar jmxcmd.jar - 127.0.0.1:12345 java.lang:type=Memory NonHeapMemoryUsage
如果能正常獲取數據則輸出下面信息:

08/25/2018 05:23:02 -0400 de.layereight.jmxcmd.Client NonHeapMemoryUsage:
committed: 138412032
init: 2555904
max: -1
used: 129302536

添加監控

主機-模板-選擇機器-模板,添加下面兩個模板:
Template JMX Tomcat
Template JMX Generic

技術分享圖片

添加了之後就可以查看監控到的數據了:

技術分享圖片

默認情況下的graph比較少,可以手動添加圖

Configuration-->Template-->找到上面的兩個模板:

技術分享圖片

點擊Graphs,進去之後點創建,添加自己關註的監控指標,此時監控graph就有了自己新加的了

技術分享圖片

參考文章

https://blog.csdn.net/Hu_wen/article/details/53587250?locationNum=14&fps=1

 

性能測試之監控--zabbix通過jmx監控tomcat