Zabbix介绍:

1.1 Zabbix是一个企业级的开源分布式监控解决方案,由一个国外的团队持续维护更新,可以自由下载使用,运作团队靠提供收费的技术支持赢利。

zabbix是一个C/S结构的监控系统,server端侦听在10051端口,客户端侦听在10050端口,用户界面使用php开发,数据存储在MySQL里面。Zabbix通过C/S模式采集数据,通过B/S模式在web端展示和配置。

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

Server端:通过收集SNMP和agent发送的数据,写入MySQL数据库,再通过Apache等软件在web前端显示

Server:Zabbix Server 需运行在LAMP(Linux+Apache+MySQL+PHP)环境下,对硬件要求低

Agent:目前已有的agent基本支持市面上常见的OS,包涵Linux、HPUX、Solaris、Sun、Windows

SNMP:支持各类常见的网络设备

1.2 zabbix功能

具备常见的商业监控软件所具备的功能;(主机的性能监控、网络设备性能监控、数据库性能监控、FTP等通讯协议的监控、多种告警方式、详细的报表图表绘制)。

支持自动发现网络设备和服务器;

支持分布式,能集中显示、管理分布式的监控点;

支持polling和trapping机制;

扩展性强,server提供通用接口,可以自己开发完善各类监控。

无代理监控;
有安全的用户认证功能;
可灵活地分配用户权限;
基于web的接口;
可灵活地预定网络事件并使用邮件通知;
高等级的资源监控;
日志审计功能;

1.3 优劣势

优点:开源,无软件成本投入 Server对设备性能要求低

支持设备多 支持分布式集中管理 开放式接口,扩展性强

缺点:全英文,界面不友好 数据量太大时,清理不是很方便

一 软件环境

rhel-server-6.3-x86_64 zabbix-2.0.2.tar.gz

httpd-2.2.15 (自带)php-5.3.3 (自带)

mysql-5.1.61 (自带)

服务器:172.168.6.2

客户端:172.168.6.3

二、服务器安装lamp

[root@localhost ~]# yum install mysql-server mysql-devel libcurl-devel net-snmp-devel php php-gd php-xml php-mysql php-mbstring php-bcmath httpd -y

1、编译zabbix:

[root@localhost ~]# tax xf zabbix-2.0.2.tar.gz

[root@localhost ~]# cd zabbix-2.0.2

[root@localhost ~]#./configure --enable-server --enable-agent --enable-proxy --with-mysql --enable-ipv6 --with-libcurl --with-net-snmp

#这里将zabbix服务器与客户端安装在同一个机器上的配置:

[root@localhost ~]# Make install

2、添加用户

[root@localhost ~]# groupadd zabbix

[root@localhost ~]# useradd zabbix -g zabbix

三、配置zabbix

1.配置mysql

[root@localhost ~]#mysqladmin -uroot -p password ‘123123’ #mysql设置密码123123

[root@localhost ~]#mysql -uroot –p123123

[root@localhost ~]#mysql> create database zabbix character set utf8; #建立zabbix数据库

[root@localhost ~]#mysql> grant all on zabbix.* to zabbix@'%' identified by '123123';

#授权zabbix数据库里面的所有表给通过远程zabbix用户登录的所有权限

[root@localhost ~]#mysql>flush privileges;

将数据导入mysql:schema.sql--- p_w_picpaths.sql---data.sql

[root@localhost ~]#mysql -uzabbix –p123123 zabbix < schema.sql

[root@localhost ~]#mysql –uzabbix –p123123 zabbix <p_w_picpaths.sql

[root@localhost ~]#mysql –uzabbix –p123123 zabbix < data.sql

服务器端配置文件/usr/local/zabbix/etc/zabbix_server.conf需要修改的有:使用mysql作为数据库,则需要指定数据库名称,用户及密码。

四、配置web安装

[root@localhost ~]#mkdir /var/www/html/zabbix/

[root@localhost ~]#cp -rfa frontends/php/* /var/www/html/zabbix/

修改文件/etc/php.ini

max_execution_time = 300

max_input_time = 300

date.timezone =Asia/Shanghai

