CentOS 8 部署 Zabbix 7.0 LTS 完整流程(PostgreSQL)
所需要的安装centos8的一切基础配置,我这里配置的比较大,因为需要监控的服务器比较多,这里可以根据实际环境来配置
一、基础环境准备
1、关闭防火墙(按需,生产建议仅放行端口)
systemctl stop firewalld
systemctl disable firewalld# firewall-cmd --permanent --zone=public --add-port=80/tcp# firewall-cmd --reload
2、关闭 SELinux
getenforce
vi /etc/sysconfig/selinux# 修改为
SELINUX=disabled
reboot
3、更新系统
yum update -y
二、安装 Zabbix 源 & PHP8.0
1、添加 Zabbix 源
rpm -Uvh https://repo.zabbix.com/zabbix/7.0/centos/8/x86_64/zabbix-release-latest-7.0.el8.noarch.rpm
dnf clean all
dnf makecache
2、切换 PHP 版本为 8.0(zabbix7.0lts默认是需要配置php:8.0,但是centos7默认已经不支持php:8.0了)
dnf module reset php -y
dnf module enable php:8.0 -y
可能会出现错误安装失败,可以安装下面方法安装,必须确认为PHP8.0才继续安装下面zabbix步骤,以免出错。
一、前置准备,确保系统是最新,并安装常用工具:
sudo dnf update -y
sudo dnf install -y wget curl vim tar unzip yum-utils
二、启用 EPEL & Remi 源
注意:Remi 仓库的新版本(>= 8.10)可能会报错,你的 CentOS 8 已经停止更新(EOL),所以推荐用 vault.centos.org 或者 指定旧版本的 Remi 源。
方案 A:使用官方 Vault(推荐,稳定)
sudo sed -i 's/mirror.centos.org/vault.centos.org/g' /etc/yum.repos.d/CentOS-*.repo
sudo dnf clean all
安装 EPEL:
sudo dnf install -y epel-release
安装 Remi 源(用 8.5 版本,兼容 CentOS 8.4/8.5 系统):
sudo dnf install -y http://rpms.remirepo.net/enterprise/remi-release-8.5-3.el8.remi.noarch.rpm
方案 B:强制使用最新 Remi(可能触发依赖错误)
如果你必须用最新版本,可以加 --nobest 跳过依赖检查:
sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm -y --nobest
三、安装 PHP 8.0
重置并启用 Remi 提供的 PHP 模块:
sudo dnf module reset php -y
sudo dnf module enable php:remi-8.0 -y
安装 PHP 8.0 及常用扩展:
sudo dnf install -y php php-fpm php-mysqlnd php-xml php-curl php-gd php-mbstring php-opcache php-zip php-json php-bcmath
启动并设置开机自启:
sudo systemctl enable --now php-fpm
四、验证安装
php -v
三、安装 Zabbix Server、Web 前端、Agent
dnf install -y zabbix-server-pgsql zabbix-web-pgsql zabbix-nginx-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent
四、安装 PostgreSQL 数据库
1、安装 PostgreSQL 官方源
dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
dnf -qy module disable postgresql
2、安装 PostgreSQL 16
dnf install -y postgresql16-server
3、初始化并启动数据库
/usr/pgsql-16/bin/postgresql-16-setup initdb
systemctl enable postgresql-16
systemctl start postgresql-16
五、配置数据库
1、创建数据库用户和数据库
sudo -u postgres createuser --pwprompt zabbix
sudo -u postgres createdb -O zabbix zabbix
2、导入 Zabbix 初始数据库
zcat /usr/share/zabbix-sql-scripts/postgresql/server.sql.gz |
sudo -u zabbix psql zabbix
六、配置 Zabbix Server
1、编辑 /etc/zabbix/zabbix_server.conf:
DBName=zabbix
DBUser=zabbix
DBPassword=你的密码
七、配置 Nginx + PHP
1、编辑 /etc/nginx/conf.d/zabbix.conf,取消以下注释:
listen 8080;
server_name example.com;
2、配置 PHP 时区 /etc/php-fpm.d/zabbix.conf:
php_value[date.timezone] = Asia/Shanghai
八、启动服务
systemctl enable --now zabbix-server zabbix-agent nginx php-fpm postgresql-16
浏览器访问:
默认账户:
用户名:Admin
密码:zabbix
九、中文语言支持
安装中文语言包
sudo sed -i 's/mirror.centos.org/vault.centos.org/g' /etc/yum.repos.d/CentOS-*.repo
sudo dnf install -y glibc-langpack-zh langpacks-zh_CN
sudo localectl set-locale LANG=zh_CN.UTF-8
查看语言包
locale -a | grep zh_CNsource /etc/locale.conf
重启 nginx
systemctl restart nginx
浏览器重新登录 Zabbix → 用户设置 → 语言选择 简体中文。
十、安装win系统 agent

解压文件到桌面,必须以管理员权限运行Install-ZabbixAgent2.ps1,否则报错1625
查看配置,已成功
在server端配置,hostname为在agent端输入的IP地址

稍等agent连接
agent已上线
十一、安装centos7系统 agent
为了不破坏现有环境,采用rpm包安装,将zabbix-offline复制到/root/zabbix-offline目录下并添加执行权限
跟着命令输入即可
确认hostname跟agent2状态正确
在server上添加主机
服务已上线
十二、安装centos8系统 agent
安装不需要使用源码安装,直接使用dnf命令安装
