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 前端展現
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.
首先先把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
自動註冊設備時,須要的配置
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)
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和端口
別忘了添加JMX的模板!
開啓tomcat,並查看日誌,tomcat正常啓動.....
查看端口2222,java poller也正常啓動
最後發現JVM的小綠燈也亮起來啦,並且有圖像,成功!!!!