linux下zabbix服务端的安装

分类: PHP,SQL/NoSQL,服务器  • 发布时间: 2015-07-31 23:34:41  • 浏览量:45362

基本环境:32位CentOS6.5 + Nginx1.6.2 + MySQL5.1+ php-fpm5.6.11

IP:192.168.99.152

第1步:配置LNMP环境

1.1 zabbix需要php的运行环境,这里我们选用的是lnmp环境,LNMP环境的可以自己编译安装,这里也有一个简单的配置教程:centos + nginx + php-fpm +mysql的简单配置,生产环境中最好自己编译安装。

1.2 同时PHP需要开启这些扩展bcmath、mbstring 、sockets 、gd、libxml、xmlwriter 、xmlreader 、ctype 、session 、gettext,可以通过phpinfo查看是否开启。

1.3 修改php.ini中的这几项配置参数:

max_execution_time = 300
memory_limit = 128M
post_max_size = 16M
upload_max_filesize = 2M
max_input_time = 300
date.timezone = PRC

第2步:安装net-snmp、libxml2和curl

yum -y install net-snmp net-snmp-devel libxml2-devel curl curl-devel libcurl-devel

第3步:编译安装zabbix服务端

3.1 去http://www.zabbix.com/download.php下载适合自己系统的zabbix,可以选择官方打包好的软件包,也可以下载他的源码包,这里我们下载源码包,版本是2.4.5

cd /usr/local/src/
wget http://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.4.5/zabbix-2.4.5.tar.gz
tar zxvf zabbix-2.4.5.tar.gz
cd zabbix-2.4.5
./configure --prefix=/usr/local/zabbix-2.4.5/ --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2
make && make install

3.2 创建用户zabbix和用户组zabbix

groupadd zabbix
useradd -g zabbix zabbix

3.3:初始化数据库

这里我选用的是mysql,帐号是root,无密码,mysql的安装和启动不再说,到这步,默认你的mysql已经安装完并启动,并已经登录数据库

创建数据库zabbix

create database zabbix default charset utf8;

导入数据文件:

mysql zabbix < database/mysql/schema.sql

如果你仅仅是初始化proxy的数据库,那么到这里就行了。如果初始化server,那么需要接着导入下面两个sql,将源码包下的database/mysql/images.sql和database/mysql/data.sql导入到数据库

mysql zabbix < database/mysql/images.sql
mysql zabbix < database/mysql/data.sql

3.4 配置zabbix_server

将源码包中的复制到/etc/zabbix/目录下一份,然后编辑该配置文件

vi /usr/local/zabbix-2.4.5/etc/zabbix_server.conf

将下面这几项根据自己的实际情况修改

DBName=zabbix
DBUser=root
DBPassword=
DBPort=3306

3.5启动zabbix server

/usr/local/zabbix-2.4.5/sbin/zabbix_server

3.6启动客户端

/usr/local/zabbix-2.4.5/sbin/zabbix_agent

第4步:将前台展示文件复制到web服务器的目录里,这里使用的是nginx的默认目录,当然你也可以自己为nginx配置虚拟主机

