zabbix部署与配置
1.zabbix的web界面是基于php开发,所以创建lnmp环境来支持web界面的访问
yum install nginx php php-devel php-mysql php-fpm mariadb mariadb-server mariadb-devel epel-release -y
2.启动mariadb服务
systemctl start mariadb
3.创建zabbix数据库,并执行授权命令。
create database zabbix charset=utf8;
grant all to zabbix.* to zabbix@localhost identified by '123456'
flush privileges;
4.切换至zabbix源码目录中,导入数据库。
[root@localhost ~]# cd zabbix-3.4.8/
[root@localhost zabbix-3.4.8]# pwd
/root/zabbix-3.4.8
[root@localhost zabbix-3.4.8]# mysql -uzabbix -p123456 zabbix <database/mysql/schema.sql
[root@localhost zabbix-3.4.8]# mysql -uzabbix -p123456 zabbix <database/mysql/images.sql
[root@localhost zabbix-3.4.8]# mysql -uzabbix -p123456 zabbix <database/mysql/mysql.sql
[root@localhost zabbix-3.4.8]# mysql -uzabbix -p123456 zabbix <database/mysql/data.sql
#schema.sql 表结构
#images.sql 图片库
#data.sql 初始脚本库
#三个表导入次序不能颠倒:schema-->images-->data。
5.下载或者上传至centos系统中zabbix源码包,解压后切换到zabbix源码目录中。
[root@localhost ~]# tar -zxf zabbix-3.4.8.tar.gz
[root@localhost ~]# cd zabbix-3.4.8/
[root@localhost zabbix-3.4.8]#
6.在zabbix源码预编译安装前,先安装必要依赖包
[root@localhost zabbix-3.4.8]# yum gcc gcc-c++ open openssl-devel zlib zlib-devel pcre pcre-devel net-snmp net-snmp-devel curl curl-devel libevent-devel -y
7.zabbix源码包预编译、编译、安装。
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --enable-ipv6 --with-mysql --with-net-snmp --with-libcurl
make && make install
写到这里zabbix-web、zabbix-server安装部分完成,同时zabbix-mariadb安装和配置也完成。下面进zabbix配置文件环节
8.修改zabbix.sever.conf文件,修改前先备份
[root@localhost ~]# cp /usr/local/zabbix/etc/zabbix.server.conf /usr/local/zabbix/etc/zabbix.server.conf.bak
[root@localhost ~]# cat >/usr/local/zabbix/etc/zabbix.server.conf <<EOF
LogFile=/tmp/zabbix_server.log
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=123456
EOF
9.在启动zabbix程序前,先进入源码包把zabbix的启动文件拷贝到centos系统启动脚本里。
[root@localhost ~]# cd zabbix-3.4.8/
[root@localhost zabbix-3.4.8]# cp -a misc/init.d/tru64/zabbix_* /etc/init.d/
[root@localhost zabbix-3.4.8]# chmod +x /etc/init.d/zabbix_*
10.运行zabbix启动程序。
**运行报错 1**
[root@localhost ~]# /etc/init.d/zabbix_server start
Can't find file /usr/local/sbin/zabbix_server.
Zabbix server NOT started.
#运行zabbix启动程序报错:提示链接zabbix启动二进制错误,修改/etc/init.d/zabbix_server脚本来解决。
[root@localhost ~]# vim /etc/init.d/zabbix_server
#找到第24行修改为/usr/local/zabbix/sbin/zabbix_server
![](https://img2018.cnblogs.com/blog/1846345/201910/1846345-20191028011411958-575921307.png)
**运行报错 2**
[root@localhost ~]# /etc/init.d/zabbix_server start
zabbix_server [32842]: user zabbix does not exist
zabbix_server [32842]: cannot run as root!
Zabbix server started.
#错误提示:zabbix用户不存在,开启zabbix失败。解决:添加用户zabbix后,在启动zabbix启动程序就OK。
[root@localhost ~]# useradd zabbix
[root@localhost ~]# /etc/init.d/zabbix_server start
Zabbix server started.
11.拷贝zabbix源码程序的php代码文件至nginx系统html目录里
``
[root@localhost ~]# cp -a zabbix-3.4.8/frontends/php/* /usr/share/nginx/html/
12.php和nginx整合配置,修改nginx配置文件
location / {
index index.php setup.php;
}
location ~ .php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
include fastcgi_params;
}
13.重新启动nginx和php服务
[root@localhost nginx]# systemctl restart nginx php-fpm
14. 访问zabbix web页面
![](https://img2018.cnblogs.com/blog/1846345/201910/1846345-20191029213451834-1066528637.png)
## 待续