Zabbix Agent真正配通需满足:Server/ServerActive按模式正确配置、Hostname与Web端完全一致、防火墙/SELinux精准放行、zabbix_get验证返回有效数据、Web界面接口类型和模板匹配且等待1–2分钟采集。

Zabbix Agent 能连上 Server 且 Web 界面能采集到数据,才算真正配通——光装完、启起来、端口开着,不等于监控就生效。
zabbix_agentd.conf 关键参数必须对齐 Server 模式
被动模式(Server 主动拉取)和主动模式(Agent 推送)不能混用,Server 和 ServerActive 的值要按实际通信方式填准:
- 如果 Zabbix Server 通过「Agent」接口轮询采集(默认推荐),只填
Server=192.168.1.100,ServerActive留空或注释掉 - 如果走主动模式(比如被监控机在 NAT 后、防火墙只放行出站),必须填
ServerActive=192.168.1.100:10051(端口建议显式写上) -
Hostname必须和 Web 界面添加主机时填的 Host name 完全一致,区分大小写,不能是 IP 或 localhost -
ListenPort默认是 10050,改了就得同步调整 Web 界面中主机的Port字段
防火墙和 SELinux 不是“关了就行”,得精准放开
CentOS/RHEL 8+ 默认用 firewalld,只开 10050/tcp 不够,还要确认方向和源:
Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。
- 被动模式下,被监控端需允许 Server IP 进入:
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" port port="10050" protocol="tcp" accept' - 主动模式下,被监控端只需出站通 Server 的
10051/tcp,入站规则可完全关闭 -
setenforce 0是临时方案;长期运行建议用semanage port -a -t zabbix_agent_port_t -p tcp 10050放行端口,避免关 SELinux 引发其他服务异常
验证 agent 是否真在工作,别只看 systemctl status
systemctl status zabbix-agent 显示 active (running) 只代表进程活着,不代表能通信或返回数据:
- 本地测试采集:执行
zabbix_get -s 127.0.0.1 -k "system.cpu.load[all,avg1]",有数字返回才说明 agent 配置加载正常 - 从 Server 测试连通:在 Zabbix Server 上跑
zabbix_get -s 被监控IP -k "agent.ping",返回1才算链路通 - 日志要看
/var/log/zabbix/zabbix_agentd.log,常见报错如cannot connect to [[192.168.1.100]:10051]: Connection refused表示ServerActive地址/端口错或 Server 没监听 10051
Web 界面添加主机时模板和接口必须匹配
模板选错或接口类型不对,会导致“主机已添加但没数据”:
- Interface 类型必须选 Agent,不是 SNMP 或 JMX;IP 填被监控机真实 IP(不是 127.0.0.1),Port 填 agent 实际监听端口
- 模板必须带
by Zabbix agent字样,例如Template OS Linux by Zabbix agent;选Template OS Linux(无 by Zabbix agent)会因 key 不匹配而无数据 - 添加后等 1–2 分钟再查
Monitoring → Latest data,刚加完立即刷新可能还是空——Zabbix 默认每分钟拉一次
最容易被忽略的是 Hostname 和 Web 界面 Host name 的大小写与拼写一致性,以及 Server/ServerActive 在被动/主动模式下的互斥性。这两个点出错,其余全对也白搭。

















