加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

5个系统管理员常用的警报和可视化工具

发布时间:2018-10-17 09:06:01 所属栏目:教程 来源:君子兰翻译
导读:【51CTO技术沙龙】10月27日,让我们共同探索AI场景化应用实现之道 这些开源工具帮助用户了解系统行为和输出,并为潜在问题提供警报。 你可能使用警报和可视化工具,为什么我要将它们作为可观察性工具进行讨论,特别是某些系统将可视化作为特征? 可观察性来

此图像显示的不仅仅是传统的仪表。其他仪表是单一的统计表示,类似于经典仪表的功能。它们都使用相同的配色方案,只需一瞥即可快速指示系统健康状况。可以说,底行可能是衡量仪表的最佳示例,它允许您浏览仪表板并知道一切都是健康的(或不是)。这种类型的可视化通常是我放在顶层仪表板上的。它可以在几秒钟内全面,高层次地了解系统运行状况。

火焰图

不太常见的可视化是由Netflix的Brendan Gregg于2011年推出的火焰图。它不是仪表板或快速观察高级系统问题的理想选择。在尝试理解特定的应用程序问题时通常会看到它。此可视化关注于CPU和内存以及关联的帧。 X轴按字母顺序列出帧,Y轴显示堆栈深度。每个矩形都是一个堆栈帧,包括被调用的函数。矩形越宽,它在堆栈中出现的越多。在尝试在应用程序级别诊断系统性能时,此方法非常有用,我建议大家尝试一下。

5个系统管理员常用的警报和可视化工具

工具选择

报警有几种商业选择,但由于这是Opensource.com,我将仅涵盖真实公司大规模使用的系统,可以免费使用。希望你能够贡献新的和创新的功能,使这些系统更好。

二、警报工具

1.Bosun

如果你曾经使用计算机做过任何事情并且卡住了,那么你收到的帮助可能归功于Stack Exchange系统。Stack Exchange围绕众包问答模型运行许多不同的网站。Stack Overflow非常受开发人员欢迎,超级用户很受操作的欢迎。然而,现在有数百个网站,从育儿到科幻,哲学到自行车。

Stack Exchange开源其警报管理系统Bosun,同时Prometheus及其AlertManager系统也已发布。这两个系统有许多相似之处,这是一件非常好的事情。像Prometheus一样,Bosun是用Golang写的。Bosun的范围比Prometheus更广泛,因为它可以与指标聚合之外的系统进行交互。它还可以从日志和事件聚合系统中提取数据。它支持Graphite,InfluxDB,OpenTSDB和Elasticsearch。

Bosun的架构由一个服务器二进制文件,一个像OpenTSDB,Redis和scollector代理的后端组成。scollector代理自动检测主机上的服务,并报告这些进程和其他系统资源的度量标准。此数据将发送到指标后端。然后,Bosun服务器二进制文件查询后端以确定是否需要触发任何警报。 Bosun也可以被像Grafana这样的工具用来通过一个通用接口查询底层后端。 Redis用于存储Bosun的状态和元数据。

Bosun的一个非常巧妙的功能是它可以根据历史数据测试警报。这是我几年前在Prometheus错过的东西,当时我有一个问题的数据,我想要警报,但没有简单的方法来测试它。为了确保我的警报正常,我必须创建并插入虚拟数据。该系统减轻了非常耗时的过程。

Bosun还具有通常的功能,如显示简单的图形和创建警报。它具有强大的表达语言,可用于编写警报规则。但是,它只有电子邮件和HTTP通知配置,这意味着连接到Slack和其他工具需要更多的自定义(其文档涵盖)。与Prometheus类似,Bosun可以使用模板进行这些通知,这意味着它们可以像您希望的那样看起来很棒。可以使用所有HTML和CSS技能创建任何人见过的最糟糕的电子邮件提醒。

2.Cabot

Cabot是由一家名为Arachnys的公司创建的。你可能不知道Arachnys是谁或它做了什么,但你可能已经感受到它的影响:它构建了领先的基于云的解决金融犯罪的解决方案。这听起来很酷,对吗?在以前的公司,我参与了“了解你的客户”法律的类似职能。大多数公司认为与恐怖组织联系是一件非常糟糕的事情,例如,通过他们的系统汇集资金。这些解决方案也有助于防范对欺诈者等不那么残暴的罪犯,也可能对该机构构成风险。

为什么Arachnys创造abot?嗯,这对每个人来说都是一个圣诞礼物,因为这是一个圣诞节项目,因为它的开发人员无法围绕Nagios。真的,谁可以怪他们? Cabot是用Django和Bootstrap编写的,因此对大多数人来说应该很容易为项目做出贡献。 (另一个有趣的事实:名字来自创作者的狗。)

Cabot架构与Bosun类似,因为它不收集任何数据。相反,它通过其提醒的工具的API访问数据。因此,Cabot使用拉动(而非推动)模型进行警报。它可以访问每个系统的API,并根据特定的检查检索所需的信息。 Cabot将警报数据存储在Postgres数据库中,并且还具有使用Redis的缓存。

Cabot原生支持Graphite,但它也支持Jenkins,这在该领域很少见。Arachnys使用Jenkins就像一个集中式的cron,但我喜欢这种处理构建失败的想法,比如停机。显然,构建失败并不像生产中断那么重要,但如果失败未得到解决,它仍然可以提醒团队并升级。每次收到有关构建失败的电子邮件时,谁真正检查Jenkins?我也是!

另一个有趣的功能是Cabot可以与Google日历集成以进行随叫随到的轮换。Cabot将此功能称为罗塔(Rota),这是英国名单或轮换名词。这很有意义,我希望其他系统能够进一步理解这个想法。Cabot不支持比主要和备用人员更复杂的任何东西,但肯定有额外功能的空间。文档说如果你想要更先进的东西,你应该看一个商业选择。

3.StatsAgg

StatsAgg?这是怎么做到的?好吧,并不是每天都会遇到一家创建了警报平台的出版公司。我认为值得认可。当然,皮尔森不再只是一家出版公司了;它有几个网站和O'Reilly Media的合资企业。但是,我仍然认为它是出版我的教科书和考试的公司。

StatsAgg不仅仅是一个警报平台;它也是一个指标聚合平台。它有点像其他系统的代理。它支持Graphite,StatsD,InfluxDB和OpenTSDB作为输入,但它也可以将这些指标转发到各自的平台。这是一个有趣的概念,但随着中央服务的负载增加,可能存在风险。但是,如果StatsAgg基础结构足够强大,即使后端存储平台出现中断,它仍然可以生成警报。

StatsAgg是用Java编写的,只包含主服务器和UI,可以将复杂性降至最低。它可以基于正则表达式匹配发送警报,并专注于服务而不是主机或实例的警报。 它的目标是填充开源可观察性堆栈中的空白,我认为它做得很好。

三、可视化工具

1.Grafana

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读