zabbix图文安装教程之源码安装

系统版本:CentOS 7
MySQL版本:mysql-8.0.20-linux-glibc2.12-x86_64.tar
zabbix版本:zabbix-6.4.14.tar.gz
PHP版本:php-7.4.33
nginx版本:nginx-1.20.2.tar.gz

本实验中数据库使用的版本比zabbix6.4要求的MySQL8.0.30要低,具体支持版本大家可以查看zabbix手册

一、zabbix下载

1、打开zabbix官网,选择下载;
在这里插入图片描述
2、这里选择源码安装 Zabbix Sources

在这里插入图片描述
3、zabbix下载完后上传至centos 7 主机;

在这里插入图片描述

二、zabbix安装

1、部署 MySQL数据库并初始化

1.1)数据库安装

MySQL数据库详细的安装步骤请查看数据库图文安装教程之MySQL

1.2) 数据库初始化

安装zabbix server之前,需要先准备数据库,这里以Mysql数据库为例进行安装

mysql> create database zabbix character set utf8 collate utf8_bin;		#创建zabbix数据库,并设置字符编码为utf8

mysql> create user zabbix@localhost identified by 'zabbix';		#创建zabbix用户和登录密码

FLUSH PRIVILEGES;	#刷新权限,使更改生效

mysql> GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'%';	#授权zabbix用户远程登录zabbix数据库权限

在这里插入图片描述

1.3) 导入数据

cd /usr/local/src/mysql-8.0.20/bin/
./mysql -uzabbix -pzabbix zabbix < /usr/local/src/zabbix-6.4.14/database/mysql/schema.sql 
# 如果是安装zabbix-proxy,不需要导入下面的数据
./mysql -uzabbix -pzabbix zabbix < /usr/local/src/zabbix-6.4.14/database/mysql/images.sql 
./mysql -uzabbix -pzabbix zabbix < /usr/local/src/zabbix-6.4.14/database/mysql/data.sql 

在这里插入图片描述

2、部署 Nginx + PHP 环境并测试

2.1)安装php

2.1.1 使用yum安装php
#安装依赖
yum install epel-release

#启用PHP 7.4 Remi存储库并在CentOS 7上安装PHP 7.4
#配置安装源
yum -y install https://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum -y install yum-utils

#设置安装版本
yum-config-manager --enable remi-php74

#安装php及拓展包
yum install php php-cli php-fpm php-mysqlnd php-zip php-devel php-gd php-mcrypt php-mbstring php-curl php-xml php-pear php-bcmath php-json php-redis

#查看php版本
php -v

#启动php-fpm服务
[root@zabbix ~]# systemctl start php-fpm.service 
[root@zabbix ~]# systemctl status php-fpm.service
2.1.2 修改php-fpm的配置文件
[root@zabbix ~]# cd /etc/php-fpm.d/
[root@zabbix php-fpm.d]# ls
www.conf
[root@zabbix php-fpm.d]# vi www.conf 

在www.conf文件下注释掉listen = /run/php-fpm/www.sock这段内容,添加listen = 127.0.0.1:9000

在这里插入图片描述

2.1.3 修改php的配置文件
修改php.ini
vi /etc/php.ini

max_execution_time = 300
max_input_time = 300
post_max_size = 16M
date.timezone =Asia/Shanghai

2.2)安装Nginx

Nginx详细的安装步骤请查看Linux安装web服务器图文教程之Nginx

2.2.1 nginx配置

修改nginx的配置文件

vi /usr/local/nginx/conf/nginx.conf
    location / {
            root   html;
            index index.php  index.html index.htm;
        }
        
 	location ~ \.php$ {
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }

在这里插入图片描述

2.22 添加php测试文件
#定位到nginx/html文件下
[root@zabbix nginx]# cd /usr/local/nginx/html/
#创建web.php页面文件
[root@zabbix html]# vi index.php
<?php
phpinfo();
?>

2.3)重启php-fpm服务和nginx

#重启php-fpm服务
[root@zabbix html]# systemctl restart php-fpm.service 
[root@zabbix html]# systemctl status php-fpm.service 

