Zabbix 服务端与 Agent 安装 · 修改记录
这是 monitor/zabbix-install.md 的每次改动内容,按时间从新到旧。其他文章一起提交的部分不会出现在这里。
#1
2026-10-18
+69
−0
docs: 新增数据库/虚拟化/监控/备份 4 个分类和 13 篇文章
a0b4968
new file mode 100644
@@ -0,0 +1,69 @@
+---
+tags: [Zabbix, 监控, Linux]
+order: 10
+---
+
+# Zabbix 服务端与 Agent 安装
+
+## 场景
+
+要给一批服务器和交换机上监控,能看 CPU/内存/磁盘,出问题发邮件或钉钉。
+
+## 前置条件
+
+- 一台 Linux 做服务端(2C4G 起步,磁盘 100G)
+- 一个数据库(MySQL/PostgreSQL,Zabbix 自带模板)
+- 能发邮件或用 Webhook 推告警
+
+## 配置
+
+```bash
+# 1. 装数据库
+dnf install -y mysql-server
+systemctl enable --now mysqld
+mysql -e "CREATE DATABASE zabbix CHARACTER SET utf8mb4;"
+mysql -e "CREATE USER 'zabbix'@'localhost' IDENTIFIED BY '强密码';"
+mysql -e "GRANT ALL ON zabbix.* TO 'zabbix'@'localhost';"
+
+# 2. 装 Zabbix 源和组件
+rpm -Uvh https://repo.zabbix.com/zabbix/6.4/rhel/8/x86_64/zabbix-release-6.4-1.el8.noarch.rpm
+dnf install -y zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-sql-scripts zabbix-agent
+
+# 3. 导入表结构
+zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | \
+ mysql --default-character-set=utf8mb4 -uzabbix -p zabbix
+
+# 4. 配数据库密码
+sed -i 's/^# DBPassword=.*/DBPassword=强密码/' /etc/zabbix/zabbix_server.conf
+
+# 5. 启动
+systemctl enable --now zabbix-server zabbix-agent httpd php-fpm
+```
+
+浏览器打开 `http://IP/zabbix`,默认 `Admin` / `zabbix`。
+
+## 验证
+
+```bash
+systemctl status zabbix-server
+tail -f /var/log/zabbix/zabbix_server.log
+zabbix_server -V
+```
+
+网页能登录、`Reports → System information` 里没有红色报错。
+
+## 回滚
+
+```bash
+systemctl disable --now zabbix-server zabbix-agent httpd php-fpm
+dnf remove -y zabbix-server-mysql zabbix-web-mysql
+```
+
+## 坑
+
+- **PHP 时区没配**,网页打开报 `Timezone for PHP is not set`,改 `php.ini` 的 `date.timezone`。
+- 导入 SQL 用错字符集,中文界面变问号。
+- 数据库密码里有特殊字符,`sed` 替换会出错,直接手改配置文件。
+- 服务端和 agent 版本差太多会连不上。
+- 默认模板的阈值不一定适合你,先观察一周再调。
+- 监控端口 10051/10050 要放行,agent 默认只听 127.0.0.1 之外的地址。