实现zabbix对tomcat的监控

what-zabbix

优点:

1>开源,无软件成本投入

2>Server 对设备性能要求低

3>支持设备多,自带多种监控模板

4>支持分布式集中管理,有自动发现功能,可以实现自动化监控

5>开放式接口,扩展性强,插件编写容易

6>当监控的 item 比较多服务器队列比较大时可以采用被动状态,被监控客户端主动从server 端去下载需要监控的 item 然后取数据上传到 server 端。这种方式对服务器的负载比较小。

7>Api 的支持,方便与其他系统结合

缺点:

1>需在被监控主机上安装 agent,所有数据都存在数据库里,产生的数据很大,瓶颈主要在数据库。

how-zabbix

Zabbix 通过 C/S 模式采集数据,通过 B/S 模式在 web 端展示和配置。

被监控端:主机通过安装 agent 方式采集数据,网络设备通过 SNMP 方式采集数据

Server 端:通过收集 SNMP 和 agent 发送的数据,写入数据库(MySQL,ORACLE 等),

再通过 php+apache 在 web 前端展示

how-to-zabbix-Tomcat


首先我们需要了解一下zabbix和Tomcat的对应关系

1>zabbix_server开启java poller

2>zabbx_java开启JavaGateway,端口为10052

3>Tomcat JMX开启2222提供性能数据。

数据获取:java poller<-->JavaGateway:10052<-->Tomcat:2222.

配置过程

server1(server):

首先先把zabbix搭建起来.

yum install zabbix-server-2.4.5-1.el6.x86_64.rpm zabbix-server-mysql-2.4.5-1.el6.x86_64.rpm zabbix-web-2.4.5-1.el6.noarch.rpm zabbix-web-mysql-2.4.5-1.el6.noarch.rpm zabbix-2.4.5-1.el6.x86_64.rpm php-bcmath-5.3.3-26.el6.x86_64.rpm php-mbstring-5.3.3-26.el6.x86_64.rpm  iksemel-1.4-2.el6.x86_64.rpm fping-2.4b2-16.el6.x86_64.rpm -y

在装zabbix之前确保服务器已经搭建lamp环境.....

安装zabbix后会自动在/etc/httpd/conf.d 中出现zabbix的配置文件

[[email protected] conf.d]# lsphp.conf  README  welcome.conf  zabbix.conf

创建存储zabbix的数据库,用户

mysql> create database zabbix character set utf8 collate utf8_bin;mysql> create  user  [email protected] identified by "miao";Query OK, 0 rows affected (0.00 sec)

mysql> grant all on zabbix.* to [email protected];Query OK, 0 rows affected (0.00 sec)

或者这样创建用户

[[email protected] zabbix]# pwd/etc/zabbix[[email protected] zabbix]# vim .my.cnf

[mysql]host = localhostuser = zabbixpassword = miaosocket = /var/lib/mysql/mysql.sock[mysqladmin]host = localhostuser = zabbixpassword = miaosocket = /var/lib/mysql/mysql.sock

往zabbix数据库导入数据(注意schema必须先导入)

[[email protected] ~]# cd /usr/share/doc/zabbix-server-mysql-2.4.5/create/[[email protected] create]# mysql zabbix <schema.sql[[email protected] create]# mysql zabbix <images.sql[[email protected] create]# mysql zabbix <data.sql

配置服务端文件

vim /etc/zabbix/zabbix_server.conf

 72  DBHost=localhost 82  DBName=zabbix 98  DBUser=zabbix106  DBPassword=miao

配置服务端agent文件(因为我用的是rpm包,所以必须配置)

vim /etc/zabbix/zabbix_agentd.conf

Hostname=server1.lalala.comServerActive=127.0.0.1Server=127.0.0.1

设置php时区,两台主机必须一致,否则出错

vim /etc/php.ini

date.timezone = Asia/Shanghai


启动zabbix


自动注册设备时,需要的配置



zabix配置完毕,下面是监控tomcat的配置

vim /etc/zabbix/zabbix_server.conf    激活zabbix的JavaGateway模块

589 JavaGateway=127.0.0.1590 JavaGatewayPort=10052    591 StartJavaPollers=5

vim zabbix_java_gateway.conf

589 JavaGateway=127.0.0.1590 JavaGatewayPort=10052591 StartJavaPollers=5
[[email protected] zabbix]# /etc/init.d/zabbix-agent restart[[email protected] zabbix]# /etc/init.d/zabbix-server restart[[email protected] zabbix]#/etc/init.d/zabbix-java-gateway start



可以看到zabbix-java-gateway正常启动(10052)


server2(client):

yum install zabbix-agent-2.4.5-1.el6.x86_64.rpm zabbix-2.4.5-1.el6.x86_64.rpm -y

vim /etc/zabbix/zabbix_agentd.conf

 85 Server=172.25.88.1126 ServerActive=172.25.88.1135  Hostname=server2.lalala.com

zabbix-agent配置完毕,下面是监控tomcat的配置

yum install java-1.6.0-openjdk.x86_64 -y tar zxf apache-tomcat-7.0.37.tar.gz

vim /root/apache-tomcat-7.0.37/bin/catalina.sh

