zabbix 监控 介绍

zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。mysql

zabbix组件主要分两个: zabbix-server和zabbix-agent。支持的监控协议有ICMP,IPMI,SNMP,HTTP以及zabbix协议(zabbix协议是最常使用的协议用来监控各被监控端)。web

收集的数据存放在数据库中,数据库支持mysql,oracle等等。算法

第三个组件:zabbix web gui这个接口提供web页面来监控和管理各被监控端。sql

第四个组件:zabbix proxy(实现分布式监控专用组件非必要组件,被监控服务器超过一千以上可使用此组件。)数据库

zabbix 监控  介绍

工做流程图:服务器

zabbix 监控  介绍

zabbix_get进程去客户端收集数据,zabbix_agentd进程经过监听在一个套接字上接收zabbix_get的请求,经过zabbix_sender将网络

数据收集发送给服务器端,数据保存在zabbix数据库中,zabbix_get这种方法主要用于测试,经过写脚本或远程执行命令的方式。oracle

zabbix server本身自动会周期性的去被监控端收集数据,收集哪些数据在服务器端事先定义。app

zabbix server ,zabbix database,zabbix web gui 能够部署在一台服务器上,为了提高性能能够放在不一样主机上。分布式

zabbix一些经常使用术语:

host(主机):要监控的网络设备,可由IP或DNS名称指定

host group(主机组):主机的逻辑容器,能够包含主机和模板,但同一个组内的主机和模板不能互相连接;主机组一般在给用户或用户组指派监控权限时使用(大体了解下就能够了)。

item(监控项):这个从名字上能够理解,具体要监控哪些指标由它定义。

trigger(触发器):就是超过了定义的合理范围,这家伙就会报警。

event(事件):这都是触发器产生的。

action(动做):对事件如何应对,好比要执行哪些操做。

escalation(报警升级):若是在定义的5分钟没反应,从warning级别升到high级别,就是要提醒别人要尽快处理。

media(媒介):发送报警的手段和通道,如Email。

remote command(远程命令):预约义的命令,可在被监控主机处于某个特定条件下时自动执行。

template(模板):用于快速定义被监控主机的预设条目集合,一般包含了item、trigger、graph、screen、application以及low-level discovery rule;模板能够直接连接至单个主机。(这个概念不理解不过不要紧的,只要具体会怎么操做就能够了)

application(应用):一组item的集合。

以上术语的关系能够用下图表示(大体明白就行):

zabbix 监控  介绍

上图中的poller这个进程就是去各客户端获取数据的。

zabbix产生的数据主要由四部分组成:

配置数据(忽略)

历史数据:50bytes

历史趋势数据: 128bytes

事件数据:130bytes

历史数据:采样生成的数据
历史趋势数据:每小时的最大值、最小值、平均值、统计

经过对以上数据的计算,能够得出咱们须要一个多大的zabbix数据库,来定制磁盘硬件。

具体算法:

假设有60000个监控项,那每秒中处理的数据就有60000/60=1000条

历史数据大小=天数X每秒钟处理的数据量X24X3600X50Bytes

趋势数据:
每个趋势128Bytes,
大小=天数X监控项X24X128Bytes

事件数据:每一个占据130Bytes大小:天数X86400X130(假设每秒中产生一个事件)

相关文章
相关标签/搜索