Zabbix 是一款开源的分布式监控系统,广泛用于服务器、网络设备和应用的实时监控与告警。以下是其架构和工作原理的详细说明:
一、Zabbix 核心架构
Zabbix 采用分层设计,主要组件如下:
1. Zabbix Server
- 核心组件:负责数据处理(如性能数据、告警计算)、触发告警、发送通知。
- 功能:与 Agent、Proxy 通信,存储数据到数据库,执行自定义脚本(如告警通知)。
- 多线程设计:支持并行处理监控项和告警逻辑。
2. Zabbix Agent
- 部署在被监控目标上:支持 Linux、Windows 等系统。
- 数据采集方式:
- 被动模式(默认):Server 主动请求 Agent 获取数据。
- 主动模式:Agent 主动将数据发送给 Server(适合跨防火墙场景)。
- 支持自定义监控项:通过配置文件或 API 扩展监控指标。
3. Zabbix Proxy
- 可选的中继组件:用于分布式监控,减轻 Server 负载。
-