详细描述user parameters、定义主机发现规则实现自动发现、如何定义和实现自动注册方式

zabbix常用术语
1、主机(host):要监控的网络设备,可有IP或DNS名称指定;
2、主机组(host group):主机的逻辑容器,可以包含主机和模板,但同一个组内的主机和模板不能互相连接;主机组通常在给用户或用户组指派监控权限时使用;
3、监控项(item):一个特定监控指标的相关数据,这些数据来自于被监控对象;item是zabbix进行数据收集的核心,没有item,将没有数据;相对某监控对象来说,                       每个item都有"key"进行标识
4、触发器(trigger):一个表达式,用于评估某监控对象的某特定item内所接收到的数据是否在合理范围内,即阈值;接收到的数据量大于阈值时,
                  触发器状态将从"OK"转变为"problem",当数据量再次回归到合理范围时,其状态将从"problem"转换回"OK";
5、事件(event):即发生的一个值得关注的事情,例如触发器的状态转变,新的agent或重新上线的agent的自动注册等;
6、动作(action):指对于特定事件事先定义的处理方法,通过包含操作(如发送通知)和条件(何时执行操作);
7、报警升级(escalation):发送报警或执行远程命令的自定义方案,如每隔5分钟发送一次警报,共发送5次等;
8、媒介(media):发送通知的手段或通道,如Email、jabber或SMS等;
9、通知(notification):通过选定的媒介向用户发送的有关事件的信息;
10、远程命令(remote command):预定义的命令,可在被监控主机处于某特定条件下时自动执行;
11、模板(template):用于快速定义被监控主机的预设条目集合,通常包含了item、trigger、graph、screen、application
                  以及low-level discovery rule(低级别发现规则,相当消耗资源,一般不用);模板可以直接连接至单个主机;
12、应用(application):一组item的集合;
13、web场景(web scennario):用于检测web站点可用性一个或多个HTTP请求;
14、前端(frontend):zabbix的web接口
zabbix启动的进程
  
