前言

在Zabbix中,JMX监控数据的获取由专门的代理程序来实现,即Zabbix-Java-Gateway来负责数据的采集,Zabbix-Java-Gateway和JMX的Java程序之间通信获取数据

安装tomcat

准备

关闭防火墙和selinux

[root@proxy ~]# systemctl stop firewalld && setenforce 

第一步:首先需要准备下面的两个包,可在网上下载

第二步:上传至linux,移动到/usr/local下面并解压

[root@proxy ~]# rz
z waiting to receive.**B0100000023be50
[root@proxy ~]# ls
anaconda-ks.cfg create.sql jdk-linux-x64.tar.gz original-ks.cfg test.sh
apache-tomcat-7.0..tar.gz create.sql.gz ks-pre.log schema.sql zabbix.sh
[root@proxy ~]# mv jdk-linux-x64.tar.gz /usr/local
[root@proxy ~]# mv apache-tomcat-7.0..tar.gz /usr/local
[root@proxy local]# tar xf apache-tomcat-7.0..tar.gz
[root@proxy local]# tar xf jdk-linux-x64.tar.gz

第三步:做软连接

[root@proxy local]# ln -s apache-tomcat-7.0. tomcat
[root@proxy local]# ln -s jdk1..0_131 java

第四步:编辑tomcat配置文件。添加如下几行

...[root@proxy local]# vim tomcat/bin/startup.sh
# -----------------------------------------------------------------------------
# Start Script for the CATALINA Server
# -----------------------------------------------------------------------------
export JAVA_HOME=/usr/local/java
export TOMCAT_HOME=/usr/local/tomcat
export CATALINA_HOME=/usr/local/tomcat
export CLASS_PATH=/usr/local/java/jre/lib/:/usr/local/java/lib/tools.jar
export PATH=$PATH:/usr/local/tomcat/bin/:/usr/local/java/bin/ # Better OS/ detection: see Bugzilla ...

第五步:启动tomcat

[root@proxy local]# tomcat/bin/startup.sh
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr/local/java
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
[root@proxy local]# ss -tnl | grep
LISTEN ::: :::*

第六步:页面测试

在浏览器输入ip:8080 看到如下界面即为成功

安装java-gateway及配置

第一步:安装zabbix-java-gateway

[root@proxy ~]# yum install zabbix-java-gateway -y

第二步:配置zabbix-java-gateway文件

[root@proxy ~]# vim /etc/zabbix/zabbix_java_gateway.conf 
...
### Option: zabbix.listenIP
# IP address to listen on.
#
# Mandatory: no
# Default:
LISTEN_IP="10.220.5.138" #监听的本机IP ### Option: zabbix.listenPort
# Port to listen on.
#
# Mandatory: no
# Range: -
# Default:
LISTEN_PORT=10052 #监听的端口
...

第三步:重启zabbix-java-gateway

[root@proxy ~]# systemctl restart zabbix-java-gateway
[root@proxy ~]# ss -tnl | grep
LISTEN ::ffff:10.220.5.138: :::*

配置zabbix-server文件

第一步:现在修改zabbix-server的配置文件,即zabbix监控端,因为要指定java-gateway的地址

[root@server ~]# vim /etc/zabbix/zabbix_server.conf
...
### Option: JavaGateway
# IP address (or hostname) of Zabbix Java gateway.
# Only required if Java pollers are started.
#
# Mandatory: no
# Default:
JavaGateway=10.220.5.138 #指定javagateway的监听地址 ### Option: JavaGatewayPort
# Port that Zabbix Java gateway listens on.
#
# Mandatory: no
# Range: -
# Default:
JavaGatewayPort=10052 #指定监听的端口

### Option: StartJavaPollers
  # Number of pre-forked instances of Java pollers.
  #
  # Mandatory: no
  # Range: 0-1000
  # Default:
  StartJavaPollers=5   #启动5个轮询进程,一定要开启,否则zabbix中JMX不会亮

...

第二步:重启zabbix-server

[root@server ~]# systemctl restart zabbix-server

配置catalina.sh脚本

这是一个远程调试的脚本,我们需要修改它,使得我们能够在window端使用工具来监控。

第一步:配置catalina.sh.这个脚本在tomcat的安装包的目录下.在这个文件添加如下几行

[root@proxy ~]# vim /usr/local/tomcat/bin/catalina.sh
# USE_NOHUP (Optional) If set to the string true the start command will
# use nohup so that the Tomcat process will ignore any hangup
# signals. Default is "false" unless running on HP-UX in which
# case the default is "true"
# -----------------------------------------------------------------------------
CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote #开启远程监控
-Dcom.sun.management.jmxremote.port=12345 #远程监控端口
-Dcom.sun.management.jmxremote.ssl=false #远程ssl为false
-Dcom.sun.management.jmxremote.authenticate=false #关闭权限认证
-Djava.rmi.server.hostname=10.220.5.138" #指定提供数据的IP,即被监控节点 # OS specific support. $var _must_ be set to either true or false.

第二步:重启tomcat

[root@proxy ~]# /usr/local/tomcat/bin/shutdown.sh
[root@proxy ~]# /usr/local/tomcat/bin/startup.sh

windows下监控

第一步:准备下面这个文件。可在网上下载

第二步:windows上安装

输入被监控节点的IP以及端口号为12345

第三步:启动。看到如下界面即为成功。

加入到zabbix监控中

第一步:创建tomcat主机

第二步:选择JMX监控模版并保存

第三步:查看.JMX绿色亮起为正常

