zabbix企业应用之自动语音报警平台

我从2013年5月开始研究zabbix,研究的版本是2.0.6,到现在也马上2年了,目前生产版本还是2.0.6.

现在我公司1000+的服务器无论是物理机还是vmware、openstack的云主机、docker容器等等都使用zabbix进行监控。

当前监控方式为:zabbix=>proxy=>client

当前报警方式为:6个等级报警(未分类、消息、警告、一般严重、严重、灾难)全部通过短信或者邮件来通知,严重及其以上使用自动语音报警方式通知。

一、语音报警介绍

1、为什么使用语音报警

之前我这里招聘了3个监控运维,然后他们使用轮班制度来进行报警通知,但人总是会有疲倦,并且夜间的时候,易睡无法及时的进行报警发现与通知,为了解决这个情况,我开发了一个语音报警平台,针对zabbix的报警通知做一个补充,可以配合zabbix默认的升级机制,实现报警垂直升级+自动语音报警,还可以web化的查看报警内容与处理报警信息。

2、传统报警与语音报警区别

传统报警多为:邮件模式或者短信模式

对于休息时间,无法上网或睡觉,会导致无法及时执行报警,耽误报警发现与处理时间,造成更多的损失。如果有大量报警,会导致查看遗漏重要信息

如果使用语音模式报警,在休息期间,不需要在电脑旁或者打开邮件,就可以通过电话知晓报警信息;即使夜间睡觉,也能通过电话来及时知晓并处理。

二、语音报警效果图

我一般看新内容都喜欢先看看效果图,如果满足我需求才深入研究,所以我也先给大家展示一下效果图,大家觉得满足在向下看,不满足可以退出。

1、报警界面

在右侧的“处理”列里,可以看到报警是已经恢复,所以“处理”列信息都是不可以使用,并且为已处理,如果是报警未恢复,则可以通过点击处理,手动关闭语音报警升级下去。

2、语音报警结果界面(也就是上面图片里“详情”)

上图为发送语音报警的报警信息与接收人的信息,下面是报警垂直事件升级的效果图

3、垂直报警事件升级

可以看看这个报警升级了4次,每次升级的间隔为10分钟,分别联系了3个人,其中第二次联系的时候,是对方不接(从备注no one answer the phone可以看出)

三、如何使用语音报警

1、结合zabbix分布式监控系统

语音报警只是通知的方式,检测报警并发现还需要使用监控系统,推荐使用zabbix分别是监控,支持多平台(如果redhat系列、Ubuntu系列、windows系列);

在zabbix监控发现报警,通过使用语音报警接口来把报警内容电话通知给对应负责人。

2、事件升级机制(Escalations)

举例:如果监控主机出现报警,需要第一时间通知,但如果通知后,报警在一定时间仍然存在,或者电话通知后,由于对方夜间休息,没有接收,这样就会延误处理时间,影响业务;

方法:zabbix事件升级机制(Escalations)

优点:

Zabbix监控自带,兼容性好l发送形式能自定义(目前包括:短信通知、邮件通知、语音电话通知);

根据不同报警等级来进行对于通知l自定义报警升级顺序、时间等;

一直通知问题直到问题解决。

3、语音接口选择

目前国内也有语音接口,但我测试感觉一般,并且花费贵,所以我选择了国际厂商nexmo接口(不是打广告,对方也不给我钱,这个接口很稳定、速度很快、并且价格便宜)

Nexmo是国际知名短信云服务公司l在23个国家70多个运行商均能提供短信与语音功能;

Nexmo的企业客户包括Airbnb、Viber和ICQ等;

按需收费;

通知时间快,通常在5秒内;

强大的售后与技术支持l基础的报表功能。

四、语音报警平台案例

1、架构信息

监控服务:使用zabbix分布式监控;

事件升级:使用zabbix的Escalations垂直模式,从负责人、直属领导、总监等一级一级的升级;

语音通知接口:nexmo的tts;

平台软件架构:python+tornado+bootstrap

2、架构图

3、实现功能

严重等级报警使用语音接口进行报警通知(严重等级报警包括:重启、超时、进程不存在等);

报警垂直升级;

报警合并(同一联系人的报警,会合并为一条在发送);

平台化查看报警主机信息、语音报警通知信息等。

4、zabbix处理报警方式

5、报警垂直事件升级流程图

6、难点

后端:

报警检测间隔(默认10分钟)

垂直事件升级顺序(前2次为第一联系人,第二联系人、运维主管、运维总监)

报警合并(当前为60秒内同一联系人报警合并为1条)

报警通知时间(白天为报警出现后5分钟,晚上为10分钟,重启报警为1分钟)

报警自助处理(如果报警短时间不能解决,则可以通过平台里的处理按钮不进行事件升级)

语音平台用户组权限(从zabbix数据库里获取用户组权限)

前端:

Tornado的架构学习

Bootstrap与jquery的学习

Highchart的学习

目前我公司从去年12月上线测试此平台,上传测试2个月满足需求,所以从2015年2月份正式上线此平台,截止到现在已经运行6个月运行正常,并且报警及时、准确。

现在我这里已经取消了监控运维,通过使用此平台,每个月能节省1w+以上的人员成本,此平台的成本仅为15-17欧元(12欧元固定来电号码租用费用,5元左右的报警电话费用),换为人民币为105-114元左右。

此平台由于还在优化与新功能开发中,所以暂不开源,大家开源参考这个架构来自行定义自己的语言报警平台,有问题可以留言一起交流。

时间: 2024-10-04 21:27:11

zabbix企业应用之自动语音报警平台的相关文章

构建报警平台为减轻zabbix负载压力大及智能收敛信息

