Zabbix是一款开源并且完全免费的企业级系统监控软件,它拥有强大无比的各种监控功能,可以全方位监控你的服务器或其他网络设备运行状态。
这个教程是根据官网的源码包进行编译安装,稳定、安全,根据本文章走你肯定可以安装成功,本次的安装环境为:
操作系统:CentOS7.6
WEB:Apache/2.4.6
PHP:7.0.33
数据库:MariaDB5.5.64
一、关闭SElinux安全
setenforce 0
#临时关闭SElinux
sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config
#永久关闭SElinux
或者手动修改配置文件:
vim /etc/selinux/config
SELINUX=enforcing #将enforcing替换为disabled
SELINUX=disabled
二、配置配置firewall防火墙
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=10050/tcp --permanent
firewall-cmd --zone=public --add-port=10051/tcp --permanent
firewall-cmd --reload
firewall-cmd --zone=public --list-ports
#放行TCP80、10050、10051端口
#如果开启了iptables防火墙可以关闭
service iptables stop
chkconfig iptables off
三、安装配置mariadb数据库
yum install -y mariadb-server mariadb
systemctl start mariadb
systemctl enable mariadb
四、安装配置PHP环境及扩展
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yum install -y php70w* --skip-broken
systemctl start php-fpm
systemctl enable php-fpm
五、安装配置Apache
systemctl start httpd
systemctl enable httpd
六、创建Zabbix用户
groupadd zabbix
useradd zabbix -g zabbix -s /sbin/nologin
七、编译Zabbix软件
yum install -y gcc libxml2-devel libevent-devel net-snmp net-snmp-devel curl curl-devel php php-bcmath php-mbstring mariadb mariadb-devel java-1.6.0-openjdk-devel --skip-broken
#安装Zabbix编译的软件包
#去官网下载编译安装的Zabbix:https://www.zabbix.com/download_sources
wget https://www.xxshell.com/download/sh/zabbix/zabbix4.4/zabbix-4.4.1.tar.gz
tar -xzvf zabbix-4.4.1.tar.gz
cd zabbix-4.4.1
./configure \
--prefix=/usr/local/zabbix \
--enable-server \
--enable-agent \
--with-mysql=/usr/bin/mysql_config \
--with-net-snmp \
--with-libcurl \
--with-libxml2 \
--enable-java
make -j 2 && make install
#编译安装Zabbix
八、导入Zabbix数据库文件
1、配置数据库密码
mysqladmin -uroot -p password [新密码]
#修改数据库密码
2、连接数据库
mysql -uroot -p
3、建立zabbix空数据库
CREATE DATABASE zabbix CHARACTER SET utf8 COLLATE utf8_general_ci;
SHOW DATABASES;
use zabbix;
#选择数据库
4、导入数据(注意sql文件的路径、并按照顺序导入)
source database/mysql/schema.sql;
source database/mysql/images.sql;
source database/mysql/data.sql;
quit
九、修改Zabbix配置文件
1、修改启动文件
cp misc/init.d/fedora/core/* /etc/init.d/
#拷贝启动文件到/etc/init.d/下
sed -i "s#BASEDIR=/usr/local#BASEDIR=/usr/local/zabbix#" /etc/init.d/zabbix_server
sed -i "s#BASEDIR=/usr/local#BASEDIR=/usr/local/zabbix#" /etc/init.d/zabbix_agentd
#快速替换,如果手动修改可以直接编辑下面的文件
vim /etc/init.d/zabbix_agentd
vim /etc/init.d/zabbix_server
分别将”BASEDIR=/usr/local“替换为”BASEDIR=/usr/local/zabbix“
2、修改Zabbix配置文件
vim /usr/local/zabbix/etc/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=root
DBPassword=[数据库密码]
#启动zabbix服务
/etc/init.d/zabbix_server restart
/etc/init.d/zabbix_agentd restart
systemctl restart zabbix_server
systemctl restart zabbix_agentd
#重启验证服务
#通过”netstat -an | grep LIS“查看10050、10051端口能否正常监听,如果不能正常监听可能数据库或配置文件有问题。
systemctl enable zabbix_server
systemctl enable zabbix_agentd
#设置开机启动
十、修改PHP配置文件
sed -i "s/post_max_size = 8M/post_max_size = 32M/" /etc/php.ini
sed -i "s/max_execution_time = 30/max_execution_time = 600/" /etc/php.ini
sed -i "s/max_input_time = 60/max_input_time = 600/" /etc/php.ini
sed -i "s#;date.timezone =#date.timezone = Asia/Shanghai#" /etc/php.ini
#或手动修改文件/etc/php.ini
post_max_size = 8M 替换为 post_max_size = 32M
max_execution_time = 30 替换为 max_execution_time = 600
max_input_time = 60 替换为 max_input_time = 600
;date.timezone = 替换为 date.timezone = Asia/Shanghai
十一、部署Zabbix前台文件
rm -rf /var/www/html/*
#清空网站根目录
cp -r frontends/php/* /var/www/html/
#复制PHP文件到网站根目录
chown -R apache:apache /var/www/html/
chmod -R 777 /var/www/html/conf/
#给网站目录添加属主
十二、重启所有服务使配置生效
systemctl restart php-fpm httpd mariadb zabbix_server zabbix_agentd
十三、通过网页安装Zabbix
1、在浏览器中输入服务器的地址,打开部署页面:
2、查看安装环境,如果有问题还需要对应修改;
3、配置MySQL数据库参数信息(注意要和Zabbix配置文件相匹配):
4、配置Zabbix用户信息:
5、概览信息:
6、下载复制对应文件到服务器的指定目录:
7、大功告成,安装完成:
8、登录Zabbix
9、登录到后台,查看监听信息是否正常: