前提:

已经安装好了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的更多相关文章

  1. zabbix使用jmx监控tomcat

    zabbix监控Tomcat/JVM实例性能(115) – 运维生存时间http://www.ttlsa.com/zabbix/zabbix-use-jmx-monitor-tomcat/ zabbi ...

  2. zabbix 基于JMX的Tomcat监控

    zabbix 基于JMX的Tomcat监控 一.环境 ubuntu14.04 LTS Java 1.7.0 zabbix 2.4.5 二.安装配置 1.安装JavaGateway 在ubuntu14. ...

  3. zabbix通过jmx监控tomcat

    Zabbix版本: Zabbix 3.0.2 一.服务端配置 1.安装jdk(版本1.7.0_79) 安装与配置比较简单,过程省略.执行java -version命令,出现类似界面表示成功.   2. ...

  4. Zabbix 通过 JMX 监控 java 进程

    参考: [ JMX monitoring ] [ Zabbix Java gateway ] [ JMX Monitoring (Java Gateway) not Working ] [ Monit ...

  5. 监控应用服务器使用JMX监控Tomcat (推荐)

    前言:做了一个监控应用服务器的项目(支持Tocmat.WebSphere.WebLogic各版本), 过程也算是磕磕绊绊,由于网上缺少相关资料,或者深陷于知识的海洋难以寻觅到有效的资料,因而走过不少弯 ...

  6. Java 监控基础 - 使用 JMX 监控和管理 Java 程序

    点赞再看,动力无限.Hello world : ) 微信搜「程序猿阿朗 」. 本文 Github.com/niumoo/JavaNotes 和 未读代码网站 已经收录,有很多知识点和系列文章. 此篇文 ...

  7. zabbix 部署 jmx 监控tomcat

    zabbix提供了一个java gateway的应用去监控jmx(Java Management Extensions,即Java管理扩展)是一个为应用程序.设备.系统等植入管理功能的框架.JMX可以 ...

  8. Tomcat开启JMX监控

    搭建模拟环境: 操作系统:centos7内存:1Gjdk:1.8.0_131tomcat:8.0.48 环境准备我们这里就不直接演示了,直接配置tomcat的jmx 1.进入到tomcat的bin目录 ...

  9. 性能测试之JVM的故障分析工具VisualVM

    VisualVM 是随JDK一同发布的jvm诊断工具,通过插件可以扩展很多功能,插件扩展也是其精华所在. 提供了一个可视界面,用于在Java应用程序在Java虚拟机上运行时查看有关Java应用程序的详 ...

随机推荐

  1. nssm常用命令(在Windows系统下安装服务的工具)

    nssm install servername //创建servername服务 nssm start servername //启动服务 nssm stop servername //暂停服务 ns ...

  2. HTML5 纯CSS3实现div按照顺序出入效果

    效果: 源代码: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> < ...

  3. 使用jQuery 中的显示与隐藏动画效果实现折叠下拉菜单的收缩和展开,在页面的列表中有若干项,列表的每项中有一个二级列表,二级列表默认为隐藏状态。点击列表的项,切换二级列表的显示或隐藏状态

    查看本章节 查看作业目录 需求说明: 使用jQuery 中的显示与隐藏动画效果实现折叠下拉菜单的收缩和展开,在页面的列表中有若干项,列表的每项中有一个二级列表,二级列表默认为隐藏状态.点击列表的项,切 ...

  4. Chrome - XPath Helper插件 使用手工拖拽方式无法正常安装的解决办法

    安装前准备: (1)下载 XPath Helper资源: 链接: https://pan.baidu.com/s/1yEnngIJz8fT9fNv3aHhs7w 提取码: afy3 (2)Chrome ...

  5. 使用 Docker 部署 Seata Server(分布式事务解决方式)

    1.获取镜像 ## 使用下面命令获取最新版本的镜像,此时我的版本是1.3.0 ## 或者可以使用docker pull seataio/seata-server:latest获取最新的镜像 docke ...

  6. Nginx 管理可视化神器!通过界面完成配置监控,一条龙

    作者:Posted 来源:https://leanote.zzzmh.cn/blog/post/5cc7f63616199b068300001c   https://mp.weixin.qq.com/ ...

  7. 2.OSI各层概述

    应用层 1.用户与网络的界面,所有能和用户交互产生网络流量的程序 典型应用层服务:FTP.SMTP.HTTP 表示层 1.用于处理在两个通信系统中交换信息的标识方式 功能1:数据格式变换(翻译) 功能 ...

  8. vue2.0中实现echarts图片下载-----书写中

    由于各个版本浏览器兼容性不一,所以,我们需要一个判断浏览器类型的函数来对不同的浏览器做不同的处理. 获取浏览器版本的函数 // 判断浏览器类型 IEVersion () { let userAgent ...

  9. POJ2891Strange Way to Express Integers

    http://poj.org/problem?id=2891 实际上就是一个一元线性同余方程组.按照合并的方式来解即可. 有一个注意点,调用函数是会慢的. #include<iostream&g ...

  10. Ubuntu16安装Nvidia驱动(GTX1060显卡)

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...