mbstring.func_overload = 2

[root@localhost ~]#sed -i 's/^\(.*\)date.timezone =.*$/date.timezone = Asia\/Shanghai/g' /etc/php.ini

[root@localhost ~]#sed -i 's/^\(.*\)post_max_size =.*$/post_max_size = 16M/g' /etc/php.ini

[root@localhost ~]#sed -i 's/^\(.*\)max_execution_time =.*$/max_execution_time = 300/g' /etc/php.ini

[root@localhost ~]#sed -i 's/^\(.*\)max_input_time =.*$/max_input_time = 300/g' /etc/php.ini

[root@localhost ~]#cp misc/init.d/fedora/core5/zabbix_* /etc/init.d/

[root@localhost ~]#chmod -R 777 /var/www/html/zabbix/conf

打开源码包目录下面的misc/init.d/选择对应的系统版本,将启动文件复制到/etc/init.d下面

我的系统是rhel6的,但是里面没有redhat目录因此misc/init.d/fedora/core5/zabbix_*
这里面的脚本,注意脚本里面的命令路径要和你的安装路径一致。

五、Http://IP/zabbix web图形下一路安装

 

 

 

 

检查php环境时报错

 

 

 

 

检查没通过 修改/etc/php.ini

max_execution_time = 300

max_input_time = 300

post_max_size = 16M 663 [Date]

;Defines the default timezone used by the date functions

date.timezone = Asia/Shanghai

 

检查发现少装了软件包

rpm -ivh php-mbstring-5.3.3-3.el6_2.8.x86_64.rpm

php-bcmath-5.3.3-3.el6_2.8.x86_64.rpm

php-xml-5.3.3-3.el6_2.8.x86_64

根据报错少装了上面几个软件包缺少的软件包可在http://rpm.pbone.net上面找到。

(如果是编译版PHP的时候出了添加MySQL的扩展外,还需要如下扩展:
    Php BC math:编译php的时候加上--enable-bcmath
    Php mb string:编译php的时候加上--enable-mbstring
     Php GD:编译的时候加上--with-gd)

 

 

装好后的全部通过

 

数据库配置

 

 

主机IP,端口预览配置

 

 

 

 

默认登陆用户名密码是 admin/zabbix

 

 

六、在另一台服务器安装客户端,这次新版本采用源码安装

[root@localhost ~]# groupadd zabbix

[root@localhost ~]# useradd zabbix -g zabbix

[root@localhost ~]# cd /usr/local/src/

[root@localhost src]# tar zxf zabbix-2.0.2.tar.gz

[root@localhost src]# cd zabbix-2.0.2

[root@localhost zabbix-2.0.2]# ./configure --prefix=/usr/local/zabbix --enable-agent

[root@localhost zabbix-2.0.2]# make install

[root@localhost zabbix-2.0.2]# cp misc/init.d/fedora/core/zabbix_agentd /etc/init.d/

[root@localhost zabbix-2.0.2]#sed -i 

's/BASEDIR=\/usr\/local/BASEDIR=\/usr\/local\/zabbix/g' /etc/init.d/zabbix_agentd

[root@localhost zabbix-2.0.2]# vi /usr/local/zabbix/etc/zabbix_agentd.conf

Server=172.168.1.2

Hostname=Zabbix-client

[root@localhost zabbix-2.0.2]# /etc/init.d/zabbix_agentd start

[root@localhost zabbix-2.0.2]# tail -f /tmp/zabbix_agentd.log

七、命令行验证zabbix安装是否正确

a、在命令行输入下列命令,启动zabbix服务器守护程序与zabbix客户端:
/usr/local/zabbix/sbin/zabbix_server
/usr/local/zabbix/sbin/zabbix_agentd
输入netstat -tunlp | grep zabbix,有类似下面输出,说明zabbix正常启动:'

tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 26828/sbin/zabbix_a

tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 26772/sbin/zabbix_s
c、在命令行输入/usr/local/zabbix/bin/zabbix_get -s 127.0.0.1 -k agent.hostname。如果输出Zabbix server,证明zabbix服务器端跟客户端可以正常通信*