前言

在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. numpy 与 matplotlib 的应用

    numpy 与 matplotlib 的应用 一.库函数介绍 1. numpy库 NumPy(Numeric Python)提供了一个N维的数组类型ndarray,Numpy底层使用C语言编写,内部解 ...

  2. 携带cookie的跨域访问

    携带cookie的跨域解决方案 有的时候访问后台的请求需要携带cookie以供后台分析,比如jQuery的ajax请求: $.ajax({ url: a_cross_domain_url, xhrFi ...

  3. ubuntu16 gitlab的简单安装

    1.安装好ubuntu的ssh服务,使用xshell登录虚拟机 2.下载安装包:  wget -c https://downloads-packages.s3.amazonaws.com/ubuntu ...

  4. MyBatis的好处及常见问题

    好处 MyBatis持久层框架,它对jdbc的操作数据库的过程进行封装,使开发者只需要关注 SQL 本身,而不需要花费精力去处理例如注册驱动.创建connection.创建statement.手动设置 ...

  5. 简单css实现input提示交互动画效果

    通过基础CSS实现输入提示交互动画效果,并兼容各浏览器! 1.效果展示 2.css代码 h4 { margin: 30px 0; } input { margin:; font-size: 16px; ...

  6. day21_雷神_django第四天

    django第四天 1.form组件 解决两个事情: 不想重复提交,数据重置: 校验规则 流程: (1) 创建form组件对应的类,比如LoginForm (2) views.login: if ge ...

  7. Java基础巩固——异常

    基础回顾 什么是异常? 在Java程序运行时,常常会出现一些非正常的现象,这种情况称为运行错误.根据其性质可以分为错误和异常. Java程序中所有抛出的异常都必须从Throwable派生而来.类Thr ...

  8. 项目Alpha冲刺(团队6/10)

    项目Alpha冲刺(团队6/10) 团队名称: 云打印 作业要求: 项目Alpha冲刺(团队) 作业目标: 完成项目Alpha版本 团队队员 队员学号 队员姓名 个人博客地址 备注 221600412 ...

  9. IM群聊消息究竟是存1份(即扩散读)还是存多份(即扩散写)?

    1.前言 IM的群聊消息,究竟存1份(即扩散读方式)还是存多份(即扩散写方式)? 上一篇文章<IM群聊消息的已读回执功能该怎么实现?>是说,“很容易想到,是存一份”,被网友们骂了,大家争论 ...

  10. .net core 发布linux报错“The configured user limit (128) on the number of inotify instances has been reached”

    https://stackoverflow.com/questions/45875981/error-while-reading-json-file-in-dotnet-core-the-config ...