实现zabbix对tomcat的监控

what-zabbix
php

优势:
前端

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

2>Server 对设备性能要求低mysql

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

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

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

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

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

缺点:tomcat

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



how-zabbix


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

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

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

再经过 php+apache 在 web 前端展现


wKioL1jrT8PSLKhoAAVBehGeXRY809.png




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的配置文件


[root@server1 conf.d]# ls
php.conf  README  welcome.conf  zabbix.conf


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

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

mysql> grant all on zabbix.* to zabbix@localhost;
Query OK, 0 rows affected (0.00 sec)

或者这样建立用户

[root@server1 zabbix]# pwd
/etc/zabbix
[root@server1 zabbix]# vim .my.cnf

[mysql]
host = localhost
user = zabbix
password = miao
socket = /var/lib/mysql/mysql.sock
[mysqladmin]
host = localhost
user = zabbix
password = miao
socket = /var/lib/mysql/mysql.sock


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


[root@server1 ~]# cd /usr/share/doc/zabbix-server-mysql-2.4.5/create/
[root@server1 create]# mysql zabbix <schema.sql
[root@server1 create]# mysql zabbix <p_w_picpaths.sql
[root@server1 create]# mysql zabbix <data.sql


配置服务端文件

 vim /etc/zabbix/zabbix_server.conf

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


配置服务端agent文件(由于我用的是rpm包,因此必须配置)

vim /etc/zabbix/zabbix_agentd.conf

Hostname=server1.lalala.com
ServerActive=127.0.0.1
Server=127.0.0.1


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

vim /etc/php.ini

date.timezone = Asia/Shanghai


启动zabbix

wKiom1jrQ9ihTPiKAAIDok8Eo04105.png


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


wKioL1jrQ9jyO_pRAABHYNxkcgM223.png


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


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

589 JavaGateway=127.0.0.1
590 JavaGatewayPort=10052  
591 StartJavaPollers=5


vim zabbix_java_gateway.conf

589 JavaGateway=127.0.0.1
590 JavaGatewayPort=10052
591 StartJavaPollers=5
[root@server1 zabbix]# /etc/init.d/zabbix-agent restart
[root@server1 zabbix]# /etc/init.d/zabbix-server restart
[root@server1 zabbix]#/etc/init.d/zabbix-java-gateway start



能够看到zabbix-java-gateway正常启动(10052)


wKiom1jrQ9mR_n4UAAB1ppq2_Gw658.png






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.1
126 ServerActive=172.25.88.1
135  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和端口


wKioL1jrRgaRA5PBAABNistEOqo882.png



别忘了添加JMX的模板!


wKiom1jrRgbhOpTbAACAXVdvGYc235.png



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


wKioL1jrQ9iSHSBDAADKunM3f9E912.png




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


wKiom1jrQ9mBfCoxAAA-q_F4kDw360.png




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



wKioL1jrQ9qh0C47AAG_GB6f1nA685.png

wKiom1jrQ9qjiwA4AACXsNWtRPY540.png

相关文章
相关标签/搜索