【Zabbix4.2學習筆記】8、數據收集-JMX Agent

JMX Agent 用於監控java類的應用

JMX Agent 可以實現各種操作系統,系統架構,網絡協議的標準化和應用管理

Server端配置:

zabbix server 安裝時需要啓動JAVA Gateway
zabbix server 配置啓動 JAVA Gateway
zabbix server 配置 JAVA Gateway/JAVA GatewayPort參數
zabbix server 配置 StartJavaPollers參數
保障zabbix server和JMX 應用的IP+Port通信

被監控端配置:

開啓並正確配置JMX

數據收集流程

ZabbixServer向Zabbix Java Gateway 組件發起獲取數據請求,Java Gateway收到請求後會向被監控的Java 應用發起數據請求。
被監控端收到請求,並且響應對應的監控數據。Zabbix Java Gateway收到數據後,會返回給ZabbixServer。

查看Server端是否有安裝JavaGateway
[root@localhost ~]# rpm -qa|grep zabbix

【Zabbix4.2學習筆記】8、數據收集-JMX Agent

如果沒有安裝的話,安裝命令:
yum -y install zabbix-java-gateway-4.2.6-1.el7.x86_64
也可以用yum查找安裝包
yum search zabbix
更改zabbixJavaGateway的配置文件
[root@localhost zabbix]# grep ^[a-Z] /etc/zabbix/zabbix_java_gateway.conf 
LISTEN_IP="0.0.0.0"
LISTEN_PORT=10052
PID_FILE="/var/run/zabbix/zabbix_java.pid"
START_POLLERS=5
TIMEOUT=3
JAVA_OPTIONS="$JAVA_OPTIONS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=12345
啓動zabbix JavaGateway
[root@localhost ~]# systemctl start zabbix-java-gateway.service
[root@localhost ~]# systemctl status zabbix-java-gateway.service
● zabbix-java-gateway.service - Zabbix Java Gateway
   Loaded: loaded (/usr/lib/systemd/system/zabbix-java-gateway.service; disabled; vendor preset: disabled)
   Active: active (running) since 二 2019-09-17 21:00:41 CST; 10s ago
  Process: 24955 ExecStart=/usr/sbin/zabbix_java_gateway (code=exited, status=0/SUCCESS)
 Main PID: 24959 (java)
   CGroup: /system.slice/zabbix-java-gateway.service
           └─24959 java -server -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremot...

