管理监控警报的 6 个 OpsGenie 替代方案

在不超出预算的情况下,缩短从 IT 问题到修复的时间。
187 位读者喜欢这篇文章。
How to find files in Linux

Lewis Cowles,CC BY-SA 4.0

编者注:以下是作者关于管理监控系统主题的观点。

随着组织迈向新一代分布式系统和微服务架构,DevOps 领域发现越来越难以跟上当今应用程序监控的混合需求以及它生成的警报。 DevOps 专业人员正在为此目的转向新兴的无服务器方法来管理 IT 基础设施的这一方面。

实现此过程的软件范围从商业软件到开源软件,从昂贵到免费。 让我们首先看看问题本身。是什么让管理监控和警报如此困难?

管理监控

当在不同地区工作的不同组织各自选择不同的沟通媒介,以使其员工和客户感到舒适时,管理监控和警报变得复杂。

让我们通过一个例子来更深入地了解这个问题。 以一家公司为例,该公司

  • 拥有许多在各种云和非云平台上运行的产品。
  • 使用聊天和电子邮件服务进行内部沟通。
  • 拥有在不同时区工作的支持专业人员。

现在,如果这家公司的任何产品出现问题,响应团队应在客户(和公司)遭受负面影响之前采取行动。 如果响应团队立即在那里解决问题,就不会有太多问题,但如果他们不在,响应团队的某人应该以某种方式通知他们,以减少功能性或可能的经济损失的范围。

问题是,人们不可能一直注意到问题并做出响应。 如果您向响应团队发送电子邮件或短信,则很可能团队中没有人会在问题造成重大经济损失之前看到它。 此外,响应团队可能已经收到了太多电子邮件警报,即使他们有空,他们也可能难以在较小的警报中发现影响重大的问题。 在这种情况下,您应该向响应团队的某人发送一个明显的警报,例如拨打电话或向寻呼机发送消息。 但是,如果您决定打电话,您需要知道谁实际上有空,否则您可能不得不给多人打电话,直到您找到准备好在那个时候接听电话的响应团队成员,如果您的电话是在他们所在位置的奇怪时间打来的,这可能会花费更长的时间。

相反,您需要的是一个不仅监控您的系统,而且还智能地管理警报过程的工具,以便尽快获得结果。 一种流行的商业选择是 OpsGenie,在本文中,我们将讨论这种专有选项的开源替代方案。

我们希望从 OpsGenie 获得什么

OpsGenie 是一种付费警报工具,可帮助组织实现智能警报和通知流程。 除了轮班管理外,OpsGenie 目前还支持与几乎所有现有系统(付费和免费)的通知往来。 在包含大量自动化、与聊天机器人集成和轮班的 DevOps 环境中,拥有 OpsGenie 还有许多其他好处。 在中断期间需要技术支持是考虑 OpsGenie 这些好处的更重要原因之一。

在与 OpsGenie 的比较中,我们将仅关注开源警报工具的必要部分。 在许多环境中,这涉及通过管理以下内容来连接团队

  • 向依赖该服务的团队发出警报。
  • 用于查看系统状态的仪表板。
  • 与聊天工具和自动响应集成。

编者注: 在发布时,OpsGenie 在一定使用范围内确实提供免费服务。 请访问他们的网站以获取与其服务相关的最新详细信息。

开源警报工具

有一些开源工具可以完成我认为对于管理监控系统至关重要的 OpsGenie 所做的一切。

Cabot

Cabot 提供了获得基础设施完整监控图所需的所有必要功能。 Cabot 支持通过电话、电子邮件、短信、HipChat 和 Slack 发出警报。 它用 Python 编写,主要使用 Django 框架。 Cabot 独立于 Java 和其他内存密集型进程,这使其成为一个稳定的选择。

Nagios

Nagios Core 是免费和开源的,但其支持和一些插件是收费的。 值得庆幸的是,Nagios Core 本身是基础设施监控和警报的绝佳选择。 它支持通过电子邮件发送通知,并提供一些其他选项作为集成。 它还支持用户定义的通知机制。 如果您有一个 API 可以处理警报并向一种或多种媒介(例如,Slack、HipChat、短信等)发送自定义通知,那么此工具可能非常适合您。

ngDesk

ngDesk 可以处理您的轮班、在没有响应时自动升级警报,并提供票务工具。 ngDesk 仍在开发完整软件包,因此请继续关注这个新兴项目。

