zabbix3.4.2的安装及配置

本文详细介绍了如何在 LNMP 环境中从源码安装和配置 Zabbix 3.4.2 版本,包括数据库设置、编译安装、配置文件调整、自定义脚本目录创建、PHP 配置修改、服务启动等步骤。

zabbix3.4.2的安装及配置是建立在lnmp环境搭建的基础上的,如果对lnmp环境有疑问请移步至: https://blog.youkuaiyun.com/kwame211/article/details/80008309

一、下载编译安装 
1.1下载源码包

wget -O zabbix-3.4.2.tar.gz http://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/3.4.2/zabbix-3.4.2.tar.gz/download
  • 1

顺便插一句,rpm(3.4.1)包的地址:

wget http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-1.el7.centos.noarch.rpm
  • 1

顺带着也安装一下zabbix-get

wget http://repo.zabbix.com/zabbix/3.4/rhel/6/x86_64/zabbix-get-3.4.4-2.el6.x86_64.rpm 
yum install -y  zabbix-get-3.4.4-2.el6.x86_64.rpm 
  • 1
  • 2

我们这里选择源码的方式。

1.2创建zabbix用户:

#groupadd zabbix
#useradd -g zabbix zabbix -s /sbin/nologin
  • 1
  • 2

1.3解压:

#tar zxvf zabbix-3.4.2.tar.gz -C /usr/local/
  • 1

1.4进入数据库并导入zabbix数据表结构:

mysql -u root -p
  • 1

创建mysql库

mysql>CREATE DATABASE zabbix DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
  • 1

给zabbix用户授权,密码是123456:

grant all privileges on zabbix.* to zabbix@localhost identified by '123456';
  • 1

导入zabbix数据表结构

mysql> use zabbix;
mysql> source /usr/local/zabbix-3.4.2/database/mysql/schema.sql;
mysql> source /usr/local/zabbix-3.4.2/database/mysql/data.sql;
mysql> source /usr/local/zabbix-3.4.2/database/mysql/images.sql;
mysql> quit
  • 1
  • 2
  • 3
  • 4
  • 5

1.5、编译安装zabbix

#yum install -y net-snmp net-snmp-devel curl curl-devel mysql-devel libevent-devel pcre-devel
  • 1

(依赖包情况可能不一样,按照编译的时候报错解决即可)

#cd /usr/local/zabbix-3.4.2/
#./configure --prefix=/usr/local/zabbix --with-mysql --with-net-snmp --with-libcurl --enable-server --enable-agent --enable-proxy
  • 1
  • 2

如果出现报错,安装报错提示的依赖包,再次运行上面的编译命令,直到没有报错(如下面截图): 
这里写图片描述 
然后运行:

# make && make install
  • 1

1.6 zabbix相关配置 
创建日志目录

#mkdir /usr/local/zabbix/logs
  • 1

编辑zabbix_agentd配置文件

#cd /usr/local/zabbix/etc/
#mv zabbix_agentd.conf zabbix_agentd.conf.bak
#vim zabbix_agentd.conf
LogFile=/usr/local/zabbix/logs/zabbix_agentd.log
Server=127.0.0.1
ServerActive=127.0.0.1
Hostname=Zabbix server
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

编辑zabbix_server配置文件

#mv zabbix_server.conf zabbix_server.conf.bak
#vim zabbix_server.conf
LogFile=/usr/local/zabbix/logs/zabbix_server.log
DBName=zabbix
DBUser=zabbix
DBHost=localhost
DBPassword=123456       #(zabbix用户的密码)
AlertScriptsPath=/usr/local/zabbix/alertscripts
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

创建自定义脚本目录,设置权限,目录下的脚步,可以被zabbix调用

#mkdir /usr/local/zabbix/alertscripts
#chown zabbix.zabbix -R /usr/local/zabbix
  • 1
  • 2

更改php.ini文件

#sed -i 's/post_max_size = 8M/post_max_size = 32M/g' /usr/local/php/etc/php.ini
#sed -i 's/upload_max_filesize = 2M/upload_max_filesize = 50M/g' /usr/local/php/etc/php.ini
#sed -i 's/;date.timezone =/date.timezone =PRC/' /usr/local/php/etc/php.ini
#sed -i 's/max_execution_time = 30/max_execution_time = 600/g' /usr/local/php/etc/php.ini
#sed -i 's/max_input_time = 60/max_input_time = 600/g' /usr/local/php/etc/php.ini
#sed -i 's/memory_limit = 128M/memory_limit = 256M/g' /usr/local/php/etc/php.ini
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
#vim /usr/local/php/etc/php.ini
cgi.fix_pathinfo=1
  • 1
  • 2

