前言

在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. Storm知识点笔记

    Spark和Storm Spark基于MapReduce算法实现的分布式计算,不同于MapReduce的是,作业中间结果可以保存在内存中,而不要再读写HDFS, Spark适用于数据挖掘和机器学习等需 ...

  2. [转] External(and Live) snapshots with libvirt

    http://kashyapc.com/ Raw image is a blob of data exposed directly in VM as block device, it can't sn ...

  3. MySQL--MHA原理

    ##==============================================================##MHA(Master High Availability)是一种My ...

  4. Dubbo 源码分析 - 服务调用过程

    注: 本系列文章已捐赠给 Dubbo 社区,你也可以在 Dubbo 官方文档中阅读本系列文章. 1. 简介 在前面的文章中,我们分析了 Dubbo SPI.服务导出与引入.以及集群容错方面的代码.经过 ...

  5. SQL 将查询结果插入到另一张表中

    INSERT INTO (1) 如果两张表(导出表和目标表)的字段一致,并且希望插入全部数据,可以用这种方法: INSERT INTO 目标表 SELECT * FROM 来源表 WHERE 条件; ...

  6. Spring boot 内置tomcat禁止不安全HTTP方法

    Spring boot 内置tomcat禁止不安全HTTP方法 在tomcat的web.xml中可以配置如下内容,让tomcat禁止不安全的HTTP方法 <security-constraint ...

  7. 《http权威指南》读书笔记15

    概述 最近对http很感兴趣,于是开始看<http权威指南>.别人都说这本书有点老了,而且内容太多.我个人觉得这本书写的太好了,非常长知识,让你知道关于http的很多概念,不仅告诉你怎么做 ...

  8. SpringAop实操之记录关键业务请求数据

    AOP,中文名称,切面.在不影响业务代码情况下,实现想要的功能,是个真炫酷的事. aop是个好东西,记录日志是必须的. 记录数据也一样的,那么也是可以用aop来实现的,这里借助注解一起解决问题吧. 因 ...

  9. Redis 常用操作命令,非常详细!

    下面总结并演示了 Redis 的 常用管理命令.key 操作.字符串.集合.列表.散列类型的操作命令. 你需要掌握的 Redis 知识 史上最全 Redis 高可用解决方案总结 为什么分布式一定要有R ...

  10. spring boot -整合Ehcahe

    <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring- ...