分布式系统监视zabbix讲解十之监控tomcat--技术流ken的更多相关文章

  1. 网站集群架构(LVS负载均衡、Nginx代理缓存、Nginx动静分离、Rsync+Inotify全网备份、Zabbix自动注册全网监控)--技术流ken

    前言 最近做了一个不大不小的项目,现就删繁就简单独拿出来web集群这一块写一篇博客.数据库集群请参考<MySQL集群架构篇:MHA+MySQL-PROXY+LVS实现MySQL集群架构高可用/高 ...

  2. 分布式系统监视zabbix讲解七之分布式监控--技术流ken

    分布式监控 概述 Zabbix通过Zabbix proxy为IT基础设施提供有效和可用的分布式监控 代理(proxy)可用于代替Zabbix server本地收集数据,然后将数据报告给服务器. Pro ...

  3. 分布式系统监视zabbix讲解七之分布式监控

    分布式监控 概述 Zabbix通过Zabbix proxy为IT基础设施提供有效和可用的分布式监控 代理(proxy)可用于代替Zabbix server本地收集数据,然后将数据报告给服务器. Pro ...

  4. 分布式系统监视zabbix讲解二之邮件报警通知--技术流ken

    概述 在上一篇博客<分布式系统监视zabbix讲解一技术流ken>中已经详细讲解了如何安装zabbix,本篇博客将详细讲解如何使用zabbix监控另外一台主机,并实现email报警通知机制 ...

  5. 分布式系统监视zabbix讲解二之邮件报警通知

    概述 在上一篇博客<分布式系统监视zabbix讲解一技术流ken>中已经详细讲解了如何安装zabbix,本篇博客将详细讲解如何使用zabbix监控另外一台主机,并实现email报警通知机制 ...

  6. zabbix实现QQ邮件报警通知--技术流ken

    前言 前几天搜了下网上使用zabbix邮件报警通知的文章,大多数还是使用mailx的方法,过程配置起来比较冗余繁琐,这几天想着把自己平时用到的qq邮件报警的方法分享出来供大家参考,以此减少不必要的步骤 ...

  7. 分布式系统监视zabbix讲解八之自动发现/自动注册--技术流ken

    自动发现(LLD) 概述 自动发现(LLD)提供了一种在计算机上为不同实体自动创建监控项,触发器和图形的方法.例如,Zabbix可以在你的机器上自动开始监控文件系统或网络接口,而无需为每个文件系统或网 ...

  8. 分布式系统监视zabbix讲解一之zabbix安装--技术流ken

    zabbix概述 Zabbix是什么 Zabbix 是由Alexei Vladishev创建,目前由Zabbix SIA在持续开发和支持. Zabbix 是一个企业级的分布式开源监控方案. Zabbi ...

  9. 分布式系统监视zabbix讲解八之自动发现/自动注册

    自动发现(LLD) 概述 自动发现(LLD)提供了一种在计算机上为不同实体自动创建监控项,触发器和图形的方法.例如,Zabbix可以在你的机器上自动开始监控文件系统或网络接口,而无需为每个文件系统或网 ...

随机推荐

  1. 关闭iptables服务及命令行连接wifi及locale设置

    Ubuntu系统启动时都会自动启动iptables服务.如果想关闭该服务的自动启动,可以执行: sudo ufw disable 命令行方式连接某个SSID: sudo nmcli d wifi co ...

  2. Java File类与文件IO流总结

    1.File类 File类被定义为“文件和目录路径名的抽象表示形式”,这是因为File类既可以表示“文件”也可以表示“目录”,他们都通过对应的路径来描述.通过构造函数创建一个File类对象,则该对象就 ...

  3. 《HTTP权威指南》1-HTTP概要

    Http HyperText Transfer Protocol,超文本协议通过此协议,我们可以将遍布全世界的Web服务器上的信息块快速,便捷,可靠的搬移到我们自己桌面上的Web浏览器上.这些信息块指 ...

  4. day_6深浅拷贝,元组字典集合类型定义和各种操作方法

    首先我们来讲一下深浅拷贝 1:值拷贝,假设一个列表等于L1 再定义一个L2=L1  这样就是值拷贝 L2只是存的L1存列表的地址,所以当L1发生改变,L2也随之改变 2:浅拷贝,L2=L1.copy( ...

  5. 【webpack】-- 入门与解析

    每次学新东西总感觉自己是不是变笨了,看了几个博客,试着试着就跑不下去,无奈只有去看官方文档. webpack是基于node的.先安装最新的node. 1.初始化 安装node后,新建一个目录,比如ht ...

  6. python爬虫学习之使用XPath解析开奖网站

    实例需求:运用python语言爬取http://kaijiang.zhcw.com/zhcw/html/ssq/list_1.html这个开奖网站所有的信息,并且保存为txt文件. 实例环境:pyth ...

  7. Numpy学习一:ndarray数组对象

    NumPy是Python的一个高性能科学计算和数据分析基础库,提供了功能强大的多维数组对象ndarray.jupyter notebook快速执行代码的快捷键:鼠标点击选中要指定的代码框,Shift ...

  8. python创建数组的方法

    一 直接定义法: 1.直接定义 matrix=[0,1,2,3] 2.间接定义 matrix=[0 for i in range(4)] print(matrix) 二 Numpy方法: Numpy内 ...

  9. ubuntu 16.04 安装matlab的替代工具Octave及使用指南

    为什么要安装Octave? 它是什么? GNU Octave是自由软件基金会(Free Software Foundation)支持的遵循GPL协议(GNU General Public Licens ...

  10. 【design patterns】设计模式

    1.单例设计模式(singleton) 用途举例:对于多个程序使用同一个配置信息对象时比如在连接数据库时使用单例模式,每次只取出一个连接 步骤:①私有化该类的构造函数 ②私有化一个静态的对象 ③公有化 ...