1.安装zabbix-java-gateway

1
2
3
rpm -ivh https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
yum install -y zabbix-java-gateway

2.修改/etc/zabbix/zabbix_java_gateway.conf

1
2
3
4
5
6
7
8
9
# 监听地址
LISTEN_IP=”0.0.0.0″
# 监听端口
LISTEN_PORT=10052
# PID_FILE文件
PID_FILE=”/var/run/zabbix/zabbix_java.pid”
# 开启的工作线程数
START_POLLERS=5

3.开启java gateway

1
2
service zabbix-java-gateway start

4.再修改zabbix-server的配置,编辑/etc/zabbix/zabbix_server.conf ,修改下面几个参数:

1
2
3
4
5
6
7
# JavaGateway的服务器IP地址
JavaGateway=192.168.89.204 (zabbix_server服务器的ip地址)
# JavaGateway的服务端口
JavaGatewayPort=10052
# 从javaGateway采集数据的进程数
StartJavaPollers=5

5.配置文件修改后,重启zabbix-server:

1
2
service zabbix-server restart

好,现在zabbix-java-gateway就配置好了

6.客户端配置(Tomcat所在电脑-window)

1、给tomcat启动脚本添加参数,开启JMX
修改tomcat/bin/下的catalina.sh,添加如下内容:

1
2
3
4
5
6
CATALINA_OPTS="-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.port=15556 #定义jmx监听端口
-Djava.rmi.server.hostname=客户端IP"

2、下载catalina-jmx-remote.jar

1
2
wget  http://archive.apache.org/dist/tomcat/tomcat-7/v7.0.67/bin/extras/catalina-jmx-remote.jar  #我的tomcat版本是7.0.67

将下载后后的jar包放到被监控的tomcat实例的lib目录下
3、重启tomcat

7.客户端配置(Tomcat所在电脑-linux)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
添加tomact中JMX的参数:在文件开头配置即可。
[root@tomcat ~]# vim /application/tomcat/bin/catalina.sh

#!/bin/sh

CATALINA_OPTS="-Dcom.sun.management.jmxremote #开启远程监控

-Dcom.sun.management.jmxremote.authenticate=false #关闭权限认证

-Dcom.sun.management.jmxremote.ssl=false #远程ssl验证为false

-Djava.rmi.server.hostname=192.168.1.7 #部署了tomcat的主机地址

-Dcom.sun.management.jmxremote.port=12345" #远程监控端口
[root@tomcat ~]# vim /etc/hosts #设置本地host解析,不然会报错,12345端口无法查看,报错信息可在catalina日志中查看

10.0.0.7 tomcat

[root@tomcat ~]# /application/tomcat/bin/shutdown.sh #重启tomcat

[root@tomcat ~]# /application/tomcat/bin/startup.sh

[root@tomcat ~]# netstat -lntup

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name

tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 2647/mysqld

tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1774/sshd

tcp6 0 0 :::8009 :::* LISTEN 5946/java

tcp6 0 0 :::55404 :::* LISTEN 5946/java

tcp6 0 0 :::8080 :::* LISTEN 5946/java

tcp6 0 0 :::22 :::* LISTEN 1774/sshd

tcp6 0 0 :::12345 :::* LISTEN 5946/java

tcp6 0 0 :::53819 :::* LISTEN 5946/java

tcp6 0 0 127.0.0.1:8005 :::* LISTEN 5946/java

udp6 0 0 :::5353 :::* 5946/java

udp6 0 0 :::33848 :::* 5946/java

8.GUI端:

导入模板到zabbix,并关联到主机,添加监控
新建主机,配置JMX接口,默认端口号12345;
在这里插入图片描述

1
2
3
4
5
导入JMX模板
选择配置:主机-模板-选择-模板-:
Template App Apache Tomcat JMX
Template App Generic java JMX

在这里插入图片描述
查看JMX是否生效,可重启tomcat进程和zabbix-java-gateway服务
Configuration –> Hosts –> 查看制定服务器所对应的JMX是否变为绿色;
在这里插入图片描述
查看图形
Monitoring –> Graphs –> 选择对应的Host,Graph选择Threads,如图:[object Object]
在这里插入图片描述