zabbix 监控 Tomcat

简介:

#

# zabbix提供了一个JMX通过java gateway 来监控java

#官方文档:https://www.zabbix.com/documentation/3.2/manual/appendix/config/zabbix_java

#java gatewa 需要独立安装 以为zabbix-server  zabbix-agent都不能直接监控java

#Tomcat 安装参考:Tomcat安装与配置

#zabbix 安装参考:zabbix安装和基本介绍


  主机名       角色     IP地址
  node2 zabbix-server    zabbix-java-gateway 192.168.174.136
  node4          tomcat 192.168.174.138

#安装java gateway

1
[root@node2 ~] # yum install -y zabbix-java-gateway java-1.8.0


#配置

1
2
3
4
5
6
7
8
[root@node2 ~] # vim /etc/zabbix/zabbix_java_gateway.conf
[root@node2 ~] # 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
[root@node2 ~] #

我们使用默认配置即可


#开启服务

1
2
3
4
[root@node2 ~] # systemctl start zabbix-java-gateway.service
[root@node2 ~] # netstat -lntup | grep 10052
tcp6       0      0 :::10052                :::*                    LISTEN      3002 /java           
[root@node2 ~] #


#修改zabbix-server配置文件

1
2
3
4
5
[root@node2 ~] # vim /etc/zabbix/zabbix_server.conf
[root@node2 ~] # egrep '(^Java|^Start)' /etc/zabbix/zabbix_server.conf 
JavaGateway=192.168.174.136
JavaGatewayPort=10052
StartJavaPollers=5


#重启zabbix-server服务

1
[root@node2 ~] # systemctl restart zabbix-server.service


#Tomcat开启JMX

#参考文档:http://tomcat.apache.org/tomcat-8.0-doc/monitoring.html

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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
[root@node4 tomcat] # vim /usr/local/tomcat/bin/catalina.sh 
[root@node4 tomcat] # sed -n '114,118p' /usr/local/tomcat/bin/catalina.sh
CATALINA_OPTS="-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.authenticate= false
-Dcom.sun.management.jmxremote.ssl= false
-Dcom.sun.management.jmxremote.port=8888  
-Djava.rmi.server. hostname =192.168.174.138"
 
[root@node4 tomcat] # /usr/local/tomcat/bin/startup.sh 
 
