Zabbix版本: Zabbix 3.0.2

一、服务端配置
1、安装jdk(版本1.7.0_79)
安装与配置比较简单,过程省略。执行java -version命令,出现类似界面表示成功。
 
2、安装Zabbix-Java-gateway
Zabbix2.0起添加了支持用于监控JMX应用程序的服务进程,称为“Zabbix-Java-gateway”,它是用java写的一个程序。
有两种方法可以安装Zabbix-Java-gateway,第1种是编译安装zabbix时添加--enable java参数。第2种是单独安装,步骤如下:
# tar zxvf zabbix-3.0..tar.gz
# cd zabbix-3.0.
# ./configure --enable-java --prefix=/data/zabbix/zabbix_java #/data/zabbix是我的zabbix安装目录
# make && make install
3、修改Java-gateway的配置文件并启动它
配置文件路径为/data/zabbix/zabbix_java/sbin/zabbix_java/settings.sh
启用以下参数:
LISTEN_IP="0.0.0.0"       #监听地址
LISTEN_PORT= #监听端口
START_POLLERS= # 开启的工作线程数(必须大于等于后面zabbix_server.conf文件的StartJavaPollers参数)
进入/data/zabbix/zabbix_java/sbin/zabbix_java目录,执行
./startup.sh
检查端口是否监听:
# netstat -anp|grep
tcp 0.0.0.0: 0.0.0.0:* LISTEN /java

4、修改zabbix_server的配置文件并重启

JavaGateway=127.0.0.1                     # JavaGateway 服务器地址,zabbix_server与zabbix_java_gateway在同一台主机
JavaGatewayPort= #端口
StartJavaPollers=

重启zabbix_server

# /etc/init.d/zabbix_server restart
二、客户端配置
1、给tomcat启动脚本添加参数,开启JMX
修改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= #定义jmx监听端口
-Djava.rmi.server.hostname=客户端IP"
2、下载catalina-jmx-remote.jar
将下载后后的jar包放到被监控的tomcat实例的lib目录下。
3、重启tomcat
4、测试是否可以获取数据
命令行下测试需要cmdline-jmxclient-0.10.3.jar这个包,测试结果如下:
 
三、导入模板,添加监控
从网上下载了一个不错的模板,导入后如下:
添加主机,关联模板,出图,效果如下:
 
四、如何监控单主机多个tomcat
监控多个tomcat实例,网上的详细的配置文档很少,几乎没有。比较好的办法是使用自动发现,但刚使用zabbix,来不及研究,所以采用笨法,修改模板、监控项、图形来达到最终目的。
关键配置:
1、添加主机时添加多个jmx端口
2、修改监控项、键值
在同一主机上,zabbix不允键值重复,但是监控的项目是一样的,不可能键值写的不重复,经过几番搜索,找到方法如下:
只要在箭头处添加1个空格就可以,也可以是多个。(注意位置不要错,在逗到后面)
剩下的就是体力活了,复制监控项、修改监控项、复制图形、修改图形。。。
以下是两个tomcat实例的监控项:
 
最后的监控效果如下:
 
 
其它图形就不一一展示了。
 

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

  3. 性能测试之监控--zabbix通过jmx监控tomcat

    前提: 已经安装好了zabbix server 实验环境 Centos 7 Zabbix 3.0 Tomcat 7.0 JDK 1.8 安装JDK tar -zxvf jdk-8u181-linux- ...

  4. zabbix 基于JMX的Tomcat监控

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

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

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

  6. linux下利用JMX监控Tomcat

    利用JMX监控Tomcat,就是相当于部署在tomcat上的应用作为服务端,也就是被管理资源的对象.然后通过程序或者jconsole远程连接到该应用上来.远程连接需要服务器端提供ip和port.如果需 ...

  7. Zabbix系列之三——部署JMX监控tomcat

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

  8. zabbix通过jvm监控tomcat

    说明:zabbix是通过jvm工具监控tomcat,zabbix server通过连接jvm代理服务器获取tomcat的各种参数 zabbix server:192.168.1.31 tomcat服务 ...

  9. 009-通过jmx监控tomcat

    前言想理解怎么监控tomcat,必需识下图(图片源出网络) zabbix-Web前端界面,它通过数据库里数据展示.和其它组件不直接关联zabbix-server运行在10051端口,Zabbix-se ...

随机推荐

  1. iOS-开发日志-UIButton

    UIButton属性 1.UIButton状态: UIControlStateNormal          // 正常状态    UIControlStateHighlighted     // 高 ...

  2. mysql学习笔记2

    drop database 数据库名称;————删除数据库 show columns from 数据表名[from 数据库名]:(或者 show columns from 数据库.数据表名:)———— ...

  3. QT5新手上路(1)安装

    这几天学了一下windows下的QT,也不算什么心得吧,就是谈一下我的做法.希望看到这篇随笔的菜鸟们略有所得,少走弯路. 闲话少说,先说安装.首先是选版本,我用的是qt-opensource-wind ...

  4. VMware中Ubuntu忘记密码的解决办法

    在VMware中安装了Ubuntu 11.04,经过了一个长假,再次登录的时候居然进不去了,一开始不知道怎样在虚拟机中进入到Grub启动界面,网上搜索了一番,按照以下步骤重新为用户设定了新密码. 重启 ...

  5. android studio 自动序列化类插件

    https://github.com/mcharmas/android-parcelable-intellij-plugin

  6. object 属性 对象的继承 (原型, call,apply)

    object 为一切对象的基类! 属性:constructor: 对创建对象的函数的引用Prototype: 原型(类型) hasOwnProperty(property):判断对象是否有某个特定的属 ...

  7. jquery完善的处理机制

    使用jQuery选择器不仅比使用传统的getElementById()和getElementsByTagName()函数简洁得多,而且还能避免某些错误.请看下面例子: <script> d ...

  8. 根据日期自增的sql语句

    Insert into wd_orderitem (count , id_dish , state , info , sn , id_order)values(1 , 1000000001 , 3 , ...

  9. C语言和C++中动态申请内存

      在C语言和C++的动态内存的使用方法是不同的,在C语言中要使用动态内存要包含一个头文件即 #include<malloc.h> 或者是#include<stdlib.h>  ...

  10. 在Django中使用Mako模板

    用了一个月后,终于忍受不了Django的模板了.主要原因是模板内不能运行原生的python语句,所以用起来总感觉被人绑住手脚,遍历个字典都要搞半天. 所以决定用第三方的模板.查了一下,django用的 ...