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

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

Lewis Cowles, CC BY-SA 4.0

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

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

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

管理监控

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

让我们通过一个例子更深入地了解这个问题。假设一家公司:

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

现在,如果这家公司的任何产品出现问题,响应团队应在客户(和公司)遭受负面影响之前采取行动。如果响应团队立即到位并处理问题,则不会有太多问题,但如果他们不在,则响应团队中的某人应以某种方式通知他们,以减少功能性或可能的财务损失的范围。

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

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

我们对 OpsGenie 的期望

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

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

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

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

开源警报工具

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

Cabot

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

Nagios

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

ngDesk

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

Open Distro for Elasticsearch

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

OpenDuty

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

Prometheus Alertmanager

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

总结

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

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

9 条评论

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

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

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

这是深入探讨监控系统主题的良好开端!感谢您的撰写。

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

感谢您的评论。

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

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

回复 ,作者:Sgee (未验证)

感谢分享

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 获得许可。
© . All rights reserved.