cp -rp frontends/php/* /usr/local/nginx/html/

然后打开地址:http://192.168.99.152/setup.php进行前台安装界面配置,包括欢迎界面一共6步,分别是:1.欢迎界面、2.php需求检查、3.MySQL配置、4.zabbix服务端详细信息、5.zabbix安装前信息列表、6.安装完成


然而,安装到这,出了个灵异事件:

Check of pre-requisites (也就是第二步),无任何报错的情况下,点击next ,直接返回welcome(第一步)

Configure DB connection(第三步)压根就访问不了!

SElinux也关了,看日志也没任何错误,胸中万马奔腾,什么马,你懂的!


----------------------2015-08-01 16:24更新----------------------

做完搞到凌晨2点,带着万马奔腾睡觉了,这咋办,有几种方法:

1.换个低版本试试

2.换成rpm包安装试试

3.直接改他们的web文件配置,反正这个流程也就是更新一下配置文件(我就用的这种,是否有各种后遗症还不确定,观察中……)

下面我说说我的方法:

切换到前台展示的php文件的配置目录里,我的是放在/usr/local/nginx/html目录下

cd /usr/local/nginx/html/conf

复制一份配置文件,并改名为:zabbix.conf.php

cp zabbix.conf.php.example zabbix.conf.php

然后修改该配置文件,主要是这几项,根据您的实际情况作出修改

$DB["TYPE"]                  = 'MYSQL';
$DB["SERVER"]                 = 'localhost';
$DB["PORT"]                  = '3306';
$DB["DATABASE"]                = 'zabbix';
$DB["USER"]                  = 'root';
$DB["PASSWORD"]                = '123456';

然后去访问:

http://192.168.99.152,用默认的帐号:admin,密码:zabbix,就可以登录了




感谢"运维生存时间(www.ttlsa.com)"的博主,提供了这么通俗易懂的教程
参考文章:http://www.ttlsa.com/zabbix/install-zabbix-on-linux-5-ttlsa/
文章标签: php, linux, centos, nginx, zabbix, 监控, lnmp
用户评论:
  • zabbixer 2015-08-10 16:13:44

    请问最后的问题到底是为什么,我按着你的做 改完还是不能进行第三步

    • 书生 2015-08-12 15:51:03

      没深究,我看别人正常步骤主要是配置数据库,我直接修改了PHP配置文件,效果其实是一样的!

    • zabbixer 2015-08-13 11:40:04

      @书生 谢谢,听说是版本问题,回头我再试试。

    • 游客93651 2015-08-13 13:23:51

      @zabbixer 据说2.2版本的没事!

  • 游客74474 2015-11-05 16:03:31

    我也遇到第一步和第二步循环的问题。 我是一台新部署的lnmp环境,部署的时候我改了php进程的执行用户是nginx,但是session的文件目录是root:apache. 我把目录拥有者改为:root:nginx顺利进入第三步。

  • 游客44825 2016-03-02 16:26:26

    请问博主,/usr/local/zabbix-3.0.1/sbin/zabbix_server 没有“sbin/zabbix_server”这个目录是怎么回事?

    • 游客98152 2016-03-03 21:05:59

      不可能吧

  • 游客56496 2016-05-23 17:59:28

    博主您好!我的CentOS6.7 在LNMP环境下(MySQL已经做了迁移),在进入第三步的时候无法下拉选项没有MySQL选项,最后我按照您的办法直接修改zabbix.conf.php 文件,结果win32浏览器没办法访问zabbix web配置页面了= =!请问您能给分析一下么?

  • 游客85526 2016-07-18 16:16:59

    其实在zabbix官方论坛里面就有人(同样喜欢装B的人)遇到同样的问题原文如下: https://www.zabbix.com/forum/showthread.php?t=53105 原因就是:nginx 用户没有PHP session 目录的任何权限 ,我们看到它属于Apache这个组所有,这就是偷懒造成的。 [root@zabbix-monitor ]# ls -l /var/lib/php/ total 16 drwxrwx---. 2 root apache 12288 Jun 24 03:23 session drwxrwx---. 2 root apache 4096 Jun 24 03:23 wsdlcache 问题原因找到了,那就修改目录属组就可以,具体命令如下: [root@zabbix-monitor ]# chown root.nginx /var/lib/php/ -R 果然目录权限一修改,点击下一步:“Next step” ,奇迹就发生了

    • 游客26961 2016-10-08 21:48:00

      你说的很对,就是权限的问题!

  • 游客81326 2016-08-11 13:12:05

    其实在zabbix官方论坛里面就有人(同样喜欢装B的人)遇到同样的问题原文如下: https://www.zabbix.com/forum/showthread.php?t=53105 原因就是:nginx 用户没有PHP session 目录的任何权限 ,我们看到它属于Apache这个组所有,这就是偷懒造成的。 [root@zabbix-monitor ]# ls -l /var/lib/php/ total 16 drwxrwx---. 2 root apache 12288 Jun 24 03:23 session drwxrwx---. 2 root apache 4096 Jun 24 03:23 wsdlcache 问题原因找到了,那就修改目录属组就可以,具体命令如下: [root@zabbix-monitor ]# chown root.nginx /var/lib/php/ -R 果然目录权限一修改,点击下一步:“Next step” ,奇迹就发生了 ====================== Nice ! 真很感激 就是这个的问题。。。现在解决了

  • 游客11864 2016-12-20 14:58:21

    我在第三步Configure DB connection的时候提示我The frontend does not match Zabbix database,这是个什么鬼?