小生博客:http://xsboke.blog.51cto.com

        -------谢谢您的参考,如有疑问,欢迎交流

目录:

  1. Zabbix的优势及其分布式
  2. Zabbix可以监控的设备
  3. Zabbix的监控途径
  4. Zabbix可以监控的功能
  5. Zabbix的核心组件
  6. Zabbix的常用术语

一、Zabbix的优势及其分布式

  1. zabbix的优势
> 同时整合了nagios和cacti,而且具备二者不具备的优势,比如自动发现agent,支持分布式监控(通过代理收集所在区域的信息,最后提交到server端)
> 完全开源
> 可以支持同时对10W个设备进行监控
> 有些防火墙不允许特殊报文通过,这时候所有的zabbix agent都将数据发送到zabbix proxy,然后proxy通过tcp向server传送数据;而且zabbix server压力也会减轻很多
  1. Zabbix分布式监控
> 大规模网络环境中,监控的节点比较多,然后每个节点又有许多items,这样zabbix server在监控的时候需要大量的IO
> Zabbix serve配置参考:redhat enterprise + inter xeon 2xCPU 8GB + fast raid10 mysql innodb or postgresql =可监控大概1000节点(由zabbix官方发布的,仅供参考)
> Zabbix的三种架构:Server-agent、Server-node(zabbix早期监控方案)-agent、Server-proxy(zabbix1.8之后提供的分布式解决方案)-agent

> Proxy与node的区别:
    1) Proxy:只负责收集监控节点的数据,然后在本地存储数据,只保存一段时间,最后汇总数据发送到server端,proxy会读取server的配置,然后通过这些配置再去管理被监控端。
    2) Node:提供完整的zabbix server用以建立分布式监控中的层级,重量级。相对于proxy而言,node就是一个完整的server,需要在node上配置监控配置

二、Zabbix可以监控的设备

> 硬件监控:Zabbix IPMI Interface 
> 系统监控:Zabbix Agent Interface 
> Java监控:Zabbix JMX Interface 
> 网络设备监控:Zabbix SNMP Interface 
> 应用服务监控:Zabbix Agent UserParameter 
> MySQL数据库监控:percona-monitoring-plulgins   
> URL监控:Zabbix Web 监控

三、Zabbix的监控途径

> Zabbix agent:zabbix专用客户端
> Snmp agent
> IPMI agent:硬件监控专用接口
> Agentless Monitoring:不需要agent的监控
> Web Monitoring:web页面在不在、请求访问响应时间、页面数据下载速度、响应代码、基于用户登录登出判断页面是否正常等等
> Database Monitoring:专门实现数据库监控
> Internal Check:内部监测,使用本地命令(zabbix自带的)或脚本将结果通过agent向zabbix server端反馈
> Calculated Monitoring:计算后的监控,用两个采集点之间做计算后得到的数据
> Custom Command Monitoring:使用本地命令或脚本将结果通过agent向zabbix server端反馈

四、Zabbix可以监控的功能

> CPU 
> Memory
> Network
> Disk:磁盘IO 
> Service
> Log
> File:打开文件数
> Other:性能计数器, windows独有,通过typeperf命令返回
> zabbix自2.0以后支持基于jmx网关直接监控jvm虚拟机种各种参数的指标,但是部署起来很麻烦

五、Zabbix的核心组件

> Zabbix web Gui:数据展示;画图php-gd
> Zabbix database:数据保存;RDMS(mysql、oracle等)
> Zabbix server:数据采集
> Zabbix proxy:不是必须需要
> Zabbix agent:客户端

六、Zabbix的常用术语

> 主机(host):由IP或DNS名称指定
> 主机组(host group):主机的逻辑容器,可以包含主机和模板(配置的集合),但同一个组内的主机和模板不能互相链接,主机组 通常在给用户或用户组指派监控权限时使用
> 监控项(item):一个特定监控指标的相关的数据,相对于监控对象来说,每个item都由“key”进行标识
> 触发器(trigger):定义域值,对zabbix而言是一个表达器,用于判断定item采集的数据是否在合理范围内基本评估标准,当接受到的数据大于域值时,触发器状态从“OK”转变为“problem”,当数据再次回归到合理范围时,其状态从“problem”转换回“OK”
> 事件(event):触发器每转换一次就是一个事件,事件发生之后就执行action(动作)
> 动作(action):包含条件(何种事件发生了,才执行对应的操作)和操作(如发送通知、执行脚本等等)
> 报警升级(escalation):发送警报或执行远程命令的自定义方案。
> 媒介(media):发送通知的手段或通道,如:Email、Jabber、SMS、Chat Message等
> 通知(notification):通过选定的媒介向用户发送的有关某事件的信息。
> zabbix宏:就是变量,只是称呼不同,用于替换当前事件本身
> 远程命令(remote command):预定义的命令,可在被监控主机处于某特定条件下时自动执行
> 模板:用于快速定义被监控主机的预设条目集合,通常包含了item、trigger、graph(图形)、screen(屏幕,用于整合图像)、application以及low-level discovery rule,模板可以直接连接至单个主机
> 应用(application):一组item的集合
> Web场景(web scennario):用于检测web站点可用性的一个或多个http请求
> 前端(frontend):zabbix的web接口