一、文档说明

1.1 适用环境

  • 操作系统:CentOS Stream 10(64 位)
  • Zabbix 版本:Zabbix 7.0/7.4(稳定版,官方已提供 CentOS Stream 10 适配包)
  • 依赖组件:LAMP 环境(Apache 2.4+ + MariaDB 10.5+ + PHP 8.0+)
  • 网络要求:服务器可访问互联网(用于获取软件源及安装包)

1.2 文档用途

指导运维人员完成 Zabbix 7 在 CentOS Stream 10 上的部署与基础配置,覆盖环境搭建、服务配置、Web 初始化及监控验证全流程,适用于中小企业服务器集群监控场景。

二、部署前准备

2.1 系统初始化

  1. 登录服务器并切换至 root 用户:

su - root  # 输入root密码确认

  1. 防火墙配置(生产环境推荐最小权限原则):

# 开放Zabbix所需端口(Web端口80、Server端口10051、Agent端口10050)

firewall-cmd --add-port=80/tcp --permanent

firewall-cmd --add-port=10050/tcp --permanent

firewall-cmd --add-port=10051/tcp --permanent

firewall-cmd --reload

# 验证端口开放状态

firewall-cmd --list-ports

  1. SELinux 配置(临时关闭 + 永久禁用):

# 临时关闭(立即生效)

setenforce 0

# 永久禁用(需重启生效)

vi /etc/selinux/config

SELINUX=enforcing修改为SELINUX=disabled,按Esc+:wq保存退出。

  1. 系统重启与状态验证:

reboot  # 重启使SELinux配置生效

# 重启后验证

systemctl status firewalld  # 应显示active

getenforce  # 应显示Disabled

2.2 软件源配置

  1. 配置国内基础镜像源(以阿里云为例):

# 备份默认源

mv /etc/yum.repos.d/CentOS-Stream-BaseOS.repo /etc/yum.repos.d/CentOS-Stream-BaseOS.repo.bak

mv /etc/yum.repos.d/CentOS-Stream-AppStream.repo /etc/yum.repos.d/CentOS-Stream-AppStream.repo.bak

# 下载阿里云镜像源

curl -o /etc/yum.repos.d/CentOS-Stream-BaseOS.repo https://mirrors.aliyun.com/repo/Centos-stream-10.repo

  1. 禁用 EPEL 源中 Zabbix 冲突包(若已安装 EPEL):

vi /etc/yum.repos.d/epel.repo

[epel]段落添加:excludepkgs=zabbix*,避免与官方源冲突。

  1. 刷新软件源缓存:

dnf clean all && dnf makecache

dnf update -y  # 升级系统组件至最新版

三、安装依赖环境(LAMP)

3.1 安装 Apache 服务

  1. 安装并启动 Apache:

dnf install -y httpd

systemctl start httpd && systemctl enable httpd

  1. 验证 Apache 运行状态:

systemctl status httpd  # 应显示active (running)

curl http://localhost  # 应返回Apache默认页面内容

3.2 安装 MariaDB 数据库

  1. 安装并初始化数据库:

dnf install -y mariadb-server

systemctl start mariadb && systemctl enable mariadb

# 安全初始化(设置root密码、删除匿名用户等)

mysql_secure_installation

