Zabbix 集成 OneAlert 实现全方位告警

1. 前言

告警将重要信息发送给运维「或者其余相关人」,及时发现而且处理问题。在全部开源监控软件里面,Zabbix 的告警方式无疑是最棒的。告警的方式各式各样,从 Email 告警到飞信、139/189邮箱、最后到微信甚至电话告警,接入存在各类问题以及困难,有没有什么软件可以将他们All In one呢?OneAlertios

2. Zabbix传统告警方法

Email:调用 sendmail 、sendEmail 等脚本经过 SMTP 发送邮件服务器

飞信:飞信已经退出历史舞台,再也不有人使用微信

189/139:发送邮箱邮件至邮箱,邮箱将短信转到用户手机短信,存在必定的延迟app

微信:须要申请一个微信公众号,并接入API,整个流程比较复杂,并且存在会话时间限制运维

短信:众多短信网关收费不一样、稳定性也不肯定,须要经过API接入jsp

3.传统告警 VS OneAlert

在整个使用过程当中,得出了传统告警方式的不足以及给个了 OneAlert 告警的功能,具体以下:测试

3.1 传统告警方式的不足

  • Zabbix 邮件告警常常发不出去阿里云

  • 如需短信告警,要么购买短信猫要么购买短信 API,整个流程太麻烦spa

  • 微信告警须要申请公众号以及 API 接入,并且会话有时间限制code

  • 夜间的告警基本成为一个摆设,试问谁能被微弱的短信声叫醒

  • 阿里云、腾讯云、Zabbix 各类系统告警都须要单独配置,工做繁琐

  • 广泛缺乏告警分析

  • 139/189 发送告警存在明显的延迟

3.2 OneAlert告警功能

  • 告警 All In One,支持微信、邮箱、短信、APP、电话告警

  • 支持接入 Zabbix、Nagios、阿里云、腾讯云、监控宝等等告警信息

  • 灵活的分配策略,可灵活的分配告警信息发送给相关人员

  • 微信、邮箱、app 等告警方式所有免费

4.接入准备

因为 Zabbix 官方已经升级到zabbix-3.0.0alpha,考虑到将来的趋势,我也火烧眉毛的升级到了 3.0,除了 Web 风格变化,大部分都差很少。因此本文适用于 Zabbix2.x 与 Zabbix3.x 版本。接下来跟着凉白开将 OneAlert 接入 Zabbix,若有任何疑问或者不足,欢迎加群或者在 ttlsa.com 留言一块儿交流!

5. OneAlert 后台操做

5.1 设置提醒

邮件,短信,微信,电话提醒,多策略提醒,以下图,灵活的定义告警规则。在发生告警以后当即发送邮件和微信消息给用户,10分钟后还未确认,那么发送短信,30分钟还未确认则打电话给用户。

Zabbix 集成 OneAlert 实现全方位告警

5.2 设置分派策略

能够设定作种分派策略,在告警第一时间发送通知给哪些人,若是在 30 分钟还未处理好,能够将消息发送给上级主管人员,以下图

Zabbix 集成 OneAlert 实现全方位告警

5.3 建立应用

登录 OneAlert 后台,点击告警 -> 应用 -> 新增应用,集成类型包含阿里、Nagios、腾讯云等多种,咱们选择 Zabbix 最后保存便可。将会生成应用 KEY,Key 在后面将会被用到!

Zabbix 集成 OneAlert 实现全方位告警

Zabbix 集成 OneAlert 实现全方位告警

6.安装onealert agent

#cd /usr/local/src/
# wget http://cdn.110monitor.com/open/download/alert-agent-4.0.1-RC2.tar.gz
# tar –xvf alert-agent-4.0.1-RC2.tar.gz(注意:参数为-xvf,不是-xzvf)
# cp -rp alert-agent /usr/local/zabbix-3.0.0/alertscripts
# cd /usr/local/zabbix-3.0.0/alertscripts
# cp alert-agent/plugin/zabbix-plugin/110monitor .
# chmod +x ./110monitor

7. Zabbix 集成OneAlert

如下操做均在 Zabbix Web 后台完成

7.1 建立OneAlert媒介

administration->Media Types->create media type,以下图

Zabbix 集成 OneAlert 实现全方位告警

7.2 Admin 用户添加 OneAlert 媒介

Administration->Users->Admin->点击media->Add,输入以下:send to 为 OneAlert 后台生成的 key
Zabbix 集成 OneAlert 实现全方位告警

7.3 建立触发器

点击Configuration->Action->create action

  • 主题为triggerresolve,意味着告警触发和恢复都会同步到 110monitor

  • 设置告警内容,注意冒号「:」前的内容不可变动,冒号「:」后的内容能够自行编辑,只能使用如下7调告警信息,不然告警没法发送至 OneAlert 接口

`alarmName:{TRIGGER.NAME}`

 `entityName:{HOSTNAME}`

` entityId:{IPADDRESS}`

 `value:{TRIGGER.VALUE}`

 ` eventId:{EVENT.ID}`

 `priority:{TRIGGER.SEVERITY}`

 `alarmContent:{IPADDRESS} `

 `{ITEM.NAME}:{ITEM.VALUE}`

Zabbix 集成 OneAlert 实现全方位告警

Zabbix 集成 OneAlert 实现全方位告警

8. Zabbix + OneAlert 集成测试

来制造一个故障,选定一台 Zabbix 客户端,执行以下命令:

# killall zabbix_agentd

等候五分钟,OneAlert 后台有以下告警

Zabbix 集成 OneAlert 实现全方位告警

而且也收到了微信(须要关注公众号,而且绑定帐号)和短信告警

9. OneAlert 告警分析

提供了一份 Zabbix 等开源监控都没有的告警信息分析,运维能清晰的掌握最近服务器状态

Zabbix 集成 OneAlert 实现全方位告警

10. 总结

OneAlert与Zabbix的集成就说到这,若有任何疑问或者不足,欢迎加群或者在 ttlsa.com 留言一块儿交流!

做者:凉白开 网址:http://www.ttlsa.com

相关文章
相关标签/搜索