主机的工作基本流程

Host group --> Host --> Application --> Item -->
Trigger(OK-->PROBLEM,trigger event) --> Action(
Conditon+Operation(send Message,Rend Command))
注释:主机组、主机、模板、监控项、触发器(OK或失败,产生事件)、动作(通知动作)

一、触发器表达式

触发器之间的依赖关系
例如一个主机DOWN就会出现很多报警,该主机的所有触发器都应依赖于agent检测触发器(不至于出现告警风暴)

1、格式及说明

item key:
命名要求:只能使用字母、数字、下划线、点号、连接符

Trigger:
触发器表达式:
{<server>:<key>.<function>(<parameter>)}<operator><constant>

示例:{www.kuaiyun.cn:system.cpu.load[all,avg1].last(0)}>3

注释:
server 主机名称(也可以是模板名);
key 主机上关系的相应监控项的key值; function 评估采集到的数据是否在合理范围内时所使用的函数,其
评估过程可以根据采取的数据、当前时间及其他因素进行:
目前,触发器所支持的函数有
avg 平均值
count 数据统计
change 返回最后的一个值和倒数第二个值对比
date 时间
dayofweek 本周的第几天
delta 指定时间范围内和数值内的
diff 文件是否有改变 iregexp 忽略字符大小写,正则表达式
regexp 检查最后一次采样的数据是否能够被制定的模式所匹配,
1表示匹配,0表示不匹配 主要用来监控日志内容的关键字 last 最近几次采样
max 最近采样最大值
min
nodata (对于采集不到数据)没有数据判断异常
now 返回自unix元年只此刻经历的秒数
prev:倒数第二个采样值; str 从最后一个采样中,查找此次指定的字符,1找到0没找到
sum parameter 函数参数:大多数数值函数可以接受秒数为其参数,
而如果在数值参数之前使用”#“做为前缀,则表示为最近几次的取值,
如sum()表示300秒内所有取值之和,而sum(#)则表示最近
10次取值之和;
此外,avg、count、last、min和max 还支持使用第二个参数,
用于完成时间限定;例如:max(1h,7d)将返回一周之前的最大值;

注释:参考官方文档:https://www.zabbix.com/documentation/3.0/manual/config/triggers

2、示例

1、Less than 5% free in the value cache
{Template App Zabbix Server:zabbix[vcache,buffer,pfree].min(10m)}<5
说明:
Template App Zabbix Server:主机名或模板名(模板套用到主机上)
zabbix:key
vcache buffer pfree key值
min 函数
10m 函数范围
< 条件
5 预设值
注释:十分钟内采集到的最小值如果小于5则进入PROBLEM状态; 2、{www.kuaiyun.cn:system.cpu.load[all,avg1].last(0)}>3
说明:
www.kuaiyun.cn 主机名或模板名(模板套用到主机上)
system.cpu.load key值
all 所有的
avg1 过去一分钟内
avg5 过去五分钟内
last 函数“last()”获取最近一次获取的值
“>5”表示来自主机www.kuaiyun.cn的最后一次获取的负载值大于5时触发器就会进入PROBLEM状态。

二、远程执行命令

远程命令是个非常危险的操作,对于zabbix用户的授权要根据具体情况给予相应的权限,本次仅为测试使用

1、概述

remote command 远程执行命令:
、给zabbix定义sudo规则:
zabbix ALL=(ALL) ALL (根据现实需求自己定义)
、不支持active模式的agent (主动模式,zabbix默认为被动模式)
、不支持代理模式;
、命令长度不得超过255个字符
、可以使用宏;
、10050的端口允许进入
、zabbix-server近执行命令,而不关心命令是否执行成功;

2、修改agent配置文件

/etc/zabbix/zabbix_agentd.conf
EnableRemoteCommands= 开启远程执行命令权限
LogRemteCommands= 记录执行日志
Defaults requiretty #这项默认是开启的,我们要注释掉
解释:任何一个执行sudo命令时必须使用htty执行

3、例如远程执行重启httpd服务

执行命令本身:
如果用到以root用户执行命令,必须使用sudo命令
sudo /etc/rc.d/init.d/httpd restart

三、宏

宏:
一个已经定义好的变量

两类:
内建:{MACRO_NAME}
自定义:{$MACRO_NAME}

可使用的级别
优先级:host Template global (主机 模板 全局)
找到后直接使用,不再想后续查找

模板:
一系列配置的集合,此配置可通过“链接”的方式应用于指定的主机

User Parmeters:
zabbix内置可许多的item key;
实现用户自定义item key,实现特有数据指标监控;
只能在agent实现key的定义
语法:
UserParameter=<key>,<command>

不允许没有被监控的主机上线

Zabbix日常监控(触发器表达式、远程执行命令、宏简等)简单记录的更多相关文章

  1. zabbix自定义监控项、添加图形、设置触发器、远程执行命令

    监控项是在zabbix中手机数据的基础,没有监控项就没有数据,系统自带模板带有大量默认item,自定义item可以定义在模板中,在应用模板即可使用对应item:也可直接在host中定义 目标:自定义监 ...

  2. 3 触发器报警-->远程执行命令

    0.需求 上节课我们讲了,触发器报警,发送邮件,这节课主要讲下远程执行命令 流程图如下 item--> triggers-->action--->Email     |——>远 ...

  3. Zabbix远程执行命令

    原文发表于cu:2016-06-14 Zabbix触发器(trigger)达到阀值后会有动作(action)执行:发送告警信息或执行远程命令. 本文主要配置验证zabbix执行远程命令. 一.环境 S ...

  4. 19 Zabbix 利用Scripts栏目对Hosts远程执行命令

    点击返回:自学Zabbix之路 19 Zabbix 利用Scripts栏目对Hosts远程执行命令 在Monitoring板块中,有Host出现的地方,单击Host按钮后,都可以执行对Host远程执行 ...

  5. 20 Zabbix 利用Scripts栏目对Hosts远程执行命令

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 20 Zabbix 利用Scripts栏目对Hosts远程执行命令 在Monitoring板块中, ...

  6. zabbix日常监控项java(四)

    yum install net-tools netstat命令 yum -y install bash-completion 命令自动补全包 https://github.com/qiueer/zab ...

  7. 利用scp 远程上传下载文件/文件夹和ssh远程执行命令

    利用scp传输文件 1.从服务器下载文件scp username@servername:/path/filename /tmp/local_destination例如scp codinglog@192 ...

  8. CentOS下利用sshpass不用手动输入密码远程执行命令

       在测试的时候要同时操作多台机器,每次都要挨个去执行几乎相同的命令或者修改一些设置,这样很影响工作效率也很烦,所以就想写一个脚本,远程自动去做这些操作.远程执行命令很简单,但是不能在执行命令加上命 ...

  9. ssh密钥登录及远程执行命令

    以192.168.1.104作为客户机 以192.168.1.103作为服务器 使用密钥登录 创建密钥对 在SSH客户机创建用户秘钥对 ssh-keygen -t rsa 之后全回车即可 将会在~/. ...

随机推荐

  1. 【.Net】水晶报表CrystalReport粗浅入门

    VB6代码大概是这样的: crystalreport1.Connect:='dsn=xxx;uid=yyy;pwd=zzz;dsq=aaa'; crystalreport1.DiscardSavedD ...

  2. Linux下最常用的Shell命令的介绍

    Shell基础: 你可以通过打开Linux的terminal(终端)来执行Shell命令.Shell的种类有很多种,例如CSH,Bourne Shell,Korn Shell.在现在的大多数Linux ...

  3. android开发学习笔记系列(1)-android起航

    前言 在学习安卓的过程中,我觉得非常有必要将自己所学的东西进行整理,因为每每当我知道我应该是如何去实现功能的时候,有许多细节问题我总是会遗漏,因此我也萌生了写一系列博客来描述自己学习的路线,让我的an ...

  4. 手机端 : js设置table内容 加载更多,并头部锁定悬浮

     <script src="js/jquery.min.js" type="text/javascript"></script> < ...

  5. out参数ref参数params 可变参数

    1.我们在主函数中调用其他函数,我们管主函数为调用者,其他函数为被调用者. 如果被调用者,想要得到调用者的值:传参 使用静态字段来模拟全局变量  在方法外类里写字段 public static _na ...

  6. FOR XML PATH做为数据表中单列或者多列的字符串拼接的方法,放到一列中去,很好用。

    先看看自己弄得例子,SELECT sName+',',hoppy+','  FROM student2 where hoppy='游泳' FOR XML PATH('')--PATH后面跟的是行标题, ...

  7. 深复制与浅复制&&strong,copy修饰符总结

    又是一个老生常谈的话题,可是貌似这个问题,好多ios开发工程师并不能理解透彻,所以简单记录分析一下深复制与浅复制的原理以及strong,copy修饰符的原理和使用.   一.深复制与浅复制      ...

  8. 【原】Docker入门之Centos7.0+安装

    服务器配置:1核2G 40G 硬盘,Centos 7.4. 以下全程是在 root 用户下操作: 1.卸载旧版本 yum remove docker \ docker-client \ docker- ...

  9. zookeeper 选举

    选举概述: 1.启动时期的选举 所有的服务器状态为 LOOKING. 1.1.每个Server 会投出一票(投票规则为:SID.ZXID ,即 服务器ID 和 最大事务ID). 1.2.处理选票 (A ...

  10. CSS垂直翻转/水平翻转提高web页面资源重用性——张鑫旭

    一.CSS下兼容性的元素水平/垂直翻转实现 随着现代浏览器对CSS3的支持愈发完善,对于实现各个浏览器兼容的元素的水平翻转或是垂直翻转效果也就成为了可能.相关的CSS代码如下: /*水平翻转*/ .f ...