如何在Linux中安装和配置Zabbix Linux实现企业级监控的方法

千瑶小哥_9000

千瑶小哥_9000

2026-05-26

554人浏览

原创

zabbix在linux上需数据库、web服务、php三者协同,任一配置错误即导致server启动失败或web报500/“checking prerequisites”;须严格匹配版本依赖、字符集(utf8mb4)、php扩展、selinux策略及zabbix_server.conf中dbhost/dbpassword/listenport等关键参数。

如何在linux中安装和配置zabbix linux实现企业级监控的方法

Zabbix 在 Linux 上不是“装上就能用”的监控工具,它依赖数据库、Web 服务、PHP 运行时三者协同,任一环节配置错,zabbix_server 就起不来,Web 页面就卡在“Checking prerequisites”或直接报 500 错误。


确认系统环境与组件依赖是否齐备

Zabbix 不是独立二进制,它对底层有明确要求:

  • CentOS/RHEL 7/8 或 Rocky/AlmaLinux 8+ 是当前主流支持版本;Ubuntu 20.04/22.04 也稳定,但注意 PHP 版本(Zabbix 6.0+ 要求 PHP ≥ 8.0)
  • 数据库必须选 MySQL 8.0+、MariaDB 10.5+ 或 PostgreSQL 12+;SQLite 仅限测试,不适用于生产
  • Web 服务可用 Apache 或 Nginx,但 Nginx 需搭配 rh-nginx116(RHEL/CentOS)或官方 repo 提供的包,否则 PHP-FPM 无法正确传递 /zabbix 路径
  • 必装 PHP 扩展:php-bcmath、php-mbstring、php-xml、php-gd、php-ldap(如需 LDAP 登录)、php-pgsql 或 php-mysqlnd(按数据库选其一)

常见漏装项:

  • 忘记 php-fpm,导致 Nginx 返回空白页或 502
  • php-opcache 没启用,Web 界面加载极慢
  • SELinux 未设为 permissive 或未加对应布尔值(如 httpd_can_network_connect_db=on),zabbix_server 连不上远程数据库却无日志提示

数据库初始化必须匹配 Zabbix 版本和引擎

Zabbix 安装包自带的 SQL 脚本(如 /usr/share/doc/zabbix-server-mysql/create.sql.gz)严格绑定版本号。用 Zabbix 6.4 的包,却导入 6.0 的 schema,会导致表缺失、触发器失效、前端报 “No permissions to referred object” 等错误。

操作要点:

Linux installer
Linux installer

先解析安全源,运行本地CLI安装、启动、卸载Linux桌面应用。用户请求时使用。

下载
  • 先解压再导入:zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p zabbix
  • MySQL/MariaDB 用户必须有 CREATE ROUTINE 和 ALTER ROUTINE 权限(Zabbix 6.0+ 触发器依赖存储过程)
  • PostgreSQL 用户需先执行 CREATE EXTENSION pg_trgm; 和 CREATE EXTENSION btree_gist;,否则前端搜索、排序异常
  • 字符集必须为 utf8mb4(MySQL)或 UTF8(PostgreSQL),否则中文模板名、主机名入库后乱码或截断

zabbix_server.conf 配置最容易出错的三项

zabbix_server.conf 表面简单,但三个字段写错就会让服务启动失败且日志无明确提示:

  • DBHost:不能写 localhost(会走 Unix socket),跨服务器必须写 IP 或域名;若 DB 在容器中,别写 127.0.0.1(那是容器内 loopback)
  • DBPassword:密码含特殊字符(如 @、/、:)必须 URL 编码(如 pass@123 → pass%40123),否则连接字符串解析失败
  • ListenPort 和 StartPollers:默认 10051 端口若被占用,systemctl start zabbix-server 会静默失败;StartPollers=5 对 10 台主机够用,但 500+ 主机建议调至 30+ 并配合 StartPreprocessors

验证方式:

  • 启动后立刻执行:ss -tnlp | grep :10051,没输出说明进程根本没起来
  • 查看真实错误:tail -n 20 /var/log/zabbix/zabbix_server.log,重点看 “cannot connect to database” 或 “invalid password format”

Web 前端访问 404 或白屏的定位路径

Zabbix Web 不是放个文件夹就行,它依赖精确的 URL 路由重写和 PHP 入口点:

  • Apache 下,/etc/httpd/conf.d/zabbix.conf 必须包含 Alias /zabbix /usr/share/zabbix,且 <directory></directory> 块里要有 Require all granted
  • Nginx 下(尤其 RHEL 系),实际配置在 /etc/opt/rh/rh-nginx116/nginx/conf.d/zabbix.conf,其中 root /opt/rh/rh-nginx116/root/usr/share/zabbix; 是关键,路径错一个字母就 404
  • PHP-FPM socket 路径要一致:fastcgi_pass unix:/var/opt/rh/rh-php73/run/php-fpm/www.sock;(RHEL)或 127.0.0.1:9000(Ubuntu),不匹配就是 502
  • 浏览器访问必须带 /zabbix 路径(如 @#@#@#@#@#@#@#@#@#@0),直接访问根目录会跳转失败或提示 “Zabbix is not configured yet”

最常被忽略的是:修改完 Nginx/Apache 配置后,忘了 systemctl reload nginx 或 systemctl reload httpd,改了等于没改。

Zabbix 的“安装完成”不是 rpm 安装成功那一刻,而是你能在 Web 界面看到 Dashboard、且 zabbix_get -s 127.0.0.1 -k "system.uptime" 返回有效数值——中间每一步都可能断在看不见的地方。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

linux

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

2023.06.21

3970

4

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

2023.06.29

3393

10

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

2023.06.30

2573

5

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

2023.07.05

6230

7

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

2023.07.06

5862

7

linux查看文件夹大小
linux查看文件夹大小

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。linux怎么查看文件夹大小呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.20

3433

8

linux查看ip命令
linux查看ip命令

本专题为大家提供linux查看ip命令相关文章内容,感兴趣的朋友可以免费下载体验试试。

2023.07.20

2925

4

linux查看cpu使用率
linux查看cpu使用率

在linux的系统维护中,可能需要经常查看cpu使用率,分析系统整体的运行情况。本专题为大家带来了linux查看cpu使用率的相关文章,感兴趣的朋友千万不要错过了。

2023.07.25

3159

6

linux查找文件命令
linux查找文件命令

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.31

297

3

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习