重启php-fpm

#/etc/init.d/php-fpm restart
  • 1

进入源码目录,复制启动脚本

#cd /usr/local/zabbix-3.4.2/misc/
#cp init.d/tru64/zabbix_server /etc/init.d/
#cp init.d/tru64/zabbix_agentd /etc/init.d/
#chmod +x /etc/init.d/zabbix_*
  • 1
  • 2
  • 3
  • 4
#vim /etc/init.d/zabbix_agentd
DAEMON=/usr/local/zabbix/sbin/zabbix_agentd
  • 1
  • 2
vim /etc/init.d/zabbix_server
DAEMON=/usr/local/zabbix/sbin/zabbix_server
  • 1
  • 2

由于zabbix_server 服务不支持 chkconfig,使用下列方法自启动 
vim /etc/init.d/zabbix_server 
在#!/bin/sh下面一行添加

#chkconfig: 345 95 95       ##这里再配置文件里面行首“#”表示注释
#description: Zabbix_Server     ##这里再配置文件里面行首“#”表示注释
  • 1
  • 2

vim /etc/init.d/zabbix_agentd 
在#!/bin/sh下面一行添加

#chkconfig: 345 95 95       ##这里是在配置文件里面行首“#”表示注释,
#description: Zabbix_agentd     ##这里再配置问价里面行首“#”表示注释
  • 1
  • 2

设置开机自启:

#chkconfig zabbix_server on
#chkconfig zabbix_agentd on
  • 1
  • 2

vim /etc/ld.so.conf 
在后面加一行:/usr/local/mysql/lib/

重新加载:

#ldconfig
  • 1
#/etc/init.d/zabbix_server start
#/etc/init.d/zabbix_agentd start
#netstat -ntpl|grep zabbix
tcp        0      0 0.0.0.0:10050               0.0.0.0:*                   LISTEN      21188/zabbix_agentd
tcp        0      0 0.0.0.0:10051               0.0.0.0:*                   LISTEN      21140/zabbix_server
  • 1
  • 2
  • 3
  • 4
  • 5

必须要看到10050和10051端口都起来

复制php页面,并设置权限

#cp -rf /usr/local/zabbix-3.4.2/frontends/php/ /usr/local/zabbix/php
#chown www.www -R /usr/local/zabbix/php/
  • 1
  • 2

编辑nginx配置文件 
vim /etc/nginx/conf.d/default.conf

# cat /etc/nginx/conf.d/default.conf
server {
        listen   80;
        server_name localhost;
        root /usr/local/zabbix/php;
        index index.php index.html index.htm;

        location / {
            if (!-e $request_filename) {
                rewrite  ^(.*)$  /index.php/$1  last;
                break;
            }
        }

        location ~ \.php {
                fastcgi_pass   127.0.0.1:9000;
                fastcgi_index  index.php;
                include        fastcgi_params;
                set $real_script_name $fastcgi_script_name;
                if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {
                   set $real_script_name $1;
                   set $path_info $2;
                }

                fastcgi_param SCRIPT_FILENAME $document_root$real_script_name
;
                fastcgi_param SCRIPT_NAME $real_script_name;
                fastcgi_param PATH_INFO $path_info;
        }

}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31

重新加载nginx

/etc/init.d/nginx restart
  • 1

编辑php配置文件,开启中文

#vim /usr/local/zabbix/php/include/locales.inc.php
'zh_CN' => ['name' => _('Chinese (zh_CN)'),     'display' => true],
#/etc/init.d/php-fpm restart
  • 1
  • 2
  • 3

到网页访问,开始安装:(访问之前检查下防火墙,selinux) 
这里写图片描述 
这里写图片描述

这里写图片描述
这里写图片描述
这里写图片描述
这里就有问题了,报了一个小错。解决办法:

#ln -s /var/lib/mysql/mysql.sock /tmp/
#vim /usr/local/php/etc/php.ini
Mysql.default_socket = /var/lib/mysql/mysql.sock
  • 1
  • 2
  • 3

这里写图片描述

#/etc/init.d/php-fpm restart
  • 1

在退回一步,然后再接着下一步就可以了 
这里写图片描述
这里写图片描述
这里写图片描述 
这就安装成功了! 
如果想将语言调成中文也可以: 
这里写图片描述

至此就大功告成了!

附一些可能出现的错误以后慢慢补充: 
这里写图片描述
解决办法:

打开/usr/local/php/etc/php.ini文件把always_populate_raw_post_data = -1这一行注释打开,
保存重启php-fpm
  • 1
  • 2

后续会继续补充其他可能报错

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值