在这里插入图片描述

#重启nginx
[root@zabbix html]# systemctl restart nginx.service 
[root@zabbix html]# systemctl status nginx.service

在这里插入图片描述

2.4)测试

在本地浏览器访问192.168.56.101,出现如下页面表示PHP网页解析成功。
在这里插入图片描述

3、zabbix环境安装及编译

3.1)创建zabbix用户组

groupadd zabbix
useradd -g zabbix zabbix

3.2)zabbix编译

#进入zabbix解压目录
cd /usr/local/src/zabbix-6.4.14
#安装zabbix依赖包
yum -y install libevent-devel libxml2-devel curl-devel net-snmp-devel mysql-devel libssh2-devel gcc

./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2
make install

3.3)修改配置zabbix server 文件数据库密码

#修改配置zabbix server 文件数据库密码
[root@zabbix zabbix-6.0.1]# vi /usr/local/zabbix/etc/zabbix_server.conf
DBPassword=zabbix

3.4)启动zabbix服务

[root@zabbix ~]# cd /usr/local/zabbix/sbin/ //进入zabbix编译安装目录的sbin
[root@zabbix sbin]# ls
zabbix_agentd  zabbix_server
[root@zabbix sbin]# ./zabbix_server //启动zabbix_server服务
[root@zabbix sbin]# ./zabbix_agentd //启动zabbix_agentd服务

1、启动zabbix服务时报错,服务需要 libmysqlclient.so.18文件,通过命令查看MySQL8.X安装的是“libmysqlclient.so.21”
在这里插入图片描述
2、解决方法,安装 mysql-community-libs-compat-5.7.20-1.el7.x86_64.rpm 这个安装包,这个包还依赖 mysql-community-common-5.7.20-1.el7.x86_64.rpmmysql-community-libs-5.7.20-1.el7.x86_64.rpm 在MySQL官网yum仓库下载5.7版本的这3个包,按照依赖关系进行安装。
在这里插入图片描述
3、服务启动失败错误日志报错
报错一:密码认证插件问题

 [Z3001] connection to database 'zabbix' failed: [2059] Authentication plugin 'caching_sha2_password' cannot be loaded: /usr/lib64/mysql/plugin/caching_sha2_password.so: cannot open shared object file: No such file or directory

解决方法

mysql> ALTER USER 'zabbix'@'%' IDENTIFIED WITH 'mysql_native_password' BY 'Ab123456';
Query OK, 0 rows affected (0.00 sec)

mysql> FLUSH PRIVILEGES;

报错二:数据库版本问题

Use of supported database version is highly recommended.
Override by setting AllowUnsupportedDBVersions=1 in Zabbix server configuration file at your own risk.

解决办法

找到Zabbix服务器配置文件,通常名为zabbix_server.conf。
在配置文件中添加或修改这样一行:AllowUnsupportedDBVersions=1
#查看端口
netstat -tulnp | grep <port>

在这里插入图片描述

3.5)将zabbix前端文件移动到web服务目录下,并授权

[root@zabbix ~]# cp -r /usr/local/src/zabbix-6.4.14/ui/* /usr/local/nginx/html/zabbix
[root@zabbix ~]# chown nginx:nginx /usr/local/nginx/html/zabbix -R

3.6)将zabbix服务添加到systemd

如果每次进入zabbix安装目录启动zabbix服务麻烦,可以将zabbix服务添加到systemd中,具体操作步骤请查看编写systemd单元文件管理zabbix服务

4、zabbix前端配置

在本地浏览器访问192.168.56.101/zabbix
Default language 这里可以设置中文显示;
在这里插入图片描述

在这里插入图片描述
这里如果无法连接数据库且不报错,检查SELinux是否关闭。
1、临时关闭:输入命令setenforce 0,重启系统后还会开启。
2、永久关闭:输入命令vi /etc/selinux/config,将SELINUX=enforcing改为SELINUX=disabled,然后保存退出。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
登录zabbix系统(默认用户名:Admin;密码:zabbix)
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
如图所示就是最终效果:
在这里插入图片描述

  • 50
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值