前言

在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. yum安装常用工具命令

    树状目录结构(tree) yum install tree 上传下载工具(rz和sz) yum install lrzsz -------------------------------------- ...

  2. REdis zset和double

    平台:x86_64 结论:Zset的最大分数不要超过18014398509481982(17位数字,54位二进制),否则不会得到期望的值. REdis:5.0.4 Zset采用double存储分数值( ...

  3. Spring——事务

    Spring事务 事务的ACID特性 原子性(Atomicity):在事务中的操作,要么都执行,要么都不执行! 一致性(Consistency):数据从一种状态,同时到达另一种状态. 持久性(Dura ...

  4. vue组件自定义属性命名

    今天自己写vue组件demo的时候发现一个有趣的问题:vue组件自定义属性命名不支持用驼峰命名! 上面图示为正常情况下的自定义属性,没有任何问题. 但是一旦出现自定义属性中包含了大写字母,则如下图所示 ...

  5. Java变成思想--多线程

    Executor :线程池 CatchedThreadPool:创建与所需数量相同的线程,在回收旧线程是停止创建新县城. FixedThreadPool:创建一定数量的线程,所有任务公用这些线程. S ...

  6. Requests+正则表达式抓取猫眼电影TOP100

    spider.py # -*- coding:utf-8 -*- import requests import re import json import codecs from requests.e ...

  7. Drools为什么没有规则流Flow Flie

    哪个大神能告诉我,我安装的是Drools7.7.0,为什么没有网上说的flow file啊?怎么才能出来规则流呢? 上图是我本地的显示,下图是网上的图片.

  8. easyui 日期控件,选择日期小于等于当前日期,开始日期小于等于结束日期

    转载出处:http://blog.csdn.net/u013755149/article/details/76613028 $(function(){ $('#start_date').datebox ...

  9. DB2日常维护常用命令

    1.检查是否有僵尸进程 ps -emo THREAD | grep -i Z | grep -i 实例名 2.处理死锁  --第一步:查看所有死锁  db2 get snapshot for lock ...

  10. socket实现FTP上传下载功能

    '''服务器端''' 1 _author__ = "Dbass" import socketserver import json,os class MyTCPHandler(soc ...