管理监控警报的 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 本身是基础设施监控和警报的一个很好的选择。它支持通过电子邮件发送通知,并具有其他一些作为集成的选项。它还支持用户定义的通知机制。如果您有一个可以处理警报并向一种或多种媒介(例如,Slack、HipChat、SMS 等)发送自定义通知的 API,则此工具可能非常适合您。

ngDesk

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

Open Distro for Elasticsearch

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

OpenDuty

另一个为付费替代方案带来巨大竞争的警报工具是 OpenDuty。虽然仍处于 beta 测试阶段,但该项目已经支持 SMS、电话、电子邮件、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 (未验证)

感谢分享

Creative Commons License本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。
© . All rights reserved.