zabbix架构
Zabbix包含几个核心组件
Server
Zabbix Server是Zabbix的中心组件,负责收集agent上报的数据、整合数据、评估数据。Server存储所有配置、统计和操作数据。
数据库存储
所有配置信息以及Zabbix收集的数据都存储在数据库中。
网络接口(Web interface)
为了方便地从任何地方和任何平台访问Zabbix,提供了基于web的接口。接口是Zabbix服务器的一部分,通常(但不一定)运行在Server的物理机器上。
如果使用SQLite, Zabbix web接口必须在同一物理机器上运行。
代理(Proxy)
Zabbix Proxy可以搜集性能和可用数据,分发Zabbix Server的请求。Proxy是可选部署的,但是,相当于把数据的负载加在一个Server上,Proxy能做好负载均衡,分散Server的负载。
Agent
Zabbix Agent部署在需要监控的目标设备上,负责采集本地资源、应用的数据,并将采集到的数据发送到Zabbix Server。
数据流(Data Flow)
除去以上各个模块,另外一个比较重要的要素就是数据流。举个例子:
在创建监控项(item)之前,必须先创建一个host;创建好监控项(item)后才能创建触发器(trigger);然后用trigger创建动作(action)。如此才是一个完成的流程,比如监控项发现主机的CPU使用率为80%,trigger探测到此数据超过75%,会立即触发action。