×

微信扫一扫,快捷登录!

标签: 暂无标签

1. 前言
告警将重要信息发送给运维「或者其他相关人」,及时发现并且处理问题。在所有开源监控软件里面,Zabbix 的告警方式无疑是最棒的。告警的方式各式各样,从 Email 告警到飞信、139/189邮箱、最后到微信甚至电话告警,接入存在各种问题以及困难,有没有什么软件能够将他们All In one呢?OneAlert
2. Zabbix传统告警方法
Email:调用 sendmail 、sendEmail 等脚本通过 SMTP 发送邮件
飞信:飞信已经退出历史舞台,不再有人使用
189/139:发送邮箱邮件至邮箱,邮箱将短信转到用户手机短信,存在一定的延迟
微信:需要申请一个微信公众号,并接入API,整个流程比较复杂,而且存在会话时间限制
短信:众多短信网关收费不同、稳定性也不确定,需要通过API接入
3.传统告警 VS OneAlert
在整个使用过程中,得出了传统告警方式的不足以及给个了 OneAlert 告警的功能,具体如下:
3.1 传统告警方式的不足
  • Zabbix 邮件告警经常发不出去
  • 如需短信告警,要么购买短信猫要么购买短信 API,整个流程太麻烦
  • 微信告警需要申请公众号以及 API 接入,而且会话有时间限制
  • 夜间的告警基本成为一个摆设,试问谁能被微弱的短信声叫醒
  • 阿里云、腾讯云、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,如有任何疑问或者不足,欢迎加群或者在 ttls 留言一起交流!
5. OneAlert 后台操作5.1 设置提醒
邮件,短信,微信,电话提醒,多策略提醒,如下图,灵活的定义告警规则。在发生告警之后立即发送邮件和微信消息给用户,10分钟后还未确认,那么发送短信,30分钟还未确认则打电话给用户。
  • onealert告警策略

5.2 设置分派策略
可以设定做种分派策略,在告警第一时间发送通知给哪些人,如果在 30 分钟还未处理好,可以将消息发送给上级主管人员,如下图
  • onealert分配策略

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



6.安装onealert agent#cd /usr/local/src/# wget 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 ./110monitor7. Zabbix 集成OneAlert
以下操作均在 Zabbix Web 后台完成
7.1 创建110monitor媒介
administration->Media Types->create media type,如下图
  • 创建媒介

7.2 Admin 用户添加 110monitor 媒介
Administration->Users->Admin->点击media->Add,输入如下:send to 为 OneAlert 后台生成的 key
  • 创建媒介

7.3 创建触发器
点击Configuration->Action->create action
  • 主题为trigger和resolve,意味着告警触发和恢复都会同步到 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}
  • action配置

  • action配置

8. Zabbix + OneAlert 集成测试
来制造一个故障,选定一台 Zabbix 客户端,执行如下命令:
# killall zabbix_agentd
等候五分钟,OneAlert 后台有如下告警
  • 后台告警信息

并且也收到了微信(需要关注公众号,并且绑定账号)和短信告警
9. OneAlert 告警分析
提供了一份 Zabbix 等开源监控都没有的告警信息分析,运维能清晰的掌握最近服务器状态
  • 告警分析
  • 原创:凉白开



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x




上一篇:结合zabbix模版使用redis监控
下一篇:Zabbix 的 Docker 映像
monicazhang

写了 2297 篇文章,拥有财富 12859,被 21 人关注

您需要登录后才可以回帖 登录 | 立即注册
B Color Link Quote Code Smilies
東東 发表于 2020-11-26 08:22:02
谢谢分享
Powered by IT 运维管理
返回顶部