CentOS6 安装部署Zabbix

2017/06/12 posted in  Linux

Zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。

部署LAMP|LNMP环境

由于Zabbix的Web管理页面是由php写的,所以需要服务器PHP环境的支持,Linux部署LAMP或者LNMP的教程很多,在此就不在赘述。
需要注意的是:Zabbix支持的PHP最低版本是PHP5.4,而目前CentOS6中通过yum安装的php版本为5.3,所以最好采用源码编译安装。
当然,如果你觉得自己搞不定源码安装的各种编译参数,本文也给出一种yum安装php5.5版本的方法

Yum 安装PHP5.5

  1. CentOS6安装PHP5.5源 rpm -ivh http://mirror.webtatic.com/yum/el6/latest.rpm
  2. 安装php5.5 yum install php55w php55w-gd php55w-mbstring php55w-mysql php55w-fpm php55w-bcmath php55w-xmlreader php55w-xmlwriter

修改PHP配置,编辑/etc/php.ini,修改下列参数

max_execution_time = 300
max_input_time = 300
memory_limit = 128M
post_max_size = 32M
date.timezone = Asia/Shanghai

zabbix数据库

  1. zabbix-3.2.6下载最新版本的zabbix源码并解压至当前目录
  2. 进入mysql数据库 mysql -u root -p
  3. 创建zabbix数据库 create database zabbix character set utf8;
  4. 创建zabbix用户并给与进入zabbix数据库的权限(用户名:zabbix,密码:123456) `grant all privileges on zabbix.* to zabbix@'%' identified by '123456';
  5. 刷新系统权限表 flush privileges;
  6. 进入之前下载的zabbix源码目录,找到database文件夹,里面有schema.sqlimages.sqldata.sql,将这三个sql文件依次导入之前创建好的zabbix数据库中(PS,请按照schema->images->data的顺序依次导入,否则会出错)

    mysql> use zabbix;
    mysql> source /root/zabbix-3.2.6/database/schema.sql;
    mysql> source /root/zabbix-3.2.6/database/images.sql;
    mysql> source /root/zabbix-3.2.6/database/data.sql;

添加zabbix用户和组

groupadd zabbix
useradd -g zabbix -m zabbix

安装zabbix其他依赖包

yum install net-snmp-devel curl curl-devel mysql-devel

编译安装zabbix

  1. 进入zabbix源码根目录,生成makefile

    ./configure --prefix=/usr/local/zabbix --with-mysql --with-net-snmp --with-libcurl --enable-server --enable-agent --enable-proxy
    
  2. 安装

    make
    make install
    

添加zabbix服务对应的端口

vim /etc/services ##在文件中加入以下端口
zabbix-agent 10050/tcp # Zabbix Agent
zabbix-agent 10050/udp # Zabbix Agent
zabbix-trapper 10051/tcp # Zabbix Trapper
zabbix-trapper 10051/udp # Zabbix Trapper

修改zabbix配置

  1. 修改 /usr/local/zabbix/etc/zabbix_server.conf

    DBName=zabbix #数据库名称
    DBUser=zabbix #数据库用户名
    DBPassword=123456 #数据库密码
    ListenIP=127.0.0.1 #数据库ip地址
    AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts #zabbix运行脚本存放目录
  2. 修改 /usr/local/zabbix/etc/zabbix_agentd.conf

    Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/
    

让zabbix开机启动

  1. 拷贝可执行文件至init.d目录

    cp /usr/local/zabbix/sbin/zabbix_server /etc/rc.d/init.d/zabbix_server  #服务端
    cp /usr/local/zabbix/sbin/zabbix_agentd /etc/rc.d/init.d/zabbix_agentd  #客户端
    
  2. 添加脚本执行权限

    chmod +x /etc/rc.d/init.d/zabbix_server
    chmod +x /etc/rc.d/init.d/zabbix_agentd 
    
  3. 加入开机启动

    chkconfig zabbix_server on
    chkconfig zabbix_agentd on
    
  4. 修改开启启动脚本中zabbix的安装路径,分别用vim打开/etc/rc.d/init.d/zabbix_server和/etc/rc.d/init.d/zabbix_agentd,修改BASEDIR参数为/usr/local/zabbix

    BASEDIR=/usr/local/zabbix/ #zabbix安装目录
    

安装zabbix web管理页面

  1. 拷贝zabbix源码当中的frontends/php下面的所有文件至web服务器的根目录,重启web服务器,如果你的LNMP环境或者LAMP环境没有问题的话,浏览器中输入服务器地址应该会出现zabbix的setup页面

  2. 点击next按钮,之后会检测zabbix所需要的条件是否完全支持(PS:缺少什么就安装什么,一定要全部OK才可继续下去)

  3. 之后会出现连接数据库的页面,填入之前创建zabbix数据库时的信息

  4. 第4步出现当前zabbix服务器的一些基本信息,name填一下

  5. 安装向导会自动在服务器根目录下的conf下创建一个zabbix.conf.php文件,如果你的根目录权限设置不正确导致向导无法写入文件,这时就需要你手动将这个文件上传到服务器的正确目录

  6. 一切OK之后就会出现登录页面,初始用户名admin,初始密码zabbix