Zabbix(5)通过JMX监控Tomcat

文章目录

[隐藏]

  • 一、安装jmx服务器
    • 1、安装jdk
    • 2、安装jmx服务
    • 3、配置jmx服务
    • 4、修改zabbix server配置
  • 二、Tomcat配置修改
    • 1、修改配置文件
    • 2、测试JMX
  • 三、在zabbix web页面中添加JMX端口
    • 1、导入模板
    • 2、添加JMX端口
    • 3、关联模板
    • 4、查看图形

Zabbix监控tomcat主要使用的是zabbix的zabbix-java-gateway。从Zabbix 2.0开始,内置了监控JMX的功能,叫做“Zabbix Java Gateway”,在Zabbix Server和Zabbix Proxy上启动名为“Zabbix Java Gateway”的进程,当需要获取JMX数据时,Zabbix Server会“问”JMX Gateway,然后JMX Gateway根据JMX管理API去查询需要的数据。在使用时,Java程序不需要在代码中新增任何东西,只需要在启动的时候加上一些JVM参数,使得它可以支持使用端口监控JMX。JMX的全称是Java Management Extensions,即Java管理扩展。Java程序会开放一些端口,用来获取运行状况。

一、安装jmx服务器

1、安装jdk

下载JDK: http://www.oracle.com/technetwork/java/archive-139210.html

配置环境变量: http://islocal.cc/2017/09/27/JDK%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F%E9%85%8D%E7%BD%AE/

2、安装jmx服务

yum -y install zabbix-java-gateway  

3、配置jmx服务

egrep -v '#|^$' /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  
systemctl start zabbix-java-gateway  systemctl enable zabbix-java-gateway  

4、修改zabbix server配置

添加以下三行,这里配置的StartJavaPollers值要小于之前java_gateway中的START_POLLERS

tail -n 3 /etc/zabbix/zabbix_server.conf  JavaGateway=127.0.0.1  JavaGatewayPort=10052  StartJavaPollers=3  

修改zabbix_server.conf后重启服务

systemctl restart zabbix-server  
二、Tomcat配置修改

1、修改配置文件

Windows下tomcat在F:deployapache-tomcat-8.5.20-OUbincatalina.bat中set “CURRENT_DIR=%cd%”下添加以下内容

set CATALINA_OPTS=-Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false  

2、测试JMX

下载以下两个jar包放在tomcat lib目录下。

下载cmdline-jmxclient-0.10.3.jar

http://crawler.archive.org/cmdline-jmxclient/cmdline-jmxclient-0.10.3.jar

下载catalina-jmx-remote.jar

https://archive.apache.org/dist/tomcat/tomcat-7/v7.0.77/bin/extras/catalina-jmx-remote.jar

F:apache-tomcat-7.0.70(zabbix)lib>java -jar cmdline-jmxclient-0.10.3.jar - 192.168.6.124:12345 java.lang:type=Memory NonHeapMemoryUsage  10/10/2017 16:31:57 +0800 org.archive.jmx.Client NonHeapMemoryUsage:  committed: 24838144  init: 12746752  max: 100663296  used: 24806392  
三、在zabbix web页面中添加JMX端口

1、导入模板

zabbix自带的”Template App Generic Java JMX”和”Template App Apache Tomcat JMX”模板很多都获取不到数据,从网上找了个模板,监控项不多,但是都是很实用的。

2、添加JMX端口

jmx的端口一定要与在catalina.bat下配置的jmxremote.port一样

3、关联模板

4、查看图形

原文出处:islocal -> http://islocal.cc/2017/10/10/Zabbix-5-%E9%80%9A%E8%BF%87JMX%E7%9B%91%E6%8E%A7Tomcat/

本站所发布的一切资源仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如果侵犯你的利益,请发送邮箱到 [email protected],我们会很快的为您处理。