zabbix学习记录

概述

  1. 开源的,高度集成的分布式监控解决方案
  2. 通过C/S模式采集数据,B/S模式在web端展示和配置
    • Client:主机通过安装agent方式采集数据,网络设备通过SNMP方式采集数据
    • Server:收集agent和SNMP发送的数据并写入数据库(MySQL等),在通过php前端在web上展示
  3. 监控的意义
    • 及时处理故障
    • 为容量规划提供数据支持

zabbix术语

监控项(item) 监控的基本元素,每个监控项对应一个被监控端的采集值
应用集(application) 监控项的逻辑组
触发器(trigger) 通过计算item数据值来判断主机状态(OK/Problem)
图形(graph) 为item数据提供可视化的展示
主机(host) 一个你想监控的网络设备(需要知道IP/DNS)
主机群组(host group) 主机的逻辑组
模板(Template) 可以被主机套用的item,trigger,graph等的集合
媒介(media) 发送告警的渠道(sms/email等)
告警(notification) 通过媒介(media)渠道发送事件的消息
告警动作(action) 当触发器条件被满足时,执行指定的告警动作

zabbix处理流程

monitor

zabbix部署方式

zabbix

触发器

触发器表达式

触发器实例

主机监控实例

添加对131.lab 80端口的监控

路径:Configuration -> Hosts -> Create Host

添加item,接上面的步骤,item -> create item

添加trigger

接上面的步骤,trigger -> create trigger

添加告警动作

告警策略:如果80端口不通,则

Configuration -> Action -> 右上角Event Source选 Trigger

如图:

action

应用模板

模板(Template): * 将item,trigger,graph,screen等汇总为模板 * 模板直接链接到一类主机,实现批量定义 * 修改模板可以使关联到模板上的主机全部被修改

编辑主机131.lab,切换到Templates,select一个或多个template

Configuration -> Templates 中可以添加或修改模板

Low-level discovery和item prototype

本节关注自动发现(Low-level discovery)中的外部检查(external check)和项目原型(item prototype)中的zabbix捕捉器,用于自动监控大量url。外部检查获取url列表,主要用于基于prototype自动生成具体的监控项、触发器、图形等

外部检查脚本

外部检查脚本要求返回一个json格式的数据,形式如下:

一个简单的例子,监控几个url完成访问请求所用的时间

在externalscript目录下编辑脚本 curl.sh

脚本返回结果:

web界面配置步骤

每10秒发送一次

查看数据

url

zabbix整合item

整合item用于计算(平均值,总和等)主机群组内全部主机的情况

添加对Linux Server组平均负载情况的统计

Monitoring -> Graph 右上角筛选查看效果图

appregate.linux.server

Screen

将同一主机或类型的数据放到一个屏幕来展示

Configuration -> Screen -> create screen

130.lab

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注