Zabbix监控流程:
Host group --> Hosts(向server端添加被监控主机) --> Application(在agent定义) --> Items(在applications内部定义) --> Triggers --> Events(触发器触发后产生事件)
--> Actions(定义处理动作:email、scripts) --> User groups(向用户发警告) --> Users(用户属于用户组) -- Medias(发送告警或者处理的方式即传输警告信息的通告或管道)
application:把功能相近的一组 item 归类在一起统一进行管理的组件;
添加主机到zabbix server:
discovery:被监控中主机定义好配置之后,无需手动添加,可以利用主机发现的方式。在server端中定义好discover规则后,server可以自动扫描一个网段内的所有处于活动状态且能接受监控的主机,然后添加到server端。监控端主动
auto_registrion:自动注册,即被监控主机自动向server服务器注册,要求被监控
low level discovery:主要目的是区别不同的底层设备,比如被监控端有的是windows系统有的是linux系统,可以针对不同的主机进行不同方式的监控。
模板:
template包括:item,application,trigger,graph,action
zabbix图像界面操作
这里更新到最新版本4.3
界面字体更改为中文
在windows中找到字体库,C:WindowsFonts,并找到自己想配置的字体拷贝到/usr/share/zabbix/fonts
# rpm -ql zabbix-web | grep fonts
/usr/share/zabbix/fonts
划分主机组:机器用途、系统版本、应用程序、地理位置、业务单元
Item:
默认的items有多种类型:
zabbix-agent的item类型:
工作模式:passive,active(指agent的工作模式)
网卡流量相关的类型:
net.if.in[if,<mode>] in表示入站流量
if:接口,如eth0
mode:bytes,packets,errors,dropped
net.if.out[if,<mode>] out表示出站流量
net.if.total[if,<mode>] in表示入站流量
端口相关:
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>]
system.cpu.switches
system.cpu.util[<cpu>,<type>,<mode>]
磁盘IO或文件系统相关:
vfs.dev.read[<device>,<type>,<mode>]
vfs.dev.write[<device>,<type>,<mode>]
用户可自定义item:
关键:选取一个唯一的key;
命令:收集数据的命令或脚本
Trigger的状态:
OK
problem:有事件发生
zabbix server 每次接收到 items 的新数据时,就会对当前 item 当前采样值进行判断,即与trigger的表达式进行比较
一个trigger只能属于一个item,但一个item可以有多个trigger,
Severity:
Not classified:未知级别,灰色
Information:一般信息,亮绿
Warning:一警告信息,黄色;
Average:一般故障,橙色
High:高级别故障,红色
Disater:致命故障,亮红
Action:
触发条件一般为事件:
Trigger events: OK -->PROBLEM
Discovery events:zabbix的network discovery工作时发现主机;
Auto registration events:主动模式的agent注册时产生的事件
Internal events: Item变成不再被支持,或者Trigger变成未知状态。
operations的功能:
动作
send message
remote command
配置send message
(1)定义好Media
(2)定义好用户;
(3)配置要发送的信息
先定义media