外观
1. Zabbix 概述
1.1 Zabbix 是什么?
Zabbix 是一个功能强大、开源免费、可扩展的企业级监控平台,适合监控从一台服务器到全球分布式基础设施的任何内容。
IMPORTANT
Zabbix 基于 GPL 协议发布,是一个完全免费的开源监控解决方案,无需担心许可证费用。
1.1.1 核心特性
- 开源免费:基于 GPL 协议发布。
- 企业级:适用于从小型到大型企业的各种环境。
- 分布式监控:支持跨地域、跨网络的分布式部署。
- 实时监控:支持秒级数据采集与告警。
1.1.2 主要功能
| 功能类别 | 具体内容 |
|---|---|
| 数据采集 | 支持 Agent、SNMP、IPMI、JMX、SSH、Telnet、HTTP 等多种方式。 |
| 监控指标 | CPU、内存、磁盘、网络、进程、日志、数据库、Web 服务、云平台等。 |
| 告警机制 | 支持多级别告警、恢复通知、告警升级、周期发送、媒体类型(邮件、短信、微信、钉钉、Slack 等)。 |
| 可视化 | 自定义仪表盘、图形、拓扑图、幻灯片、KPI 大屏。 |
| 自动化 | 自动发现设备、自动注册、LLD(低级别发现)、模板继承、API 脚本化操作。 |
| 权限管理 | 多用户、多用户组、角色权限、前端访问控制。 |
| 高可用 | 支持 Zabbix Server 高可用集群、数据库 HA、Proxy 分布式架构。 |
| API | 提供完整的 JSON-RPC API,支持第三方集成。 |
1.2 系统架构
Zabbix 采用分布式架构设计,由多个组件协同工作,支持从小型单机部署到大型分布式监控系统的扩展。
1.2.1 架构组件说明
NOTE
Zabbix 的架构设计具有高度的灵活性和扩展性,可以根据监控规模选择不同的部署模式。
1.2.1 核心层 (Central Tier)
- Zabbix Server:监控系统的核心,负责数据收集、处理、存储和告警逻辑
- Database:存储配置信息、历史数据和趋势数据,支持多种数据库
- Web Frontend:基于 PHP 的 Web 界面,提供配置管理和数据可视化
1.2.2 代理与采集层 (Edge Tier)
- Zabbix Proxy:分布式代理服务器,用于减轻中心服务器负载,支持离线数据缓存
- Zabbix Agent/Agent2:部署在被监控主机上的轻量级代理,支持主动和被动模式
- Agent-less 监控:通过 SNMP、IPMI、SSH 等协议实现无代理监控
1.2.3 被监控资源层 (Resource Tier)
涵盖各类 IT 基础设施,包括服务器、虚拟机、网络设备、数据库、中间件、IoT 设备和云平台资源。
TIP
在大规模分布式部署中,合理使用 Proxy 可以显著提升系统性能和可靠性,建议根据网络拓扑和监控规模规划 Proxy 的部署位置。