CATALINA_OPTS="-Dcom.sun.management.jmxremote  -Dcom.sun.management.jmxremote.port=2222  -Dcom.sun.management.jmxremote.ssl=false  -Dcom.sun.management.jmxremote.authenticate=false"

设置server2 基于JVM(tomcat)的IP和端口

别忘了添加JMX的模板!

开启tomcat,并查看日志,tomcat正常启动.....

查看端口2222,java poller也正常启动

最后发现JVM的小绿灯也亮起来啦,而且有图像,成功!!!!

时间: 2024-10-06 00:28:50

实现zabbix对tomcat的监控的相关文章

zabbix添加Tomcat监控

参靠了网上一些关于zabbix添加Tomcat的监控配置,自己整理了下: 一.服务器端配置1.找到zabbix源码存放路径 # find / -name zabbix_java #/usr/local/src/zabbix-2.2.6/src/zabbix_java 2.安装Zabbix-Java-gateway # cd /usr/local/src/zabbix-2.2.6 # ./configure --enable-java --prefix=/usr/local/zabbix/zabb

zabbix监控安装及实现对tomcat服务器监控

一.zabbix监控安装配置实现对本机的监控 监控端ip 192.168.1.11 被监控端ip 192.168.1.12 1.zabbix相关包的安装 1)zabbix的仓库源配置 [email protected]:~# wget https://repo.zabbix.com/zabbix/4.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.0-2+bionic_all.deb 2)安装zabbixx-release_4.0-2+b

14、Zabbix如何使用JMX监控

JMX(Java Management Extensions,即Java管理扩展)是java平台上为应用程序.设备.系统等植入管理功能的框架. JMX工作原理:  zabbix_server想知道一台主机上的特定的JMX值时,它向Zabbix-Java-gateway询问,而Zabbix-Javagateway使用"JMXmanagementAPI"去查询特定的应用程序,而前提是应用程序这端在开启时需要"-Dcom.sun.management.jmxremote"

分布式系统监视zabbix讲解十之监控tomcat--技术流ken

前言 在Zabbix中,JMX监控数据的获取由专门的代理程序来实现,即Zabbix-Java-Gateway来负责数据的采集,Zabbix-Java-Gateway和JMX的Java程序之间通信获取数据 安装tomcat 准备 关闭防火墙和selinux [[email protected] ~]# systemctl stop firewalld && setenforce 0 第一步:首先需要准备下面的两个包,可在网上下载 第二步:上传至linux,移动到/usr/local下面并解压

8、zabbix监控方式及分布式监控(04)

zabbix支持的监控方式 zabbix所能够显示的且可指定为监控接口类型的监控方式: Agent passive active SNMP:Simple Network Management Protocol 基于SNMP协议实现的监控,不需要特意在被监控端安装zabbix-agent,SNMP一般用在无法在被监控端安装zabbix-agent的时候,比如打印机.路由器 MIB.SMI.SNMP(v1.v2.v3) IPMI:智能平台管理接口(Intelligent Platform Manag

zabbix自动发现与监控内存和CPU使用率最高的进程

监控需求 某项目的应用服务器CPU和内存使用率的监控,通过zabbix系统监控记录应用服务器上进程的CPU和内存的使用情况,并以图表的形式实时展现,以便于我们分析服务器的性能瓶颈. 监控方式 利用zabbix监控系统的自动发现功能,首先编写shell脚本获取服务器的CPU和内存资源使用率最大的进程,以json的格式输出,然后对这些进程的CPU和内存资源使用情况进行监控.(本文监控的进程为Linux服务器中资源使用率最高的10个进程.) 缺点 不适用于监控固定的进程 首先使用top命令查看进程状态

zabbix专题:第十章 zabbix之SNMP方式监控

zabbix专题:第十章 zabbix之SNMP方式监控 (SNMP基本都是监控网络设备,本文介绍点理论知识) 概述 如果我们需要监控打印机.路由器.UPS等设备,肯定不能使用zabbix agentd,因为他们不能安装软件的,还好他们一般都支持SNMP协议,这样我可以使用SNMP来监控他们.如果你希望使用SNMP agent来获取这些设备的信息,那么在安装zabbix server的时候你需要增加snmp的支持. 备注:SNMP检查基于UDP协议 配置SNMP监控 使用SNMP来监视设备,需要

Zabbix 3.0 部署监控 [三]

Zabbix 3.0 部署监控 [三] zabbix 时间:2016年9月22日 笔者QQ:381493251 Abcdocker交流群:454666672 如果遇到什么问题可以进群询问,我们是一个乐于帮助的集体! Dashboard首页信息介绍 Status of Zabbix(Zabbix状态)介绍 Zabbix server is running                           #Zabbix服务器是否运行 Number of hosts (enabled/disabl

如何从Zabbix数据库中获取监控数据

做过Zabbix的同学都知道,Zabbix通过专用的Agent或者SNMP收集相关的监控数据,然后存储到数据库里面实时在前台展示.Zabbix监控数据主要分为以下两类: 历史数据:history相关表,从history_uint表里面可以查询到设备监控项目的最大,最小和平均值,即存储监控数据的原始数据. 趋势数据:trends相关表,趋势数据是经过Zabbix计算的数据,数据是从history_uint里面汇总的,从trends_uint可以查看到监控数据每小时最大,最小和平均值流量. Zabb