利用zabbix-java-gateway监控jvm

要在zabbix上面监控tomcat的jvm情况需要用到zabbix-java-gateway

zabbix监控jvm工作流程:

当zabbix-server需要获取jvm情况时的流程为:

zabbix-server -> zabbix-java-gateway --> jvm

注:zabbix-server和zabbix-java-gateway是两2个独立的程序,可以安装一台机器,也可以安装在不同一的机器

安装方式:

1.zabbix-java-gateway可以源码安装zabbix-server时直接指定安装(编译时启用--enable-java选择)

2.也可以利用rpm的方式进行安装

本文以zabbix2.4为例:

yum install zabbix-java-gateway-2.4.7-1.el6.x86_64.rpm

配置文件:

/etc/zabbix/zabbix_java_gateway.conf

重要配置参数:

LISTEN_IP="0.0.0.0"--> 监听IP

LISTEN_PORT=10052--> 监控端口

PID_FILE="/var/run/zabbix/zabbix_java.pid"--> pid文件

START_POLLERS=5--> 启动几个探测器

注:只需要以上几个参数即可,无需再做其它配置

启动方式:

/etc/init.d/zabbix-java-gateway start

注:zabbix-java-gateway生效的前提是,需要将java程序的远程管理打开

在tomcat中的catalina.sh进行相关配置之后才可以实现远程监控

#在catalina.sh添加如下内容

CATALINA_OPTS="$CATALINA_OPTS

-Dcom.sun.management.jmxremote

-Dcom.sun.management.jmxremote.port=12345

-Dcom.sun.management.jmxremote.authenticate=false

-Dcom.sun.management.jmxremote.ssl=false

-Djava.rmi.server.hostname=192.168.10.59"

zabbix-server需要做的配置:

vim zabbix_server.conf

JavaGateway=192.168.10.58

JavaGatewayPort=10052

StartJavaPollers=5

配置完成之后需要重启zabbix-server

zabbix-server和zabbix-java-gateway配置对比:


zabbix-java-gateway


zabbix-server


注意事项


LISTEN_IP="0.0.0.0"


JavaGateway=X.X.X.X


X.X.X.X参数为zabbix-java-gateway的ip


LISTEN_PORT=10052


JavaGatewayPort=10052


端口必须一致,且防火墙允许


START_POLLERS=5


StartJavaPollers=5


StartJavaPollers小于等于START_POLLERS

测试zabbix-server是否可以收到zabbix-java-gateway的数据:

利用到的工具cmdline-jmxclient-0.10.3.jar

java -jar cmdline-jmxclient-0.10.3.jar - 192.168.10.58:12345 java.lang:type=Memory NonHeapMemoryUsage

执行上面的命令如果收到数据则表示配置没有问题

登陆zabbix-web添加需要jvm的主机即可:

1.点击"Configuration" --> "Host" --> 找到对应主机选择"JMX Interfaces" --> 写入jvm主机Ip及对应的端口

2.选择对应的模板

JMX有2个模板:Template JMX Generic和Template JMX Tomcat

经测试Template JMX Generic模板可以正常工作,大概2分钟左右就有数据

Template JMX Tomcat长时间不见数据,不知道为何,有待研究

使用Template JMX Generic模板时出现的数据

时间: 2024-10-12 23:48:14

利用zabbix-java-gateway监控jvm的相关文章

利用Zabbix ODBC monitoring监控SQL Server

利用Zabbix ODBC monitoring监控SQL Server 1. 创建群组ODBC Templates 2. 创建Template SQL Server和Template MySQL 3. 在Zabbbix上安装unixODBC shell> yum -y install unixODBC unixODBC-devel 4. 在Zabbix上安装对应数据库的unixODBC驱动 unixODBC有一个支持的数据库和驱动列表: http://www.unixodbc.org/driv

利用Zabbix ODBC monitoring监控MySQL