Open Distro for Elasticsearch

Open Distro for Elasticsearch 是监控和警报领域的新成员。 该项目几乎支持所有聊天机器人、电子邮件和各种其他警报机制。 Open Distro for Elasticsearch 是一个完整的、可插拔的监控和警报模块,它是许多工具的组合。 有了它,您可以在 Kibana 中查看警报,因此无需使用单独的工具,并且您可以通过支持的集成和接收器以您想要的方式获得通知。 身份验证支持已添加到 Kibana、Elasticsearch 和此组合中的其他工具,免费,因此您可以指定谁可以查看您的 elastic stack 中的哪些内容。

OpenDuty

另一种与付费替代方案竞争激烈的警报工具是 OpenDuty。 虽然仍处于测试阶段,但该项目已经支持短信、电话、电子邮件、Slack、HipChat 以及各种其他付费和开源集成,用于发送警报。 还支持与 Nagios 等其他警报工具的集成,以及与付费警报工具 PagerDuty 的兼容性,很可能是为了帮助人们迁移。

Prometheus Alertmanager

Alertmanager 能够定义警报定义,然后将具有特定定义的警报路由到易于设置的集成。 然后,这些集成可以将警报广播到端点设备,管理员可以在需要时静音这些设备。 尽管存在局限性,但 Alertmanager 仍然是一个非常好的工具,用于向聊天平台和手机发送推送通知。

总结

如果预算或仅使用开源软件是首要考虑因素,那么有很多响应团队警报选项可供选择。 首先查看您现有设置中的弱点,并查明您的组织在 IT 问题上哪里做得不好,导致它们升级为实际问题。 这样做可以更容易地选择您应该实施哪种工具或工具组合,以最好地解决这些差距。 如果它有助于您全面了解如何管理您的监控基础设施,那么使用多个工具是可以的。

iamabhi
我是一名首席 DevOps,也是一名程序员。 我是开源爱好者、博主、作家。 您会发现我主要在帮助人们学习。

9 条评论

您是对的,在阅读文档后,alerta 具有潜力。 我主要寻找可以直接推送警报或具有最合适集成的工具。 我错过了查看这个工具。

回复 ,作者 Kjetilmjos

嗯,不确定对此的研究是否非常完整。 其中一些“替代方案”已经多年无人问津了...

值得注意的是,作为一名前监控爱好者,OpsGenie 所做的工作远远超出这些工具中的任何一个。 如果您同意您只需要仪表板和警报的基本原理,那么这些工具的组合可以涵盖必要的元素。 对我来说很重要的一些额外考虑因素

- 当警报重复出现时会发生什么,又名“抖动”?
- “事件”的定义是什么? 它是否关联多个事件?
- 它如何检测到环境中的某些内容是故意添加还是删除的?

这是一个关于监控系统这个深入主题的良好开端! 感谢您的撰写。

我会更进一步,并认为本文中列出的几乎所有替代方案都不值得比较。 这里存在虚假的等价性,我认为原始作者在进行比较之前没有进行适当的调查。 OpsGenie 是一个警报聚合器和路由器,它本身绝对不进行任何监控 - 它从一开始就设计为从大量来源(通过电子邮件或 API 调用)接收警报,并且一旦收到这些警报,就可以实现很多功能。 最接近的等价物是现已解散的 AlertCentral 或 PagerDuty,我假设 OpenDuty 效仿了 PagerDuty 的脚步。 我所知道的此列表中的其他任何内容都不属于同一问题领域。

感谢您的评论。

我看到您的评论实际上以一种好的方式出现,我在其中写了关于 Opsgenie 的内容。 整篇文章都围绕警报、Opsgenie、来自大量集成的支持输入展开,这些集成提供了诸如轮班计划、短信、呼叫响应、确认以及来自 slack 或 hipchat 和各种其他工具的其他支持性操作等实用程序。
对于所有其他工具,提到的想法是提供一个开源工具列表,这些工具可以提供类似 Ops-genie 的功能,当然,并非所有功能都可以从一个组织花费大量时间提供的东西中复制出来,并且提供有限免费配额的付费支持。

感谢您提醒我,我错过了该部分中非常重要的几行内容。

回复 ,作者 Sgee (未验证)

感谢分享

© . All rights reserved.