一、Zabbix 是什么?为什么要用它?
1.1 用"医院体检系统"来理解 Zabbix
想象一家大型体检中心:
| 体检中心角色 | 对应 Zabbix 组件 | 读音 | 干什么的 |
|---|---|---|---|
| 体检中心本身 | Zabbix 整体 | 扎比克斯 | 一整套监控解决方案 |
| 体检传感器(量血压、测心电的设备) | Agent(艾金特) | 艾金特 | 装在被监控机器上,采集数据 |
| 总控制室(汇总所有检查结果) | Server(瑟维尔) | 瑟维尔 | 大脑,接收数据、触发告警、调度任务 |
| 分院(异地体检点,结果先汇总到分院再报给总部) | Proxy(普罗克西) | 普罗克西 | 中转站,大规模部署时分担 Server 压力 |
| 体检报告(你在手机上看到的检查结果) | Web 界面 | 韦伯 | 可视化展示,让你"看"到系统状态 |
| 档案室(存历年体检数据) | Database(数据库) | 达塔贝斯 | 存所有监控数据,支持历史查询 |
1.2 没有监控时有多惨?
- 服务器挂了才知道------用户打电话投诉,你才知道网站挂了,被动救火
- 排查靠人肉登录------一台台 SSH 上去看日志,几十台机器能看一天
- 无法提前预警------磁盘快满了、内存快爆了,没人告诉你
- 出了问题互相甩锅------开发说"我代码没问题",运维说"服务器没问题",没有数据说不清
1.3 有了 Zabbix 之后
- 自动发现问题------CPU 飙高、磁盘快满、服务宕机,自动检测到
- 可视化看趋势------图表展示历史数据,一眼看出负载变化
- 告警通知------邮件/短信/钉钉/微信,出问题第一时间通知你
- 历史数据分析------对比上周/上月数据,发现规律和趋势
- 容量规划------预测什么时候需要扩容,提前准备
1.4 Zabbix 7 比老版本强在哪?
一句话:更快、更智能、更现代
- 更快 → 采集速度从 5 万/秒飙到 100 万/秒,提升 20 倍
- 更智能 → 不只是报警,还能做根源分析(告诉你问题出在哪)
- 更现代 → 界面用 Vue3 重写,支持 K8S 自动发现,支持云原生监控
二、核心架构(搞清楚组件关系)
2.1 五大组件逐一讲清
① Server ------ 大脑
Zabbix Server 是整个系统的核心,相当于人的大脑。
- 接收 Agent 采集的数据
- 计算触发器(Trigger,特里格尔)判断是否告警
- 调度任务、发送通知
- 所有决策都在这里做出
② Proxy ------ 中转站
Zabbix Proxy 是可选组件,相当于体检中心的"分院"。
- 在远程机房或分支机构部署
- 先收集本地 Agent 的数据,再压缩加密后统一发给 Server
- Server 挂了的时候,Proxy 能继续采集数据,等 Server 恢复后再补传
③ Agent ------ 探头
Zabbix Agent 装在被监控的机器上,相当于体检传感器。
- 采集 CPU、内存、磁盘、网络等指标
- 监听 10050 端口,等待 Server 来取数据(被动模式)
- 也可以主动把数据推给 Server(主动模式)
④ Database ------ 档案室
数据库 存所有监控数据,相当于体检中心的档案室。
- Zabbix 7 推荐用 TimescaleDB 存短期数据(时序数据库,专门为时间序列数据优化)
- 可选配 ClickHouse 存长期历史数据(查询速度极快)
- 历史数据查询从 10 秒降到 200ms,提升 50 倍!。
⑤ Web ------ 展示窗口
Zabbix Web 界面 是你操作和查看监控数据的窗口。
- Zabbix 7 用 Vue3 重构了 90% 的界面,更现代更好用
- 支持拖拽式设计器、拓扑图自动生成、业务热力图
- 所有操作都在这里完成:添加主机、配置告警、查看图表
2.2 数据流向(数据怎么走的?)
plaintext
Agent 采集数据 → Proxy 中转(可选) → Server 处理 → Database 存储 → Web 展示
探头量体温 分院汇总 大脑判断 档案室存档 报告展示
简单理解:
- Agent 在被监控机器上采集数据(量体温)
- 如果有 Proxy,数据先发给 Proxy(分院汇总)
- Proxy/Agent 把数据发给 Server(结果报给总部)
- Server 把数据存到数据库(存入档案室)
- 你在 Web 界面查看图表和告警(看体检报告)
2.3 什么时候需要 Proxy?什么时候不需要?
表格
| 场景 | 是否需要 Proxy | 原因 |
|---|---|---|
| 就几台服务器,都在同一个机房 | ❌ 不需要 | Agent 直接连 Server 就行 |
| 有远程机房,网络到 Server 不稳定 | ✅ 需要 | Proxy 本地缓存数据,网络恢复后补传 |
| 几百上千台服务器 | ✅ 需要 | 减轻 Server 压力,Proxy 分担采集任务 |
| 跨云/混合云环境 | ✅ 需要 | 每个云区域部署 Proxy,统一管理 |
| 有防火墙/网络隔离 | ✅ 需要 | Proxy 只需一个出口连 Server,Agent 不用都穿透防火墙 |
2.4 Zabbix 6 vs 7 关键区别
表格
| 对比项 | Zabbix 6 | Zabbix 7 | 通俗解释 |
|---|---|---|---|
| Server 扩展 | 纯 C++ 单进程 | 支持 Go 扩展插件 | 7 能装"外挂"增强功能,6 不行 |
| Proxy 高可用 | 单点部署 | 原生 HA 集群 | 7 的 Proxy 不会单点故障了 |
| 时序存储 | 仅关系型数据库 | 新增 ClickHouse | 7 查历史数据快 50 倍 |
| 数据采集 | 主动/被动模式 | 新增 eBPF 无埋点 | 7 不用改代码就能监控容器内部 |
| 界面框架 | PHP + JS | Vue3 重构 90% | 7 的界面更现代、更流畅 |
| 采集速度 | 5 万指标/秒 | 100 万指标/秒 | 7 快了 20 倍! |
⚠️ eBPF是 Linux 内核技术,可以在不改应用代码的情况下监控程序内部运行状态,Zabbix 7 原生支持,非常强大。
三、Zabbix 7 三大突破性能力
3.1 混合云监控 ------ 自动发现新设备
痛点: 现代企业的服务器散落在阿里云、腾讯云、自有机房......K8S(Kubernetes,库伯奈特斯)容器更是随时创建、随时销毁,手动添加监控根本跟不上。
Zabbix 7 的解法:K8S 自动发现
- 自动识别 K8S 集群中新建的 Pod(容器组)
- 自动给新 Pod 添加监控,不需要人工操作
- 支持按 namespace(命名空间)和 label(标签)过滤
💡 类比:体检中心来了新员工,以前要手动登记才能体检,现在门禁系统自动识别新面孔,自动安排体检项目。K8S 里新起一个容器,Zabbix 自动发现、自动监控,完全不需要你动手。
3.2 性能革命 ------ 快到飞起
表格
| 场景 | Zabbix 6 | Zabbix 7 | 提升倍数 |
|---|---|---|---|
| 新指标采集 | 5 万/秒 | 100 万/秒 | 20 倍 |
| 历史查询(1 亿数据) | 10 秒 | 200ms | 50 倍 |
| 配置下发 | 分钟级 | 秒级同步 | 100 倍 |
通俗理解:
- 采集 100 万/秒 = 每秒能给 100 万个指标做体检,1 亿条数据 0.2 秒就能查出来
- 以前查个历史报表要等 10 秒转圈,现在眨眼间就出来了
- 以前改个配置要等几分钟生效,现在秒级同步
3.3 智能告警引擎 ------ 不只是"报警",还能找根因
传统告警: "CPU 使用率 95%!" → 你还得自己去查为什么 CPU 高
Zabbix 7 智能告警: "CPU 高是因为 K8S 里某个 Pod 内存泄漏导致 OOM,触发了频繁重启
三种根源分析方式:
- 服务拓扑分析 → 从服务调用关系定位故障 Pod
- 日志关联分析 → 识别 OOM(Out of Memory,内存溢出)错误
- 调用链跟踪 → 发现慢 SQL 导致的连锁反应
四、Zabbix vs 其他监控工具
4.1 vs Nagios
表格
| 对比维度 | Zabbix | Nagios |
|---|---|---|
| 架构 | ✅ 原生分布式 | ❌ 需要插件才支持 |
| 自动发现 | ✅ 强大 | ⚠️ 基础 |
| 历史数据分析 | ✅ 深度分析 | ❌ 只看当前状态 |
| 可视化 | ✅ 丰富 | ❌ 简陋 |
| 学习难度 | ⚠️ 中等 | ✅ 简单 |
结论:Nagios 是老一代监控,功能简陋;Zabbix 更现代更全面,基本碾压。
4.2 vs Prometheus
表格
| 对比维度 | Zabbix | Prometheus |
|---|---|---|
| 历史数据 | ✅ 长期存储,深度分析 | ⚠️ 短期数据,默认只存 15 天 |
| 可视化 | ✅ 自带丰富图表 | ⚠️ 依赖 Grafana |
| 容器监控 | ✅ 7.0+ 增强 | ✅ 原生支持,生态更强 |
| 数据模型 | 面向主机和应用 | 面向指标(Metrics,梅特里克斯) |
| 告警 | ✅ 丰富灵活 | ⚠️ Alertmanager 配置复杂 |
核心区别:
- Zabbix 擅长传统 IT 基础设施监控,历史数据存储强,开箱即用
- Prometheus 擅长云原生/容器监控,和 K8S 生态深度整合
4.3 怎么选?
表格
| 场景 | 推荐 |
|---|---|
| 主要是物理机/虚拟机,传统 IT 环境 | Zabbix |
| 主要是容器/K8S,云原生环境 | Prometheus |
| 既有传统服务器又有容器 | 两个都用(Zabbix 可以导入 Prometheus 数据) |
五、添加监控主机实战(核心实操
5.1 Linux 主机监控
完整流程:5 步搞定
第 1 步:在被监控的 Linux 上安装 Agent
# 添加 Zabbix 官方仓库
rpm -Uvh https://repo.zabbix.com/zabbix/7.0/rocky/9/x86_64/zabbix-release-7.0-5.el9.noarch.rpm
# 安装 Agent
yum install -y zabbix-agent
第 2 步:配置 Agent,告诉它"谁是 Server"
vim /etc/zabbix/zabbix_agentd.conf
# 找到第 117 行左右的 Server 配置,改成你的 Zabbix Server IP
Server=192.168.115.240 # ← 这里填 Zabbix Server 的 IP!
超级常见错误:
Server=这里填的是 Zabbix Server 的 IP ,不是被监控机器自己的 IP!就像体检传感器要知道"把数据发给哪个总控制室",而不是填自己的地址。
第 3 步:启动 Agent 服务
# 启动并设置开机自启
systemctl enable --now zabbix-agent.service
# 验证是否启动成功(看到 10050 端口在监听就对了)
netstat -anptu | grep zabbix_agent
# 应该看到:tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN
10050 是 Agent 的默认端口,就像传感器的"频道号",Server 通过这个端口来取数据。
第 4 步:在 Web 界面添加主机
- 打开 Zabbix Web 界面
- 点击 数据采集 → 主机 → 创建主机
- 填写信息:
- 主机名称 :给被监控机器起个名字(如
web-server-01) - 模板 :选择
Linux by Zabbix agent(预定义的 Linux 监控项集合) - 群组 :选
Linux servers - 接口:添加 Agent 接口,填被监控机器的 IP,端口填 10050
- 主机名称 :给被监控机器起个名字(如
- 点击 添加
模板(Template) 是预定义的监控项集合,关联到主机就能直接用,不用一个个手动加。就像套餐体检,选了"基础套餐"就包含身高体重血压等所有基础项目。
第 5 步:查看图形
- 等几分钟,在主机列表的"可用性"列看到 绿色 图标 = 成功
- 点击 监测 → 主机 → 图形,就能看到 CPU、内存等实时图表
如果可用性显示 红色,说明 Agent 连不上,见"常见问题"排查。
5.2 Windows 主机监控
和 Linux 的主要区别:Agent 安装方式不同,其他一样。
第 1 步:下载 Windows 版 Agent
plaintext
https://cdn.zabbix.com/zabbix/binaries/stable/7.0/7.0.4/zabbix_agent-7.0.4-windows-amd64.zip
第 2 步:解压并安装
cmd
E:
cd zabbix-agent\bin
# 安装为 Windows 服务(-i = install,-c = 指定配置文件)
zabbix_agentd.exe -i -c D:\zabbix-agent\conf\zabbix_agentd.conf
# 启动服务(-s = start)
zabbix_agentd.exe -s
⚠️ 配置文件中的
Server=也要改成 Zabbix Server 的 IP,和 Linux 一样!
第 3 步:验证启动
cmd
netstat -ano | findstr 10050
# 应该看到:TCP 0.0.0.0:10050 0.0.0.0:0 LISTENING
第 4 步:Web 界面添加
- 先创建 Windows 主机组:数据采集 → 主机群组 → 创建主机组
- 再添加主机:选 Windows 模板,放进 Windows 主机组
- 查看图形
Windows 和 Linux 的区别就是安装方式不同,Web 端操作基本一样,只是模板不同。
5.3 网络设备监控(SNMP)
SNMP 是什么?
SNMP(Simple Network Management Protocol,简单网络管理协议) 是网络设备(路由器、交换机、防火墙)的"通用语言"。
💡 类比:所有国家的体检中心用不同的语言,但量血压用的标准是统一的。SNMP 就是网络设备的"统一标准",让 Zabbix 能读懂各种品牌路由器、交换机的状态。
为什么网络设备不用 Agent?
因为路由器、交换机是封闭系统,装不了软件 !你不能在 Cisco 路由器上 yum install zabbix-agent。所以只能用 SNMP 这种设备原生支持的协议来监控。
配置流程
在路由器/交换机上开启 SNMP:
bash
⚠️
community相当于访问密码,生产环境不要用简单密码!
在 Zabbix Web 界面添加:
- 数据采集 → 主机 → 创建主机
- 接口选 SNMP(不是 Agent!)
- 选择对应的 SNMP 模板(如
Network Generic Device by SNMP) - 填写设备的 IP 和 community 字符串
- 添加
💡 Agent 监控和 SNMP 监控的区别:
- Agent = 在机器上装个"探员",适合服务器
- SNMP = 用"通用语言"问设备,适合网络设备(路由器/交换机/防火墙)
5.4 MySQL 数据库监控
这个比前面复杂一点,6 步搞定:
第 1 步:拷贝监控脚本
bash
cp /usr/share/doc/zabbix-agent/userparameter_mysql.conf /etc/zabbix/zabbix_agentd.d/
💡 userparameter_mysql.conf 是什么? 这是一个自定义监控项配置文件,里面预定义了 Zabbix 采集 MySQL 指标的方法。告诉 Zabbix:"用这个命令去查 MySQL 的状态"。就像体检中心给检查员一本操作手册:"按这个步骤量血压"。
第 2 步:添加 MySQL 监控用户
第 3 步:配置 .my.cnf(让 Agent 知道怎么连 MySQL)
bash
vim /etc/my.cnf
[client]
protocol=tcp
user='root'
password='123.com'
第 4 步:重启 Agent
systemctl restart zabbix-agent
拷贝了新配置文件后必须重启,Agent 才能加载新的监控项。
第 5 步:用 zabbix_get 测试数据采集
# 先安装 zabbix_get(在 Server 端)
yum install -y zabbix-get
# 测试 MySQL 连通性
zabbix_get -s 192.168.115.224 -p 10050 -k "mysql.ping[192.168.115.224,3306]"
# 测试获取 MySQL 版本
zabbix_get -s 192.168.115.224 -p 10050 -k "mysql.version[192.168.115.224,3306]"
# 测试获取 MySQL 状态变量
zabbix_get -s 192.168.115.224 -p 10050 -k "mysql.get_status_variables[192.168.115.224,3306]"
zabbix_get 是什么? 它是 Server 端的测试工具,用来验证 Agent 能不能正确返回数据。就像体检中心总部派个人去分院检查,看看数据传回来是否正确。
命令参数解释:
-s= 被监控机器的 IP-p= Agent 端口(默认 10050)-k= 监控项的 key(键),就是你要查什么指标
第 6 步:在 Web 界面添加 MySQL 模板
- 数据采集 → 主机 → 创建主机(或编辑已有主机)
- 模板选择
MySQL by Zabbix agent - 保存,查看图形
自定义监控项(UserParameter)
如果内置的监控项不够用,可以自己写:
bash
vim /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf
# 格式:UserParameter=键名[*], 命令
# [*] 表示可以传参数
UserParameter=mysql.database.count[*], mysql -h"$1" -P"$2" -sN -e "show databases" | wc -l
解释:
mysql.database.count= 自定义的键名(给 Zabbix 用的名字)[*]= 接收参数(IP 和端口)- 后面的命令 = 实际执行的操作(查 MySQL 有多少个数据库)
测试:
bash
zabbix_get -s 192.168.115.224 -p 10050 -k "mysql.database.count[192.168.115.224,3306]"
# 返回 4,表示有 4 个数据库
💡 UserParameter(用户参数) 是 Zabbix 的扩展机制,让你可以监控任何能用命令行获取的数据。思路就是:写一个命令能拿到数据 → 用 UserParameter 注册为监控项 → Zabbix 就能定期采集了。
六、关键知识点清
表格
| 知识点 | 要点 | 读音 |
|---|---|---|
| Zabbix 核心组件 | Server + Proxy + Agent + DB + Web | 瑟维尔 + 普罗克西 + 艾金特 + 达塔贝斯 + 韦伯 |
| Agent 端口 | 10050(被动模式,Server 连 Agent 取数据) | --- |
| Server 端口 | 10051(Agent 主动推数据给 Server) | --- |
| SNMP | 网络设备监控协议,不需要装 Agent | 艾斯恩艾姆皮 |
| 数据采集方式 | Agent / Agentless / eBPF / OTel / SNMP Traps | 艾金特 / 艾金特莱斯 / 伊比皮埃夫 / 欧特尔 / 艾斯恩艾姆皮特拉普斯 |
| Proxy 的作用 | 大规模分布式部署时中转数据,减轻 Server 压力 | 普罗克西 |
| 自动发现 | 自动识别新设备并添加监控 | --- |
| userparameter | 自定义监控项配置,扩展 Zabbix 采集能力 | 尤瑟帕拉米特尔 |
| zabbix_get | Server 端测试工具,验证 Agent 数据采集 | 扎比克斯盖特 |
| 模板(Template) | 预定义的监控项集合,关联到主机即可用 | 坦普雷特 |
| 主机组(Host Group) | 按逻辑分组管理主机(如 Linux 组、Windows 组) | 霍斯特格鲁普 |
| Trigger | 触发器,定义什么条件下告警(如 CPU > 90%) | 特里格尔 |
| Item | 监控项,定义采集什么数据(如 CPU 使用率) | 艾特姆 |
| TimescaleDB | Zabbix 7 推荐的时序数据库 | 泰姆斯凯尔迪比 |
| ClickHouse | Zabbix 7 新增的长期历史数据存储引擎 | 克里克豪斯 |
七、常见问题
Q1:Zabbix Agent 和 Zabbix Proxy 有什么区别?
表格
| Agent | Proxy | |
|---|---|---|
| 装在哪 | 被监控的机器上 | 网络中间(某个机房/区域) |
| 干什么 | 采集数据 | 中转数据 |
| 类比 | 体检传感器 | 体检分院 |
一句话:Agent 是一线采集员,Proxy 是区域汇总站。
Q2:添加主机后可用性显示红色怎么办?
按顺序排查:
- ❓ Agent 有没有装?→ 登录被监控机器检查
- ❓ Agent 有没有启动?→
systemctl status zabbix-agent - ❓ Server 地址配对了吗?→ 检查
zabbix_agentd.conf中Server=的 IP - ❓ 防火墙挡了 10050 端口?→ 在 Server 上
telnet 被监控IP 10050测试 - ❓ 等了几分钟?→ 刚添加需要等一会儿才会变绿
Q3:被动模式和主动模式的区别?
表格
| 被动模式 | 主动模式 | |
|---|---|---|
| 谁主动 | Server 主动连 Agent 取数据 | Agent 主动推数据给 Server |
| 端口 | Agent 监听 10050,Server 来连 | Agent 主动连 Server 的 10051 |
| 适用场景 | Agent 数量少、网络稳定 | Agent 数量多、在 NAT/防火墙后面 |
| 类比 | 老师点名回答问题 | 学生主动举手报告 |
💡 默认是被动模式,大多数场景够用。大规模部署或有防火墙时切换主动模式。
Q4:zabbix_get 报错怎么排查?
常见报错及原因:
表格
| 报错 | 原因 | 解决 |
|---|---|---|
Connection refused |
Agent 没启动或没装 | 启动 Agent 服务 |
Get value from agent failed |
Server IP 配错 | 检查 zabbix_agentd.conf 的 Server 配置 |
Timeout |
防火墙挡了 / 网络不通 | 检查防火墙规则和网络连通性 |
Not supported |
监控项 key 不存在 | 检查 userparameter 文件是否拷贝、Agent 是否重启 |
Q5:为什么要创建 MySQL 监控用户而不是用 root?
最小权限原则:监控只需要读取数据,不应该有任何写入权限。如果监控账号被入侵,用 root 就等于把整个数据库交给了黑客。
文档示例为了简化演示用了 root,生产环境必须这样做:
sql
-- 创建只读监控用户
CREATE USER 'zabbix_monitor'@'192.168.166.%' IDENTIFIED BY '复杂密码';
GRANT SELECT, REPLICATION CLIENT, SHOW DATABASES ON *.* TO 'zabbix_monitor'@'192.168.166.%';
八、进阶内容预告
源材料中还提到了以下监控主题,但内容待补充。这些是进阶内容,思路和 MySQL 监控类似:
表格
| 监控目标 | 思路 | 核心步骤 |
|---|---|---|
| Redis | 自定义监控脚本 + 模板 + 告警 | 用 redis-cli info 获取指标 → UserParameter 注册 → 关联模板 |
| Nginx | 开启 stub_status + 自定义监控项 | Nginx 配置 stub_status → UserParameter 采集连接数等指标 |
| MySQL 主从 | 监控从库延迟状态 | 用 SHOW SLAVE STATUS 获取延迟指标 → UserParameter → 告警 |
| Redis 集群 | 监控集群节点状态和槽分配 | redis-cli cluster info → 自定义监控项 → 集群拓扑可视化 |
| JVM | 监控 Java 应用内存/GC | JMX(Java Management Extensions)→ Zabbix JMX 监控 → GC/堆内存告警 |
💡 万能公式: 找到获取数据的命令/接口 → 用 UserParameter 注册 → Zabbix 定期采集 → 配置告警阈值。所有自定义监控都遵循这个套路!
九、速查表
部署命令速查
bash
# ===== Linux 被监控端 =====
# 安装 Agent
rpm -Uvh https://repo.zabbix.com/zabbix/7.0/rocky/9/x86_64/zabbix-release-7.0-5.el9.noarch.rpm
yum install -y zabbix-agent
# 配置 Server 地址
vim /etc/zabbix/zabbix_agentd.conf
# Server=Zabbix Server 的 IP
# 启动 Agent
systemctl enable --now zabbix-agent.service
# 验证
netstat -anptu | grep 10050
# ===== Windows 被监控端 =====
# 解压 Agent 到 D:\zabbix-agent
zabbix_agentd.exe -i -c D:\zabbix-agent\conf\zabbix_agentd.conf
zabbix_agentd.exe -s
netstat -ano | findstr 10050
# ===== MySQL 监控 =====
# 拷贝监控脚本
cp /usr/share/doc/zabbix-agent/userparameter_mysql.conf /etc/zabbix/zabbix_agentd.d/
# 创建监控用户(生产环境用最小权限!)
mysql -e "create user zabbix_monitor@'192.168.%' identified by '密码';"
mysql -e "grant select,replication client on *.* to zabbix_monitor@'192.168.%';"
# 配置 .my.cnf
vim /etc/my.cnf # 添加 [client] 段
# 重启 Agent
systemctl restart zabbix-agent
# Server 端测试
yum install -y zabbix-get
zabbix_get -s 被监控IP -p 10050 -k "mysql.ping[被监控IP,3306]"
# ===== 网络设备 SNMP =====
# Cisco 路由器开启 SNMP
snmp-server community 社区字符串
监控添加流程速查
plaintext
Linux 主机:装 Agent → 配 Server IP → 启动 → Web 添加主机(选 Linux 模板)
Windows 主机:下载 Agent → 命令行安装 → 启动 → Web 添加主机(选 Windows 模板)
网络设备:设备开 SNMP → Web 添加主机(选 SNMP 模板,接口选 SNMP)
MySQL:拷贝 userparameter → 建监控用户 → 配 .my.cnf → 重启 Agent → 测试 → Web 加模板
关键端口速查
表格
| 端口 | 用途 | 说明 |
|---|---|---|
| 10050 | Agent 端口 | 被动模式下 Server 连 Agent 取数据 |
| 10051 | Server 端口 | 主动模式下 Agent 推数据给 Server;Proxy 连 Server |
| 80/443 | Web 界面 | 浏览器访问 Zabbix 管理界面(HTTP/HTTPS) |
| 161 | SNMP | Server 轮询网络设备(读取数据) |
| 162 | SNMP Trap | 网络设备主动上报告警事件 |
📌 复习建议: 先理解"体检中心类比",搞清楚五大组件的关系;然后重点练实操(Linux + MySQL 监控),其他都是变体。遇到问题先查"常见问题"部分,90% 的新手坑都在那里。