zabbix


前面讲解了如何搭建zabbix监控的环境,下来这里讲解如何使用zabbix监控主机,首先,说一下我的监控环境。


   所有的主机都是redhat6.5.数据库采用mariadb10.1.22


   zabbix的版本是3.0.3.采用的是源码编译。


   有zabbix监控某关注的指明:


   host group  --> host --> item (存储于Mariadb中) --> graph (zabbix-web) --> trigger(触发器) --> action(condition+operation)




application:把功能相近的一组item归类在一起统一进行管理的组件




首先先看一下搭建好的zabbix3.0.3。


    


   

zabbix linux监控项键值 zabbix监控linux主机_zabbix



首先不习惯英语的可以直接改成中文。


zabbix linux监控项键值 zabbix监控linux主机_文件系统_02



  监控检测分为主动(agent active)和被动(agent)两种形式,主动与被动的说法均是相对于agent来讨论的。简单说明一下主动与被动的区别如下:

主动:agent请求server获取主动的监控项列表,并主动将监控项内需要检测的数据提交给server/proxy

被动:server向agent请求获取监控项的数据,agent返回数据。

Host Group --> Hosts --> Applications --> Items --> Triggers --> Events --> Action --> User groups --> Users --> Medias

依赖关系:

    Host --> Item --> Trigger --> Action --> Notice,Remote Command 

添加一个监控的主机。

1.配置主机信息


两个IP都是被监控主机的IP,是一样的(下图填错了)


zabbix linux监控项键值 zabbix监控linux主机_数据_03

添加监控的application。

zabbix linux监控项键值 zabbix监控linux主机_文件系统_04




再逐个添加items,trigger,Graphs等等。


其中items我添加的是cpu switchs(上下文切换的次数)。


还可以添加网卡相关信息,但是加什么要有相关的key。、




监控网卡流量相关的


net.if.in[if,<mode>]


if 接口:如eth1


mode:bytes,packets,errors,dropped




net.if.out[if,<mode> ]


net.if.total[if,<mode>]



监控端口相关的


net.tcp.listen[port]


net.tcp.port[<ip>,port]


net.tcp.service[service,<ip>,<port>]


net.udp.listen[port]




进程相关的


kernel.maxfiles    打开的最大文件数


kernel.maxproc   最大进程数




CPU相关的


system.cpu.intr


system.cpu.load[<cpu>,<mode>]


system.cpu.num[<type>]        CPU的颗数


system.cpu.switchs


system.cpu.util[<cpu>,<type>,<mode>]  CPU的利用率




磁盘I/O或文件系统相关的


vfs.dev.read[<device>,<type>,<mode>]   文件系统接口


vfs.dev.write[<device>,<type>,<mode>]


vfs.fs.inode[fs,<mode>]




用户自定义item:


关键:选取唯一的key


命令:收集数据的命令或者脚本。




将出站流量和进站流量展示在一张图上


zabbix linux监控项键值 zabbix监控linux主机_zabbix_05




我打开好多和页面,现在展示流量的走向。


zabbix linux监控项键值 zabbix监控linux主机_zabbix_06




定义触发器:


  状态:OK



zabbix server:每次接收到items的新数据时,就会对Item的当前采样值进行判断,即与trigger的表达式进行比较。


一个trigger只能属于一个item,但一个item可以有多个trigger。(其实10有点太小了,我最终定义的是50,只是为了演示)


zabbix linux监控项键值 zabbix监控linux主机_zabbix linux监控项键值_07






表达式的匹配。


zabbix linux监控项键值 zabbix监控linux主机_linux_08






在Monitor-->Graphs下观察。黄黑线就是trigger值。


zabbix linux监控项键值 zabbix监控linux主机_linux_09




Action的定义。




只有产生相应的事件时才会被触发。


Trigger events:OK -- > PROBLEM


        Discovery events:zabbix的network discovery工作时发现主机


Auto registration events:主动模式的agent注册时产生的事件


internel events:Item变成不再被支持。


Configuration --> Action里定义(要定义Action 和Conditions还有Operations)。


zabbix linux监控项键值 zabbix监控linux主机_zabbix_10




Condition:


zabbix linux监控项键值 zabbix监控linux主机_数据_11




Operation的功能:


动作:Send messages



配置send messages:


(1):定义好Media


(2):定义好用户


(3):配置要发送的信息




由于要定义Operation必须要定义好Media和用户。


Media和用户在Administrator里面定义。


zabbix linux监控项键值 zabbix监控linux主机_数据_12




定义Operation:


zabbix linux监控项键值 zabbix监控linux主机_zabbix linux监控项键值_13




当我网卡流量过大时,就会发邮件给root。




zabbix linux监控项键值 zabbix监控linux主机_文件系统_14