[root@node4 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:22              0.0.0.0:*               LISTEN      1186 /sshd           
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1512 /master         
tcp6       0      0 :::22                   :::*                    LISTEN      1186 /sshd           
tcp6       0      0 ::1:25                  :::*                    LISTEN      1512 /master         
udp        0      0 0.0.0.0:20618           0.0.0.0:*                           991 /dhclient        
udp        0      0 0.0.0.0:68              0.0.0.0:*                           991 /dhclient        
udp6       0      0 :::36737                :::*                                991 /dhclient
 
#发现服务没有启动
 
查看日志在最后一行发现错误, local  host name unknow
[root@node4 tomcat] # tail -10 logs/catalina.out 
18-May-2017 23:19:33.887 INFO [main] org.apache.catalina.startup.Catalina.start Server startup  in  32022 ms
18-May-2017 23:24:00.914 INFO [main] org.apache.catalina.core.StandardServer.await A valid  shutdown  command  was received via the  shutdown  port. Stopping the Server instance.
18-May-2017 23:24:00.915 INFO [main] org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler [ "http-nio-8080" ]
18-May-2017 23:24:00.970 INFO [main] org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler [ "ajp-nio-8009" ]
18-May-2017 23:24:01.022 INFO [main] org.apache.catalina.core.StandardService.stopInternal Stopping service [Catalina]
18-May-2017 23:24:01.080 INFO [main] org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler [ "http-nio-8080" ]
18-May-2017 23:24:01.081 INFO [main] org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler [ "ajp-nio-8009" ]
18-May-2017 23:24:01.082 INFO [main] org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler [ "http-nio-8080" ]
18-May-2017 23:24:01.083 INFO [main] org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler [ "ajp-nio-8009" ]
Error: Exception thrown by the agent : java.net.MalformedURLException: Local host name unknown: java.net.UnknownHostException: node4: node4: Name or service not known
 
#修改hosts文件
[root@node4 tomcat] # hostname
node4
[root@node4 tomcat] # vim /etc/hosts
[root@node4 tomcat] # tail -1 /etc/hosts
192.168.174.138 node4
 
[root@node4 tomcat] # /usr/local/tomcat/bin/startup.sh 
Using CATALINA_BASE:    /usr/local/tomcat
Using CATALINA_HOME:    /usr/local/tomcat
Using CATALINA_TMPDIR:  /usr/local/tomcat/temp
Using JRE_HOME:         /usr/local/jdk
Using CLASSPATH:        /usr/local/tomcat/bin/bootstrap .jar: /usr/local/tomcat/bin/tomcat-juli .jar
Tomcat started.
 
 
[root@node4 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:22              0.0.0.0:*               LISTEN      1186 /sshd           
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1512 /master         
tcp6       0      0 :::8009                 :::*                    LISTEN      4020 /java           
tcp6       0      0 :::8080                 :::*                    LISTEN      4020 /java           
tcp6       0      0 :::22                   :::*                    LISTEN      1186 /sshd           
tcp6       0      0 :::53463                :::*                    LISTEN      4020 /java           
tcp6       0      0 :::8888                 :::*                    LISTEN      4020 /java           
tcp6       0      0 ::1:25                  :::*                    LISTEN      1512 /master         
tcp6       0      0 :::45731                :::*                    LISTEN      4020 /java           
tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN      4020 /java           
udp        0      0 0.0.0.0:20618           0.0.0.0:*                           991 /dhclient        
udp        0      0 0.0.0.0:68              0.0.0.0:*                           991 /dhclient        
udp6       0      0 :::36737                :::*                                991 /dhclient        
 
服务正常启动



#添加主机

wKioL1kdWmrCmV0nAACWKmHx-MM608.png



#选择模板

wKiom1kdWmqBUzsEAADLI9MRiTw808.png



#JMX启用

wKiom1kdWmzy5QAEAAChLmJPZUg933.png


#查看图形

wKioL1kdWmzA1EwdAADsjldqGXc982.png










本文转自 chaunceyjiang  51CTO博客,原文链接:http://blog.51cto.com/cqwujiang/1927253,如需转载请自行联系原作者
目录
相关文章
|
5月前
|
Arthas 监控 Java
Arthas 可以用于监控和诊断在 Windows 系统下部署的 Tomcat 服务
Arthas 可以用于监控和诊断在 Windows 系统下部署的 Tomcat 服务
695 2
|
5月前
|
存储 SQL 监控
修改Zabbix源码实现监控数据双写,满足业务需求!
虽然对接Elasticsearch后有诸多好处,但是它不往数据库写历史数据了,同时还不再计算趋势数据了。有这么一个场景...
修改Zabbix源码实现监控数据双写,满足业务需求!
|
5月前
|
数据采集 监控 数据库
OceanBase社区版可以通过Zabbix监控
OceanBase社区版可以通过Zabbix监控
242 4
|
2月前
|
监控 安全 Linux
在Linux中,zabbix如何监控脑裂?
在Linux中,zabbix如何监控脑裂?
|
1月前
|
监控 关系型数据库 MySQL
zabbix agent集成percona监控MySQL的插件实战案例
这篇文章是关于如何使用Percona监控插件集成Zabbix agent来监控MySQL的实战案例。
32 2
zabbix agent集成percona监控MySQL的插件实战案例
|
3月前
|
监控 安全 Java
使用JMX监控Tomcat
【7月更文挑战第18天】
|
2月前
|
SQL 监控 分布式数据库
【解锁数据库监控的神秘力量!】OceanBase社区版与Zabbix的完美邂逅 —— 揭秘分布式数据库监控的终极奥秘!
【8月更文挑战第7天】随着OceanBase社区版的普及,企业广泛采用这一高性能、高可用的分布式数据库。为保障系统稳定,使用成熟的Zabbix监控工具对其进行全方位监控至关重要。本文通过实例介绍如何在Zabbix中配置监控OceanBase的方法,包括创建监控模板、添加监控项(如TPS)、设置触发器及图形展示,并提供示例脚本帮助快速上手。通过这些步骤,可以有效监控OceanBase状态,确保业务连续性。
77 0
|
4月前
|
监控 数据库 Docker
Zabbix监控神通数据库教程
**摘要:** 本文介绍了如何使用Docker安装和配置神舟通用数据库,并利用Zabbix进行监控。首先,通过Docker安装数据库镜像,启动容器并映射端口。接着,使用默认凭证连接数据库并验证安装。然后,将数据库的Python模块和库文件复制到主机,并安装Python3.5及相应模块,创建外部检查脚本以实现Zabbix的监控功能。示例展示了查询数据库版本的监控指标配置。最后,提到了监控结果的界面展示,并邀请读者探索更多Zabbix监控技巧。
55 0
Zabbix监控神通数据库教程
|
4月前
|
监控 Java 应用服务中间件
详解tomcat中的jmx监控
详解tomcat中的jmx监控
114 1
|
3月前
|
监控 关系型数据库 应用服务中间件
Linux zabbix监控 软件的安装
Linux zabbix监控 软件的安装