9月 17 21:00:39 localhost.localdomain systemd[1]: Starting Zabbix Java Gateway...
9月 17 21:00:41 localhost.localdomain systemd[1]: Started Zabbix Java Gateway.
更改ZabbixServer配置文件
[root@localhost zabbix]# grep ^[a-Z] /etc/zabbix/zabbix_server.conf 
LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_server.pid
SocketDir=/var/run/zabbix
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
StartTrappers=10
JavaGateway=192.168.146.133
JavaGatewayPort=10052
StartJavaPollers=5
SNMPTrapperFile=/tmp/zabbix_traps.tmp
StartSNMPTrapper=1
Timeout=4
AlertScriptsPath=/usr/lib/zabbix/alertscripts
ExternalScripts=/usr/lib/zabbix/externalscripts
SSHKeyLocation=/home/zabbix/.ssh
LogSlowQueries=3000
StatsAllowedIP=127.0.0.1
查看Java pollers的進程是否啓用
[root@localhost ~]# ps -aux|grep java
zabbix    24959  0.7  1.7 3369484 51500 ?       Sl   21:00   0:02 java -server -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dlogback.configurationFile=/etc/zabbix/zabbix_java_gateway_logback.xml -classpath lib:lib/android-json-4.3_r3.1.jar:lib/logback-classic-0.9.27.jar:lib/logback-core-0.9.27.jar:lib/slf4j-api-1.6.1.jar:bin/zabbix-java-gateway-4.2.6.jar -Dzabbix.pidFile=/var/run/zabbix/zabbix_java.pid -Dzabbix.startPollers=5 -Dsun.rmi.transport.tcp.responseTimeout=3000 com.zabbix.gateway.JavaGateway
zabbix    25593  0.0  0.1 164224  3660 ?        S    21:05   0:00 /usr/sbin/zabbix_server: java poller #1 [got 0 values in 0.000071 sec, idle 5 sec]
zabbix    25594  0.0  0.1 164224  3660 ?        S    21:05   0:00 /usr/sbin/zabbix_server: java poller #2 [got 0 values in 0.000015 sec, idle 5 sec]
zabbix    25595  0.0  0.1 164224  3660 ?        S    21:05   0:00 /usr/sbin/zabbix_server: java poller #3 [got 0 values in 0.000015 sec, idle 5 sec]
zabbix    25596  0.0  0.1 164224  3660 ?        S    21:05   0:00 /usr/sbin/zabbix_server: java poller #4 [got 0 values in 0.000030 sec, idle 5 sec]
zabbix    25597  0.0  0.1 164224  3660 ?        S    21:05   0:00 /usr/sbin/zabbix_server: java poller #5 [got 0 values in 0.000047 sec, idle 5 sec]
root      25707  0.0  0.0 112724   984 pts/1    S+   21:06   0:00 grep --color=auto java
在agent端安裝jdk1.8.0
[root@localhost ~]# yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel
[root@localhost ~]# which java
/usr/bin/java
添加jdk環境變量
[root@localhost ~]# vim /etc/profile
最後一行加入
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-1.el7_7.x86_64
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

[root@localhost ~]# source /etc/profile
[root@localhost ~]# echo $JAVA_HOME
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-1.el7_7.x86_64
下載安裝Tomcat
[root@localhost data]# wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.45/bin/apache-tomcat-8.5.45.tar.gz
--2019-09-17 20:25:01--  http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.45/bin/apache-tomcat-8.5.45.tar.gz
正在解析主機 mirrors.tuna.tsinghua.edu.cn (mirrors.tuna.tsinghua.edu.cn)... 101.6.8.193, 2402:f000:1:408:8100::1
正在連接 mirrors.tuna.tsinghua.edu.cn (mirrors.tuna.tsinghua.edu.cn)|101.6.8.193|:80... 已連接。
已發出 HTTP 請求,正在等待迴應... 200 OK
長度:9722154 (9.3M) [application/octet-stream]
正在保存至: “apache-tomcat-8.5.45.tar.gz”

100%[======================================================================>] 9,722,154   2.14MB/s 用時 4.3s   

2019-09-17 20:25:05 (2.14 MB/s) - 已保存 “apache-tomcat-8.5.45.tar.gz” [9722154/9722154])
解壓並啓動Tomcat
[root@localhost]# mkdir /data
[root@localhost]# cd /data
[root@localhost data]# tar xvf apache-tomcat-8.5.45.tar.gz
[root@localhost data]# cd bin/
[root@localhost bin]# ./startup.sh 
查看Tomcat日誌,進程
[root@localhost data]# vim ../logs/catalina.out
[root@localhost data]# ps aux|grep tomcat
配置Tomcat啓用JMX
[root@localhost data]# vim /data/apache-tomcat-8.5.45/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=192.168.146.134"
重啓Tomcat
[root@localhost bin]# ./shutdown.sh 
[root@localhost bin]# ./startup.sh

在zabbixweb管理前端創建監控項

首先在主機添加對應JMX的監控接口

【Zabbix4.2學習筆記】8、數據收集-JMX Agent
【Zabbix4.2學習筆記】8、數據收集-JMX Agent

在最新數據可以看到已經獲取到監控數據

【Zabbix4.2學習筆記】8、數據收集-JMX Agent
【Zabbix4.2學習筆記】8、數據收集-JMX Agent

×××學習

【Zabbix4.2學習筆記】8、數據收集-JMX Agent

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章