Zabbix 原理
简介
Zabbix是一个开源的监控系统,可以监控大部分基础设施,包括:网络设备,计算资源,存储资源等。
架构
- apache + mysql + server + proxy + agent
apache 用于GUI
mysql 用于存放监控信息,用户数据,以及监控对象的元数据等;
proxy 作为代理,接收来自所有agent采集的监控指标信息,proxy的存在,使得不用agent都访问server,增强server的稳定性; 多proxy可以分摊agent对一个proxy的访问压力;
agent 部署在要监控对象的一个可执行程序,按照指定的策略采集指标,上报信息到proxy
zabbix 功能
用户管理
- 用户组管理
- 用户管理
- 权限管理
监控配置
- 指标配置
- 规则配置
告警配置
- 告警规则
- 告警途径
- 告警对象
ZAbbix 表结构
- 此处只针对部分重要表结构进行说明
监控指标信息
- 监控信息的存放设计两大类(我自己划分): 准实时和历史,其实在zabbix上分别叫做:history和trends,先说实时(history)
history
- 总记有5张表:history,history_log,history_str, history_text, history_uint;
- 如上5张表的结构类似,只有history_log比较特殊(多了4个字段,后面单独说)
- 5张表共同的结构如下
字段|类型|备注
---|---|---
itemid|bigint(20) unsigned| 与items表的itemid关联
clock|int(11)| 时间戳,表示指标信息的采集时间,细化到秒
value|double(16,4)|具体的指标值
ns|int(11)|小于1秒的精确信息通过此字段获取
- history_log表的信息
字段|类型|备注
---|---|---
itemid|bigint(20) unsigned| 与items表的itemid关联
clock|int(11)| 时间戳,表示指标信息的采集时间,细化到秒
timestamp|int(11)|
source|varchar(64)|
servity|int(11)|
value|double(16,4)|具体的指标值
logeventid|int(11)|
ns|int(11)|小于1秒的精确信息通过此字段获取