性能测试之监控--zabbix通过jmx监控tomcat
前提:
已经安装好了zabbix server
实验环境
Centos 7
Zabbix 3.0
Tomcat 7.0
JDK 1.8
安装JDK
tar -zxvf jdk-8u181-linux-x64.tar.gz -C /usr/local/ vim ~/.bash_profile(此处的配置文件是我的所有配置) export JAVA_HOME=/usr/local/jdk1.8.0_181
export TOMCAT_HOME=/usr/local/tomcat
export CATALINA_HOME=/usr/local/tomcat
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin:$CATALINA_HOME/bin
export CLASS_PATH=$JAVA_HOME/bin/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tool.jar
export PATH
修改完配置文件执行:
source ~/.bash_profile 使上面的环境变量立刻生效
执行:
ln -s $JAVA_HOME/bin/java /usr/bin/java
安装Zabbix-Java-gateway
Zabbix2.0起添加了支持用于监控JMX应用程序的服务进程,称为“Zabbix-Java-gateway”,它是用java写的一个程序。
1、安装yum源:
rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm 2、安装gateway:
yum install -y java-devel zabbix-java-gateway
3、测试是否安装成功:
service zabbix-java-gateway status
输出: zabbix-java-gateway is stopped 证明安装成功
4、修改java-gateway的配置
vi /etc/zabbix/zabbix_java_gateway.conf
# 监听地址
LISTEN_IP=”0.0.0.0″
# 监听端口
LISTEN_PORT=10052
# PID_FILE文件
PID_FILE=”/var/run/zabbix/zabbix_java.pid”
# 开启的工作线程数
START_POLLERS=5
5、启动zabbix-java-gateway
service zabbix-java-gateway start
安装Tomcat(实验场景是安装了同一台机器)
tar zxvf apache-tomcat-7.0.90.tar.gz -C /usr/local/
修改配置文件,参考上面的~/.bash_profile
启动tomcat
修改zabbix_server
的配置文件并重启
1、vi /etc/zabbix/zabbix_server.conf ,添加下面几个参数: # JavaGateway的服务器IP地址
JavaGateway=192.168.226.134
# JavaGateway的服务端口
JavaGatewayPort=10052
# 从javaGateway采集数据的进程数
StartJavaPollers=5 2、配置文件修改后,重启zabbix-server: service zabbix-server restart 现在zabbix-java-gateway就配置好了
Tomcat配置jmx
1、vi /usr/local/tomcat/bin/catalina.sh 修改添加一下参数:
CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.port=12345 -Djava.rmi.server.hostname=127.0.0.1"
2、下载catalina-jmx-remote.jar,将下载后后的jar包放到被监控的tomcat实例的lib目录下
mv catalina-jmx-remote.jar /usr/local/tomcat/lib/
重启tomcat
3、通过jmxcmd.jar测试tomcat中jmx配置是否正确:
jar包下载地址:https://sourceforge.net/projects/jmxcmd/files/
执行命令:java -jar jmxcmd.jar - 127.0.0.1:12345 java.lang:type=Memory NonHeapMemoryUsage
如果能正常获取数据则输出下面信息:
08/25/2018 05:23:02 -0400 de.layereight.jmxcmd.Client NonHeapMemoryUsage:
committed: 138412032
init: 2555904
max: -1
used: 129302536
添加监控
主机-模板-选择机器-模板,添加下面两个模板:
Template JMX Tomcat
Template JMX Generic
添加了之后就可以查看监控到的数据了:
默认情况下的graph比较少,可以手动添加图
Configuration-->Template-->找到上面的两个模板:
点击Graphs,进去之后点创建,添加自己关注的监控指标,此时监控graph就有了自己新加的了
参考文章
https://blog.csdn.net/Hu_wen/article/details/53587250?locationNum=14&fps=1
性能测试之监控--zabbix通过jmx监控tomcat的更多相关文章
- zabbix使用jmx监控tomcat
zabbix监控Tomcat/JVM实例性能(115) – 运维生存时间http://www.ttlsa.com/zabbix/zabbix-use-jmx-monitor-tomcat/ zabbi ...
- zabbix 基于JMX的Tomcat监控
zabbix 基于JMX的Tomcat监控 一.环境 ubuntu14.04 LTS Java 1.7.0 zabbix 2.4.5 二.安装配置 1.安装JavaGateway 在ubuntu14. ...
- zabbix通过jmx监控tomcat
Zabbix版本: Zabbix 3.0.2 一.服务端配置 1.安装jdk(版本1.7.0_79) 安装与配置比较简单,过程省略.执行java -version命令,出现类似界面表示成功. 2. ...
- Zabbix 通过 JMX 监控 java 进程
参考: [ JMX monitoring ] [ Zabbix Java gateway ] [ JMX Monitoring (Java Gateway) not Working ] [ Monit ...
- 监控应用服务器使用JMX监控Tomcat (推荐)
前言:做了一个监控应用服务器的项目(支持Tocmat.WebSphere.WebLogic各版本), 过程也算是磕磕绊绊,由于网上缺少相关资料,或者深陷于知识的海洋难以寻觅到有效的资料,因而走过不少弯 ...
- Java 监控基础 - 使用 JMX 监控和管理 Java 程序
点赞再看,动力无限.Hello world : ) 微信搜「程序猿阿朗 」. 本文 Github.com/niumoo/JavaNotes 和 未读代码网站 已经收录,有很多知识点和系列文章. 此篇文 ...
- zabbix 部署 jmx 监控tomcat
zabbix提供了一个java gateway的应用去监控jmx(Java Management Extensions,即Java管理扩展)是一个为应用程序.设备.系统等植入管理功能的框架.JMX可以 ...
- Tomcat开启JMX监控
搭建模拟环境: 操作系统:centos7内存:1Gjdk:1.8.0_131tomcat:8.0.48 环境准备我们这里就不直接演示了,直接配置tomcat的jmx 1.进入到tomcat的bin目录 ...
- 性能测试之JVM的故障分析工具VisualVM
VisualVM 是随JDK一同发布的jvm诊断工具,通过插件可以扩展很多功能,插件扩展也是其精华所在. 提供了一个可视界面,用于在Java应用程序在Java虚拟机上运行时查看有关Java应用程序的详 ...
随机推荐
- MyBatis练习——使用MyBatis查询所有职员信息
实现要求: 使用MyBatis查询所有职员信息 create table employee( id int not null auto_increment, name varchar(255) not ...
- Java初学者作业——定义客户类(Customer),客户类的属性包括:姓名、年龄、电话、余额、账号和密码;方法包括:付款。
返回本章节 返回作业目录 需求说明: 定义客户类(Customer),客户类的属性包括:姓名.年龄.电话.余额.账号和密码:方法包括:付款. 实现思路: 定义 Customer 类,并添加姓名.余额. ...
- 编写Java程序,观察类启动时静态代码块和main()的执行顺序
返回本章节 返回作业目录 需求说明: 观察类启动时静态代码块和main()的执行顺序 在Book类中定义静态代码块. 在Book中分别定义一个普通实例方法和静态方法. 在Book类的静态代码块中调用静 ...
- 1.spring系列之优雅的实现接口统一返回
好处 现在公司开发基本上都是以前后分离模式为主,所以要有个统一的数据格式,这样有什么好处呢? 能够提高前后端对接的效率(特别重要) 代码更加优雅和简洁 对于前端和后端维护更方便容易 实现(直接上代码) ...
- 来自MyBatis不一样收获结果的探索之旅-v3.5.9
概述 定义 MyBatis官网 https://mybatis.org/mybatis-3/ 最新版本为3.5.9 MyBatis是一个的ORM框架,支持自定义SQL.存储过程和高级映射.MyBati ...
- java 短路与(||)时报错The operator || is undefined for the argument type(s) int, boolean
今天在使用短路与时,报错The operator || is undefined for the argument type(s) int, boolean 代码如下: 最后发现是少了一个=,比较要使 ...
- PPT制作手机滑动粗糙效果
原文链接:https://www.toutiao.com/i6495291974680052238/ 选择"插入"选项卡,"插图"功能组."形状&qu ...
- Java对象内存模型
2 Java对象内存模型 在HotSpot虚拟机中,对象在内存中存储的布局可以分为3块区域:对象头(Header). 实例数据(Instance Data)和对齐填充(Padding). 在 JVM ...
- Linux防止文件被误删除或修改
chattr简介 Linux没有回收站,一旦文件或文件夹被误删除,要寻找回来很麻烦,不如事先对一些重要的文件做一些保护,这时我们需要一个命令chattr,其使用格式为 chattr 操作符 属性 文件 ...
- Boost下载安装
下载解压 官方地址 wget https://dl.bintray.com/boostorg/release/1.72.0/source/boost_1_72_0.tar.gz tar -zxvf b ...