實現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 前端展示


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


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章