对网段内的主机进行自动发现,自动加入主机组,自定加入template

创建动作时,类型这里选择discovery

然后将发现的主机加入host group和template:

动作针对的是discovery这个类型的:

上面定义的发现的规则,然后定义发现后的动作:

操作做完之后,然后将agent端的zabbix-agent服务进行开启:

# systemctl start zabbix-agent

不多久就可以看见host:

配置媒介:

上面三个脚本的参数必须带上:

{ALERT.SENDTO}:收件人

{ALERT.SUBJECT}:主题

{ALERT.MESSAGE}:告警正文

这里可以稍作修改

配置完之后出现如下:

将配置完的媒介与用户关联起来,可以创建新用户,可以选择已有用户,这里选择admin:

将媒介与之关联,并配置脚本的第一个参数:收件人

然后配置用户组:

选择zabbix administrators点进去配置permission:

待上面基础配置完成后,现在需要配置action:

由于是执行脚本所以是发送消息类型,关联到用户以及用户组

主题:故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!           邮件脚本的第二个参数

告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}

邮件正文:邮件脚本的第三个参数

配置完所有以上后,手动将一个zabbix-agent服务进行stop,然后进行reports下面的action log进行查看:

在上面的failed红字的感叹号可以看出action的动作是否成功,上面是由于没有指定user,于是修改:

这个邮件发送不成功看原因是脚本没有权限,于是给脚本加上权限,并重启zabbix-server服务:

然后发现上面的一次已经触发action成功,可以在邮件发现已发送

于是简单的邮件告警发送成功

附上邮件告警代码:

[root@zabbix-server alertscripts]# cat /root/zabbix_python_demo/send_mail.py
import smtplib
from email.mime.text import MIMEText
import sys from_mail = "json_hc@163.com"
mail_passwd = "********" def send_mail(to_mail, subject, content):
msg = MIMEText(content, 'plain', 'utf-8')
msg['Subject'] = subject
msg['From'] = from_mail
msg['To'] = to_mail
try:
s = smtplib.SMTP()
s.connect('smtp.163.com')
s.login(from_mail, mail_passwd)
s.sendmail(from_mail, to_mail, msg.as_string())
print("OK")
except Exception as e:
print(e)
finally:
s.quit() if __name__ == '__main__':
send_mail(sys.argv[1], sys.argv[2], sys.argv[3])

zabbix配置自动发现,故障邮件告警的更多相关文章

  1. zabbix的自动发现、自定义添加监控项目、配置邮件告警

    1.zabbix的自动发现这里的自动发现,所显示出来的是规则的上自动了现 然后 可以对其内容进行相关的配制,如时间或周期 注意:对于单个主机的规则,可以自行添加或删除, 但对于已经添加好了的规则,若需 ...

  2. zabbix主机自动发现和监控

    在主机较多的时候,配置主机自动发现并加入监控可以代替手动的添加主机,减轻工作量,自动发现由服务端主动发起,Zabbix Server开启发现进程,定时扫描局域网中IP服务器.设备.可以根据需要,在对主 ...

  3. 【Zabbix】Zabbix Server自动发现

    Zabbix自动发现 由于有上百台的虚拟机需要监控,如果一个个去添加配置,费时费力.Zabbix的自动发现,可以自动发现需要监控的机器,监控相应指标. 前置条件 安装部署好Zabbix Server. ...

  4. zabbix使用自动发现监控esxi的磁盘存储storage

    zabbix使用自动发现监控esxi的磁盘存储storage 在任意一台可以访问vcenter的zabbix-agent服务器上添加exsi的磁盘监控模板即可 创建模板过程: custom.esxi. ...

  5. 巧用Salt,实现CMDB配置自动发现

    随着互联网+新形势的发展,越来越多的企业步入双态(稳敏双态)IT时代,信息化环境越来越复杂,既有IOE三层架构,也有VCE.Openstack等云虚拟化架构和互联网化的分布式大数据架构.所以,企业急需 ...

  6. 01 - zabbix | LLD自动发现

    01 - zabbix | LLD自动发现 1. 原理 zabbix支持设置变量,用{#VAR_NAME}来表示.然后有一些系统保留的变量 2. 设置 2.1 交换机电源自动发现   名字写好后进进入 ...

  7. CentOS7下搭建zabbix监控(五)——Web端配置自动发现并注册

    好像有点问题,没法自动添加主机,我后期再测测 (1).自动发现主机并注册 1)创建发现规则 2)编辑自动发现规则信息(这两步不配置问题也不大,因为在动作中也有主机IP地址) 3)添加自动发现的动作 4 ...

  8. Zabbix网络自动发现规则和自动添加hosts及link模板

    Version: zabbix 3.0 一.配置网络发现规则 Device uniqueness criteria:选择主机名作为唯一标识(Configuation Hosts中显示的NAME) 二. ...

  9. zabbix监控自动发现监控tomcat(V1)

    背景说明: 由于zabbix监控使用自带的模版,只能监控主机上只有1个tomcat的场景适合,虽然网上很多朋友都是在每个监控项上面添加一个空格来解决问题.但是个人感觉这种方法还是蛮麻烦的,所以写一篇使 ...

随机推荐

  1. 源码 time sleep

    C:\Users\Administrator\.PyCharm2017.1\system\python_stubs\2083891348\time.py def sleep(seconds): # r ...

  2. 学习计划 mysql 引擎

    -- 什么是引擎? 按照我现在的勒戒,就可以提供 Mysql 对不同表的处理方式,各有优缺点. 就像名字一样,把我们数据库看成法拉利的话,引擎也就是发送机,有的跑的快,有的距离长....... -- ...

  3. J - Fire!---UVA 11624

    题目链接 题意:J代表Joe的位置,F代表火的起点,下一刻火将会向四周扩散,求Joe逃离的最短时间,如果不能逃离输出IMPOSSIBLE; 注意火的起点可能不止一处 可以用两次bfs分别求出人到达某个 ...

  4. router-link传参 query方式

    router.js内的路由配置 { path: '/CreateProgress', name: 'CreateProgress', component:CreateProgress }   传参(q ...

  5. CentOS7.2配置vsftpd

    环境 CentOS7.2 (安装镜像CentOS-7-x86_64-DVD-1611) 本文默认使用root用户操作 目标 实现CentOS7.2上安装vsftpd,使用新创建的ftpuser用户便可 ...

  6. bin/hdfs namenode -format 格式化失败

    确认配置正确前提下,将name目录删除重建,再格式化: hadoop防止将已经存在的集群格式化

  7. 【Python】xpath中为什么粘贴进去代码后老报错?如何在定位元素的时候准确找到定位切入点?

    1. xpath后()中双引号("")里面不能套用双引号(""),把里面的双引号改成单引号('')报错就没有了. 2.如何在定位元素的时候准确找到定位切入点? ...

  8. 协作工具 discord 和 slack

    discord: https://discordapp.com/ slack: www.slack.com

  9. Gson的两种解析用法

    第一种. 常见的解析,直接将json字符串解析为对应的类. public JavaBean getJsonString(String jsonString) { Gson gson = new Gso ...

  10. ajax请求session失效重定向到登录页面

    在ajax请求的页面引入一个自定义的AjaxRedirect.js的文件 AjaxRedirect.js的代码如下: $(function(){ $.ajaxSetup({ type: 'POST', ...