执行流程:

    • 输入当前 root 密码(默认空,直接回车)
    • 输入Y设置 root 密码(例:ZabbixDB@2025
    • 依次输入Y删除匿名用户、禁止 root 远程登录、删除 test 库、刷新权限
  1. 验证数据库连接:

mysql -u root -p  # 输入设置的root密码

成功进入mysql>命令行即为正常,输入exit退出。

3.3 安装 PHP 8.0 + 环境

Zabbix 7 要求最低 PHP 版本为 8.0.0,CentOS Stream 10 默认源已提供适配版本:

  1. 安装 PHP 及必需扩展:

dnf install -y php php-mysqlnd php-gd php-libxml php-mbstring php-bcmath php-json php-cli php-fpm php-ldap php-opcache php-curl

  1. 配置 PHP 参数(适配 Zabbix 需求):

vi /etc/php.ini

修改以下配置项(无则添加):

max_execution_time = 300

memory_limit = 256M  # Zabbix 7建议提升至256M

post_max_size = 16M

upload_max_filesize = 2M

max_input_time = 300

date.timezone = Asia/Shanghai

  1. 启动 PHP-FPM 服务:

systemctl start php-fpm && systemctl enable php-fpm

systemctl status php-fpm  # 验证运行状态

四、安装 Zabbix 7 服务端

4.1 添加 Zabbix 官方源

根据需要选择 7.0 或 7.4 版本(以 7.0 为例):

# 安装Zabbix 7.0官方源

rpm -Uvh https://repo.zabbix.com/zabbix/7.0/rhel/10/x86_64/zabbix-release-7.0-1.el10.noarch.rpm

# 若安装7.4版本,使用以下命令

# rpm -Uvh https://repo.zabbix.com/zabbix/7.4/release/centos/10/noarch/zabbix-release-latest-7.4.el10.noarch.rpm

dnf clean all && dnf makecache

4.2 安装 Zabbix 组件

# 安装Server、Web界面(Apache适配)、Agent及工具

dnf install -y zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-agent zabbix-get

4.3 初始化 Zabbix 数据库

  1. 创建 Zabbix 专用数据库及用户:

mysql -u root -p

执行以下 SQL 命令(密码替换为自定义复杂密码):

create database zabbix character set utf8mb4 collate utf8mb4_bin;

create user zabbix@localhost identified by 'ZabbixDB@2025';

grant all privileges on zabbix.* to zabbix@localhost;

flush privileges;

exit;

  1. 导入 Zabbix 7 初始数据:

# Zabbix 7数据文件路径与旧版本一致

zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql -u zabbix -p zabbix

输入 Zabbix 数据库用户密码(如ZabbixDB@2025),等待导入完成(约 1-3 分钟)。

4.4 配置 Zabbix Server

  1. 编辑数据库连接配置:

vi /etc/zabbix/zabbix_server.conf

修改核心配置项:

DBName=zabbix

DBUser=zabbix

DBPassword=ZabbixDB@2025  # 与数据库创建时一致

DBPort=3306  # 数据库默认端口,无需修改

LogFile=/var/log/zabbix/zabbix_server.log  # 日志路径保持默认

  1. 配置 Zabbix Web 时区:

vi /etc/httpd/conf.d/zabbix.conf

确保时区配置正确:

php_value date.timezone Asia/Shanghai

4.5 启动 Zabbix 相关服务

# 重启Web服务与PHP

systemctl restart httpd php-fpm

# 启动Zabbix服务并设置开机自启

systemctl start zabbix-server zabbix-agent

systemctl enable zabbix-server zabbix-agent

# 验证所有服务状态

systemctl status zabbix-server zabbix-agent httpd php-fpm

所有服务均需显示active (running)

五、Web 界面初始化与配置

5.1 访问 Zabbix Web 界面

在本地浏览器输入:http://服务器IP地址/zabbix(例:http://192.168.1.200/zabbix

5.2 分步初始化配置

  1. 欢迎页面:点击 “Next step” 进入环境检查。
  2. 环境验证:确保所有检查项均为 “OK”(重点检查 PHP 版本≥8.0.0 及扩展完整性),若缺失扩展可执行dnf install -y 缺失扩展名修复。
  3. 数据库连接
    • Database type:选择 “MySQL”
    • Database host:localhost(本地数据库)
    • Database port:3306
    • Database name:zabbix
    • User:zabbix
    • Password:输入ZabbixDB@2025

点击 “Next step”。

  1. 服务器设置
    • Hostname:输入服务器主机名(例:zabbix-server-7
    • Port:10051(默认端口)
    • Name:自定义监控系统名称(例:企业Zabbix 7监控平台

点击 “Next step”。

  1. 配置确认:核对信息无误后点击 “Next step”,完成安装后点击 “Finish”。

5.3 首次登录与安全配置

  • 默认账号:Admin
  • 默认密码:zabbix

登录后立即修改密码:点击右上角 “Admin”→“Profile”→“Change password”,设置强密码并保存。

六、Zabbix 7 核心功能验证

6.1 本地 Agent 监控验证

  1. 进入 “Monitoring”→“Hosts”,查看 “Zabbix server” 主机状态:
    • “ZBX” 列显示绿色对勾(Agent 通信正常)
    • “Status” 为 “Enabled”
  1. 查看监控数据:进入 “Monitoring”→“Latest data”,选择 “Zabbix server”,可查看 CPU、内存、磁盘等实时数据(默认采集周期 1 分钟)。

6.2 Zabbix 7 新功能体验(可选)

  1. 仪表盘自定义:点击 “Dashboard”→“Edit”,添加 “Top Triggers”“System Status” 等新组件。
  2. 自动发现规则:进入 “Configuration”→“Discovery”,创建基于 IP 段的自动发现规则(Zabbix 7 优化了发现效率)。
  3. 告警媒介配置:进入 “Administration”→“Media types”,配置邮件、钉钉等告警方式(支持更多模板化配置)。

七、常见问题排查

7.1 Zabbix Server 启动失败

  • 排查方法:查看日志定位原因

cat /var/log/zabbix/zabbix_server.log

  • 常见原因:
    1. 数据库连接错误:检查zabbix_server.conf中 DB 参数是否正确。
    2. 端口被占用:执行netstat -tulpn | grep 10051,杀死占用进程后重启服务。

7.2 Web 界面显示异常

  • 问题现象:页面样式错乱或功能缺失
  • 解决方法:

# 检查Apache配置

vi /etc/httpd/conf.d/zabbix.conf

# 确保DocumentRoot指向正确路径

DocumentRoot /usr/share/zabbix

# 重启Apache

systemctl restart httpd

7.3 PHP 版本不兼容

  • 问题现象:环境检查显示 PHP 版本不足
  • 解决方法:

# 卸载旧版本PHP

dnf remove -y php*

# 重新安装PHP 8.0+

dnf install -y php php-fpm php-mysqlnd

八、文档附录

8.1 常用命令汇总

命令用途

命令内容

重启 Zabbix 服务

systemctl restart zabbix-server zabbix-agent

查看 Zabbix 日志

tail -f /var/log/zabbix/zabbix_server.log

验证 Agent 通信

zabbix_get -s 127.0.0.1 -p 10050 -k "system.uname"

重建 Zabbix 缓存

zabbix_server -R config_cache_reload

备份 Zabbix 数据库

mysqldump -u root -p zabbix > zabbix_backup_$(date +%Y%m%d).sql

8.2 参考资料

  1. Zabbix 7 官方文档:https://www.zabbix.com/documentation/7.0/en/manual
  2. Zabbix 7 下载页面:https://www.zabbix.com/cn/download
  3. CentOS Stream 10 官方镜像:https://mirrors.aliyun.com/centos-stream/

8.3 版本信息

版本

修订日期

修订内容

修订人

V1.0

2025 年 X 月 X 日

初稿完成,适配 Zabbix 7.0/7.4 及 CentOS Stream 10

运维工程师

Logo

更多推荐