如何使用 InfluxDB 监控您的监控解决方案
作者:社区 / 产品, 用例, 开发者, 公司
2021 年 2 月 9 日
导航至
本文由 InfluxAce Nikki Cornell 撰写,她是 Digits 的软件工程师。
在现实世界中,如果您的可观测性管道出现故障,您可能无法收到被监控系统的关键警报。为了解决这个问题,我内部研究了 Sensu Go,并决定使用 /metrics API 端点,该端点声明了 Prometheus 指标。这就是我如何构思 Sensu Go 监控模板,一个 InfluxDB 模板,通过简单地提出问题:“您如何监控您的监控解决方案?”
首次接触 InfluxDB
从一开始,我对使用 InfluxDB 时间序列数据库 的体验就非常积极。它的易用性确实是该领域中最好的之一,而且 文档 内容丰富且简洁,并贯穿了具体的示例。InfluxDB 具有非常强大的产品契合度,因此它在几乎每个堆栈中都具有凝聚力。
Sensu Go - 简而言之
Sensu 的核心是一个可观测性事件管道。它收集、处理和路由不同的事件类型,包括发现、可用性、遥测和警报。它是一个 监控即代码 解决方案,为网络和基础设施 o11y(“o11y”对于那些不知道的人来说是 “可观测性”的缩写)提供了无尽的排列和自定义。Sensu Go 是 Sensu Core(Sensu 的原始版本)在 Go 中的完全重写,具有新功能并减少了运营开销。它消除了新老 Sensu 用户的几个摩擦点。
使用 InfluxDB 模板进行监控
InfluxDB 模板 是开源工具,包括打包程序和一组预制的监控解决方案,让您可以快速定义任何技术的完整监控配置,在一个易于共享的 yml 文本文件中,该文件可以使用单个命令导入到 InfluxDB 中。构建 和 提交 模板很容易,这就是为什么许多 InfluxDB 模板是由社区贡献的。
Sensu Go 监控模板的工作原理
Sensu Go 公告了一个 /metrics API 端点,该端点返回 Prometheus 指标。这些指标包含内部性能数据,例如已处理的 Sensu 事件,以及关于 Sensu 配置的键值存储 etcd 的健康信息。Telegraf 的 Prometheus 输入插件 抓取、提取、转换并将这些指标点作为时间序列数据存储在 InfluxDB 中。
该模板有一个预配置的仪表板,如下所示。
该模板 促进了时间序列数据和 Sensu Go 的工作。虽然 Sensu Go 对收集和路由时间序列数据到 InfluxDB 具有外部支持和集成,但此模板实际上提供了更直接的途径来了解 Sensu 的内部运行情况。在堆栈中使用 Sensu、Prometheus、Telegraf 和 InfluxDB,我们实际上能够提取和转换关于我们监控解决方案的性能指标和健康检查,将其转换为时间序列数据库以进行分析和可视化。
轻松实现指标提取
凭借此模板的可用性,并且由于 InfluxDB 2.0 具有内置 UI,这进一步促进了指标提取。例如,文章 事件监控可见性变得简单:使用 InfluxDB 和 Grafana 进行 Sensu 检查指标提取 解释了如何促进提取 Sensu Go 检查和 StatsD 服务器收集的指标。现在,该模板促进了从 Sensu Go 中支持的 Prometheus 指标中提取指标。DevOps 可能是此模板最强大的用例,特别是对于 Sensu 和其他系统的运营商而言。
只需具备 部署 Sensu Go 和使用 Telegraf 插件 的基本知识,就可以轻松使用此模板。只需注册一个 免费的 InfluxDB Cloud 帐户。从那里开始设置插件和模板应该非常简单!