这两天我和哥们参与了zabbix相关的开发,微微有点心得,给大家分享下 ~ 首先分享下哥们的博客,http://www.furion.info/   里面可是很有干货哈~  他现负责公司的zabbix主要开发. 好了,咱们开始吧 ~ 为什么要做告警平台? 到底是为什么? zabbx自己不就能发邮件么? 干嘛需要报警平台支持呢 ? 公司zabbix所监控的机器早就过万了,对于他们的报警触发,这边是调用smtplib通过exchange的smtp服务来发邮件,经常遇到3-5s之后才发件成功的情况,试

几个常见的语音交互平台的简介和比较

1.概述 最近做了两个与语音识别相关的项目,两个项目的主要任务虽然都是语音识别,或者更确切的说是关键字识别,但开发的平台不同, 一个是windows下的,另一个是android平台的,于是也就选用了不同的语音识别平台,前者选的是微软的Speech API开发的,后者则选用 的是CMU的pocketsphinx,本文主要将一些常见的语音交互平台进行简单的介绍和对比. 这里所说的语音交互包含语音识别(Speech Recognition,SR,也称为自动语音识别,Automatic Speech R

zabbix企业应用之监控动作是否有被关闭

当前我监控1000+的服务器,动作有近200个,监控方式有短信.邮件与语音报警电话,如果动作配置有问题或者某个动作被关闭,就会导致某些报警无法触发,不能及时收到报警通知并处理.而且zabbix配置用户权限的时候,如果给某些用户部门管理员的话,他就可以自己修改动作,比如关闭,然后业务出现问题无法报警,虽然可以从zabbix审计里查看(我测试了,很多情况下用户自己关闭动作,审计是看不到的),但扯皮是浪费时间的. 所以我自己写了一个程序判断当前动态是否有被关闭,如果有关闭就使用zabbix通知. 下面

zabbix企业应用之监控域名过期时间与ssl证书过期时间

如果各位维护过n多个域名,可能会对备案与续费有所了解,备案是十分麻烦,各种流程,而续费的话,虽然比较简单,但如果你没有提前续费,可能导致域名不可用,甚至被他人给恶意注册,为了解决这样的问他,我今天给各位分享一下,如何使用zabbix监控域名过期时间与ssl证书过期时间,默认的触发器是在域名或ssl证书要过期前60天通知. 下面是监控域名过期时间的效果图 下面是监控ssl证书过期时间效果图 如何实现: 一.客户端 1.修改zabbix_agentd.conf文件 在zabbix_agentd.co

zabbix企业应用之从数据库提取centos 6.2系统在线天数

历史原因造成公司有很多centos 6.2的系统,从某天6.2系统突然自动重启,排查半天发现是6.2的内核bug(超过208天后可能自动重启,可以参考https://access.redhat.com/site/solutions/68466),所以为了不影响业务,在发现6.2系统在线超过180天后就安排重启工作,下面是介绍如何使用zabbix来从数据库里获取6.2系统服务器的在线天数,然后通知业务重启,避免意外重启导致业务受到影响. 1.脚本内容 #!/bin/bash #script nam

阿里云发布智能语音自学习平台,零基础训练人工智能模型

摘要: 业务人员甚至门卫大爷也能训练人工智能?曾经只出现科幻电影中的一幕真的发生了.7月18日,阿里巴巴机器智能技术实验室宣布在阿里云正式发布智能语音自学习平台公有云产品,突破性地提供一键式语音智能自助优化方案,使得语音识别优化不再依赖于语音供应商的专家服务,让不懂技术的人员从此也可以快速显著提升自己业务的识别准确率满足业务需求. 业务人员甚至门卫大爷也能训练人工智能?曾经只出现科幻电影中的一幕真的发生了.7月18日,阿里巴巴机器智能技术实验室宣布在阿里云正式发布智能语音自学习平台公有云产品,突

WinCC语音报警实现方法

概述 在WinCC中实现语音报警有好几种方式,用的比较多的就是使用WINCC自带的报警器进行组态,它可以在报警进入时播放预先选择的语音.还有就是使用脚本调用API函数PlaySoundA来播放语音,不过它也只能播放固定的语音,这两种方式都不够灵活. TTS Windows操作系统提供了一个TTS(Text-To-Speech)引擎,我们可以使用VBS或者C脚本在WinCC里面调用.不过这种方式实用价值不大,因为脚本在调用TTS发音时对线程是阻塞的,这时候后面的脚本都只能排队,无法正常执行.大家都

zabbix下如何通过sendmail发送邮件报警

我的zabbix相关环境:          OS: centos 5.4  x86_64       zabbix:   1.8.3     sendmail:  8.13.8-2.el5    在配置zabbix的Email报警之前,需要将sendmail使用的域名进行相应的修改,系统默认为localhost.localdomain,其实不改也行,不过有些pop3服务器会过滤掉来自localhost.localdomain的邮件,导致邮件不能正常查收,所以,最好是改一下 hostname,确

《分答》“瘦身”复出 付费语音咨询平台路在何方?

在2016年的中国互联网市场上,活跃用数最高的互联网新应用--分答,一上线就火爆朋友圈.历经八十多天又突然暂停服务."停摆"47天后再次重新返场. 这款怀着让知识变现的初心,进入市场的付费语音咨询平台.在上线时,就成为了现象级的火热爆款,估值达到10个亿.期待着它将如何引领知识付费的大潮时,8月中上旬,分答便进入了莫名的停摆状态. 分答官方给出了技术升级.产品迭代的说法.而网络舆论上,则在述说着这一爆款产品,正面临着严格的监管审查.除此之外,在分答利用了王思聪.章子怡.鹦鹉史航.pap