zabbix监控tomcat(使用jmx监控,但不使用系统自带模版)

一,zabbx使用jmx监控tomcat的原理分析java

1.Zabbix-Server找Zabbix-Java-Gateway获取Java数据
2.Zabbix-Java-Gateway找Java程序(jmx)获取数据
3.Java程序返回数据给Zabbix-Java-Gateway
4.Zabbix-Java-Gateway返回数据给Zabbix-Server
5.Zabbix-Server进行数据展现
 
 
2、配置JMX监控的步骤:
 
1.安装Zabbix-Java-Gateway
2.配置zabbix_java_gateway.conf参数。
3.配置zabbix-server.conf参数。
4.Tomcat应用开启JMX协议。
5.ZabbixWeb配置JMX监控的Java应用。
 
 
三,具体操做以下:
 
1,在zabbix_server上安装zabbix-java-gateway
 
yum install -y zabbix-java-gateway    #若是提示不能安装,请先安装zabbix.repo源,建议安装的zabbix-java-gateway的版本和zabbix其余软件包一致。

 

2,安装jdk环境
cd /usr/local/src
 
tar -zxvf jdk1.8.0_65.tar.gz 
 
mv jdk1.8.0_65  /usr/local/
 
vim /etc/profile.d/java.sh
 

#!/bin/bash
export JAVA_HOME=/usr/local/jdk1.8.0_65
export PATH=$JAVA_HOME/bin:$PATH
export JRE_HOME=/usr/local/jdk1.8.0_65
export CLASSPATH=/usr/local/jdk1.8.0_65/lib/tools.jar:/usr/local/jdk1.8.0_65/lib/dt.jar

 
 
source /etc/profile 

 

3,修改java-gateway的配置文件(默认java-gateway开启的是10052端口)vim

 

vim /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

  

4,重启java-gateway服务
 
systemctl restart zabbix-java-gateway

  

 
5,修改zabbix_server配置文件,指定zabbix-server去javagetway获取数据的地址
 
vim /etc/zabbix/zabbix_server.conf
 
# JavaGateway的服务器IP地址
 JavaGateway=192.168.1.61
# JavaGateway的服务端口
JavaGatewayPort=10052
# 从javaGateway采集数据的进程数
  StartJavaPollers=5

  

6, 重启zabbix-server服务器api

systemctl restart zabbix-server

  

 

7, 在被监控的tomcat应用程序的找到 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.1.36"               //tomcat客户端ip
 
重启进程: ./shutdown.sh  && ./startup.sh

  

8,测试jmx远程端口是否开启成功而且获取数据(java-gatewya主要是和tomcat远程端口进行通讯)。测试工具备3个,供选择!其实都是链接到jmx上面去而已。tomcat

 

a,jmxclient (大部分人都用这个)

https://sourceforge.net/projects/jmxcmd/ 打开后点击下载便可  

 

b,jmxterm  (不多有人用这个)  http://sourceforge.net/projects/cyclops-group/files/jmxterm/



c,jconsole (不少人用这个) 这是个安装jdk自带的工具,须要支持图形化。若是你的电脑安装了jdk,那么就会还有这个工具了。

  

 

 9,安装测试工具完成以后,测试是否可以获取数据。(ps:有的人会去下载 catalina-jmx-remote.jar这个包放到tomcat的lib目录,其实这个是不须要的)bash

 

运行刚刚下载的工具:服务器

 java -jar jmxcmd.jar -  192.168.1.36:12345

  

成功后能够看到获取到了数据工具

 

10,导入模版(该模版是3.0版本的zabbix,因为我用的jdk是1.8.0,因此监控项中的老年代(old gen)名其实已经为Tenured Gen(老年代),为了可以监控到old gen,因此模版里面也是有该监控项的,只是处于停用状态)测试

 下载连接以下:ui

 https://coding.net/api/user/molini/project/zabbix/folder/4326588/downloadspa

 

 

相关文章
相关标签/搜索