zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。

    zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。由2部分构成,分别为zabbix server与可选组件zabbix agent。


一、准备

安装zabbix 3.0.4需要一些底层环境的支持,对一些依赖包的版本要求如下:

1. 查看当前系统的php版本和curl版本

php -v
curl -V

软件名

版本支持

备注

前端支持

mysql


≥5.0.3

innodb引擎

apache


≥1.3.12


php


≥5.4.0

7以上暂不支持


php扩展


gd

≥2.0


bcmath



session



mbstring



sockets



ldap



libXML

≥2.6.15


web端支持

libssh2


≥1.0


libcurl


≥ 7.20.0


libxml2




net-snmp




zabbix 3.0.4支持的php版本最低要求5.4,但不支持7.0以上版本。

curl支持的最低版本为7.20。所以升级安装前需要先升级这些软件。

2. 安装php

安装php5.6源:

rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm


注:此操作是在centos6上的操作,centos5只能安装5.5版本,下载地址也会有一点变化,el6变为el5。安装的软件版本也要相应改成php55w.xx

安装php5.6

yum install -y php56w.x86_64php56w-bcmath.x86_64 php56w-cli.x86_64 php56w-common.x86_64 php56w-gd.x86_64php56w-ldap.x86_64 php56w-mbstring.x86_64 php56w-mcrypt.x86_64 php56w-mysql.x86_64php56w-pdo.x86_64 php56w-xml.x86_64

升级php的时候可能会报错,根据错误信息判断原因(很可能是版本冲突,卸载掉原来的包再重新安装)。如:

php56w-common conflicts withphp-common-5.3.3-48.el6_8.x86_64

 Youcould try using --skip-broken to work around the problem

 Youcould try running: rpm -Va --nofiles --nodigest

卸载旧版本即可:

yum remove -y php-common

3. 安装curl

安装curl

rpm -ivh  http://mirror.city-fan.org/ftp/contrib/yum-repo/city-fan.org-release-1-13.rhel7.noarch.rpm
yum upgrade libcurl

yum update升级所有包同时也升级软件和系统内核, yum upgrade为只升级所有包,不升级软件和系统内核

centos5上升级curl时可能会出问题,可能系统没有libcurl,所以执行yum upgrade libcurl时会出现如下错误:

wKioL1hXSB-h-9eVAAAO34VS-uE826.png

但系统的curl还是有的,所以这时改执行yum upgrade curl ,会附带将libcurl安装的。

4. 创建zabbix用户和组

groupadd zabbix
useradd zabbix -g zabbix

5. 安装mysql数据库

yum install mysql
/etc/init.d/mysqld start
mysql -uroot
>create database zabbix character set utf8;
>grant privileges on zabbix.* to zabbix@localhost identified by 'zabbix';

也可以源码安装mysql,根据实际情况选择不同的方法,用户授权时主机名也根据实际情况做修改,如果mysql和zabbix server是同一主机,则写localhost即可,如果mysql在不同主机,则需写相应ip。

6. 安装http

yum install http
/etc/init.d/httpd start


二、安装zabbix server

1. 下载源码包并解压

cd /usr/local/src
wget http://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.0.4/zabbix-3.0.4.tar.gz
 tar zxf zabbix-3.0.4.tar.gz

2. 编译安装

cd zabbix-3.0.4
./configure--prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --enable-ipv6 --with-libxml2

prefix=/usr/local/zabbix为指定安装目录为/usr/local/zabbix

enable-server为安装zabbix服务端程序

enable-agent为安装agent程序

with-mysql为使用mysql数据库

enable-ipv6为启用ipv6支持

with-net-snmp为启用snmp支持

with-libcurl为启用curl

with-libxml2编译xml模块,主要用于监控vm虚拟机

由于zabbix server也需要监控自身主机,所以在编译安装zabbix server时也添加--enable-agent选项。

make
make install

3. 导入数据库

mysql -uroot zabbix < database/mysql/schema.sql
mysql -uroot zabbix < database/mysql/p_w_picpaths.sql
mysql -uroot zabbix < database/mysql/data.sql

注意:这三个文件必须按上述顺序导入,否则会出错。

4. 更改配置

(1)添加启动程序到init

cp misc/init.d/fedora/core/zabbix_server/etc/init.d/zabbix_server
cp misc/init.d/fedora/core/zabbix_agentd/etc/init.d/zabbix_agentd
chmod 755 /etc/init.d/zabbix_server
chmod 755 /etc/init.d/zabbix_agentd

对文件里的BASEDIR进行修改:

sed -ir ‘s# BASEDIR=/usr/local#BASEDIR=/usr/local/zabbix#g’ /etc/init.d/zabbix_server
sed -ir ‘s# BASEDIR=/usr/local#BASEDIR=/usr/local/zabbix#g’ /etc/init.d/zabbix_agentd

(2)修改配置文件

sed -i 's/^DBUser=.*$/DBUser=zabbix/g' /usr/local/zabbix/etc/zabbix_server.conf
sed -i 's/^.*DBPassword=.*$/DBPassword=zabbix/g' /usr/local/zabbix/etc/zabbix_server.conf

(3)复制web文件

cp -R frontends/php /var/www/html/zabbix
chown -R apache:apache /var/www/html/zabbix

(4)修改php.ini文件

暂可不用修改,如果在web页面安装有问题再针对问题进行修改。

5. 启动服务

(1)重启httpd服务

/etc/init.d/httld restart

(2)启动zabbix服务

/etc/init.d/zabbix_server start
/etc/init.d/zabbix_agentd start

查看zabbix server日志看是否有错误。

默认zabbix log文件在/tmp/zabbix_server.log,可在zabbix_server配置文件里进行配置

tail -f /tmp/zabbix_server.log

6. web页面安装

在浏览器输入zabbix server的主机ip/zabbix

出现下面页面:

1.

wKioL1hXWBChLlYZAAA5061QvRU072.png


2.

wKioL1hXWBDx5jt5AABjB_19b48173.png


3.

wKiom1hXWBCx2tlYAABMYxencKc958.png


4.

wKiom1hXWBGBtNk5AAA8rexNOU0268.png


5.

wKioL1hXWBGiyy4gAABTSQ83VHY351.png


6.

wKioL1hXWBHTGwNdAABAv57_eYw404.png


出现上图情况,是因为httpweb目录下缺少zabbix的安装配置信息文件,需要点击页面上的下载,下载zabbix.conf.php到本地,然后上传到zabbixserver主机的var/www/html/zabbix/conf/下,重启httpd服务即可。

解决上述问题之后web页面安装也就完成了。可以输入账号密码登录到web页面进行添加监控主机。