利用Zabbix ODBC monitoring监控MySQL 1. 创建群组ODBC Templates 2. 创建Template SQL Server和Template MySQL 3. 在Zabbbix上安装unixODBC shell> yum -y install unixODBC unixODBC-devel 4. 在Zabbix上安装对应数据库的unixODBC驱动 unixODBC有一个支持的数据库和驱动列表: http://www.unixodbc.org/drivers.h

Java 代码监控 JVM 运行状态 —— 记一次 JVM 调优的毛招

在做模型项目的时候遇到一个问题,由于模型服务装载一些大模型,大模型对象的大小在 300M 左右,而一台服务器可能装载多个大模型.在服务启动和模型更新的时候会遇到 young gc 耗时过长的问题,young gc 所采用的垃圾回收器是 ParNew.通过观察 GC 日志可以发现,模型对象一开始是存在于年轻代的,当经过 15次 gc 后,这些对象就会进入到老年代,而之后 young gc 的时间缩短到正常可以接受的时间范围 0.01s ~ 0.02s.而在模型对象尚未进入老年代时,young gc

zabbix使用zabbix-java-gateway监控jvm/tomcat性能

JAVA-GATEWAY Zabbix本身不支持直接监控Java,在zabbix 1.8以前,只能使用Zapcat来做代理监控,而且要修改源代码,非常麻烦.所有后来为了解决这个监控问题,Zabbix和Java双方应运生成了各自的代理监控程序:zabbix 2.0以后添加了服务进程zabbix-java-gateway:Java有了JMX,全称是Java Management Extensions,即Java管理扩展. 双方的工作原理 比如:当Zabbix-Server需要知道java应用程序的某

python利用zabbix API添加监控

首先说一下坑的地方就是python2和python3的模块改变问题,当然精通python的可以略过.这个在网上百度一下吧,第二个是导入xlsx文件的时候需要xlrd模块,而这个模块最好跟着我下面的方法走,那个python2 就可以用我下边的脚本了. 1.安装xlrd读取Excel文件 1.1. 下载setuptools-38.2.4.zip,上传至zabbix服务器解压安装,下载地址:https://pypi.python.org/packages/69/56/f0f52281b5175e3d9

Zabbix 通过 JMX 监控 java 进程

参考: [ JMX monitoring ] [ Zabbix Java gateway ] [ JMX Monitoring (Java Gateway) not Working ] 这里会说明通过 JMX 监控 java 进程的配置过程以及需要注意的问题. 本文在 zabbix 已经安装好的基础之上展开. 如果使用 zabbix_proxy , 配置完全一致, 只需要打开zabbix_proxy 对 java app server 有所有端口的访问权限即可. 环境说明 基本环境 OS: Ce

(十四)Zabbix_服务器监控JVM服务

(十四)Zabbix_服务器监控JVM服务 背景: 1.zabbix-3.4.4服务器搭建完成 2.JDK已经源代码安装完成 思路: 1.编译安装zabbix Java Gateway让其允许 注意:网上大部分文档说重新编译安装zabbix服务.我看不然,因为要是重新编译zabbix的话,如果原来放到脚本目录里的文件就会丢失. 2.让zabbix服务启用JavaPollers 3.web端添加主机 工作原理:(网上查找仅供参考) 工作原理比如:当Zabbix-Server需要知道java应用程序

监控zabbix使用jmx监控tomcat

1.在zabix服务端安装java工具(服务器已安装zabbix) [[email protected] ~]# rpm -ivh http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-java-gateway-2.4.7-1.el6.x86_64.rpm [[email protected] ~]# vim /etc/zabbix/zabbix_server.conf JavaGateway=127.0.0.1JavaGatewayPor

zabbix使用zabbix_java_gateway 监控java应用进程

JAVA-GATEWAY Zabbix本身不支持直接监控Java,在zabbix 1.8以前,只能使用Zapcat来做代理监控,而且要修改源代码,非常麻烦.所有后来为了解决这个监控问题,Zabbix和Java双方应运生成了各自的代理监控程序:zabbix 2.0以后添加了服务进程zabbix-java-gateway:Java有了JMX,全称是Java Management Extensions,即Java管理扩展 比如:当Zabbix-Server需要知道java应用程序的某项性能的时候,会启