Item key:
命名要求:只能使用字母、数字、下划线、点号、连接符
接受参数:system.cpu.load[<cpu>,<mode>], net.if.inbound[if,<mode>]
注意:每一个key背后都应该有一个命令或脚本来负责实现数据收集;此命令(system.cppu.load)或脚本可调用传递给key的参数(if,<mode>),调用方式为$1,$2,...
在zabbix中定义item时调用某key,还需要额外定义数据采集频率、历史数据的保存时长等信息;
Trigger:
触发器表达式:{<Server>:<key>.<function>(<parameter>)}<operator><constrant>    //被监控服务器上的key所对应的数据,被函数表达式所调用的参数处理之后的结果,与某个所期望的数值作比较。 
          被监控服务器         调用函数      参数         操作符   指定数据范围值
{192.168.128.132:net.if.in[ens33,bytes].last(#1)}>1200   
//192.168.128.132是被监控的服务器; net.if.in[ens33,bytes]是key; last(#1)是函数,表示取最后一次的数据; >是操作符; 1200是所指定的数值,也可以定义为宏
<function>:评估采集到的数据是否在合理范围内时所使用的函数;其评估过程可以根据采集到的数据、当前时间
count、change、date、dayofweek、dayofmonth、delta、diff、iregexp、regexp、last、max、min、nodata、now、sum、strlen
avg:可以采样做平均值;
regexp:检查最后一次采样的数据是否能够被指定的模式所匹配,1表示匹配,0表示不匹配; 
now:返回自Unix元年至此刻经历的秒数;
prev:倒数第二个采样值; 
str:从最后一次的采样中查找此处指定的字串;
<operator>:操作符
>、<、=、#(不等于)
/、*、-、+
&(与)、|(或)
触发器间有依赖关系:
Action

message
condition 由event触发,包括:trigger、discovery、auto_registration、lid
discovery包括:service up、service down、host up、host down、service discovered、service lost、service discovered、host lost
operation:
send message:
Media type:Email、SMS、Jabber、Script、EZ Texting Script:Alert Script 必须放到特定目录中:AlertScriptsPath=/usr/lib/zabbix/alertscript
zabbix_server.conf配置文件中的参数
 
脚本中可使用$1,$2,$3来调用 action 中的, $1表示邮件的收件人,$2表示Default Subject,$3表示Default Message; 注意:新放入/usr/lib/zabbix/alertscript目录的脚本,只有重启zabbix-server方能被使用 User remote command: (1)zabbix server主机远程被监控主机(zabbix agent),那么命令在被监控主机上运行,这个命令就是由zabbix agent进程生成的,运行zabbix agent进程的用户是zabbix用户,所以这里指定的远程命令zabbix                                          用户不一定有权限执行,所以要给zabbix定义sudo规则,在每一个agent主机上都应该添加zabbix用户在任意主机上以任意用户的身份运行任意命令。 zabbix ALL=(ALL) ALL
(2)不支持active模式的agent;
(3)不支持带来模式
(4)命令长度不得超过255个字符
(5)可以使用宏;
(6)zabbix-server仅执行命令,而不关心命令是否执行成功
使用脚本报警:http://www.ywnds.com/?p=6574    http://www.51niux.com/?id=153
前提:zabbix-agent要配置为支持执行远程命令;  https://www.zabbix.com/documentation/3.4/zh/manual/config/notifications/action/operation/remote_command
注意:
(1):如果用到以其他用户身份执行命令的话,那么命令本身要以sudo方式运行;
sudo /usr/sbin/apachectl restart
(2)在各agent上的sudoers文件,要注释如下行:
Defaults requiretty
示例:监控node2主机上即zabbix agent端的httpd服务器是否启动,如果没有启动server端则执行远程命令重启agent端的httpd服务
# vim /etc/zabbix/zabbix_agentd.conf 
EnableRemoteCommands=1
LogRemoteCommands=1    //是否记录远程命令执行的日志,1表示记录
# systemctl restart zabbix-agent 每一个item key的官方文档:https://www.zabbix.com/documentation/4.0/manual/config/items/itemtypes/zabbix_agent 想要让server端远程重启agent端的httpd服务,那么server端首先要监控httpd服务。可以基于最后一次采样的值判断httpd服务的状态是否不正常,不正常则执行远程命令。
首先定义一个applications,定义http service 定义items,这里监听的是httpd服务的80端口,即80端口存在证明httpd服务是正常,不存在就证明http服务出现了问题 定义一个graph,查看效果 此时启动与停止httpd服务,查看效果图 定义triger 定义actions 在agent端执行# systemctl stop httpd,停掉httpd服务

5、zabbix使用进阶(01)的更多相关文章

  1. SQL Server 进阶 01 数据库的设计

    SQL Server 进阶 01 数据库的设计 本篇目录 课程内容回顾及介绍 为什么需要规范的数据库设计 设计数据库的步骤 绘制E-R(实体-关系)图 实体-关系模型 如何将E-R图转换为表 数据规范 ...

  2. python进阶01 面向对象、类、实例、属性封装、实例方法

    python进阶01 面向对象.类.实例.属性封装.实例方法 一.面向对象 1.什么是对象 #一切皆对象,可以简单地将“对象”理解为“某个东西” #“对象”之所以称之为对象,是因为它具有属于它自己的“ ...

  3. 7、zabbix使用进阶(03)

    节知识点: zabbix自动发现 web监控 zabbix自动发现   官网:https://www.zabbix.com/documentation/4.0/zh/manual/discovery/ ...

  4. zabbix初级进阶

    目录 一.理论概述 zabbix功用 运行条件 缺点 zabbix组件 部署 web安装zabbix 优化 总结 这篇文章主要对zabbix有一个全面且简单的了解 一.理论概述 zabbix功用 检测 ...

  5. Python进阶01 词典

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 基础教程介绍了基本概念,特别是对象和类. 进阶教程对基础教程的进一步拓展,说明Py ...

  6. Java进阶01 String类

    链接地址:http://www.cnblogs.com/vamei/archive/2013/04/08/3000914.html 作者:Vamei 出处:http://www.cnblogs.com ...

  7. 第2章Zabbix基础进阶

    p.MsoNormal,li.MsoNormal,div.MsoNormal { margin: 0cm; margin-bottom: .0001pt; text-align: justify; t ...

  8. 项目实战12.2—企业级监控工具应用实战-zabbix操作进阶

    无监控,不运维.好了,废话不多说,下面都是干货. 流量党勿入,图片太多!!! 项目实战系列,总架构图 http://www.cnblogs.com/along21/p/8000812.html 一.U ...

  9. 6、zabbix使用进阶(02)

    zabbix知识点: zabbix可视化 自定义图形(graphs) 屏幕(screen) 宏(macros)  用户参数(User parameters):用户自定义items key的方式来实现自 ...

随机推荐

  1. 百度地图API密钥

    百度地图API密钥 DD279b2a90afdf0ae7a3796787a0742e nSxiPohfziUaCuONe4ViUP2N   /*亲测可用*/ PlhFWpA02aoURjAOpnWcR ...

  2. 我了解到的新知识之---Cylance Protect是干吗的?

    每家企业都会采购适合自己的杀毒软件来保护企业内的电脑处在安全的状态下,我所在的公司目前在用的是来自美国的初创企业的产品Cylance Protect.,目前这家公司已经在2018年11月份被黑莓公司收 ...

  3. ubuntu系统上如何添加新的根证书

    如果自己部署了一个CA系统,或者使用openssl生成了一个自签名的证书,如何让ubuntu系统信任这些证书呢 添加证书: 首先,复制pem格式的根证书,重命名为 .crt格式 然后,执行下边的命令 ...

  4. InnoDB中锁的查看

    Ⅰ. show engine innodb status\G 1.1 实力分析一波 锁介绍的那篇中已经提到了这个命令,现在我们开一个参数,更细致的分析一下这个命令 (root@localhost) [ ...

  5. HomeBrew及HomeBrew Cask的简介和使用

    前言: 最近在Mac终端上安装SVN时用到了HomeBrew工具,虽然常用,但平时没有过多了解,特翻阅了资料总结一下,以便遗忘. 目录结构: 1. 什么是HomeBrew 2. HomeBrew的主要 ...

  6. :after和:before 伪类

    1 使用伪类画三角形 .div{ margin-top: 100px; margin-left: 100px; } .div:after{ content: ''; display:inline-bl ...

  7. Interllij IDEA中启动web项目

    1.在IDEA中打开你的Web应用,点击一下绿色三角形左边的框框,然后在弹出框上选择Edit Configurations,会弹出一个配置面板. 2.在弹出的面板中我们点击Defaults,然后找到T ...

  8. oracle_18c新建用户用normal登陆失败

    工具介绍:win10系统,使用的是oracle18c. 首先说一下oracle18c的特性,在oracle18c创建用户要以c##开头,比如: --创建新用户create user c##test_u ...

  9. Hive中MetaServer与HiveServer2的应用

    在hive中有metaServer与hiveServer2两种服务,看了好多文章说这两个的区别,文章内容有对有错,不够全面,故在这里好好总结一下. 首先,下面这个hive构架图,我们一定不陌生,它反应 ...

  10. python 字节转换成图像

    python 字节转换成图像 使用base64 1.图片转成字节使用:  base64.b64encode() 2.字节转成图片: base64.b64decode() 图片字节串: iVBORw0K ...