博客/社区

如何简化基础设施监测与理智,InfluxDB Grafana

2019年5月14日5分钟

“开始,你监视栈不应该花费你栈,”美国软件工程师尼基Attea告诉群众GrafanaCon洛杉矶“鳄梨面包真的很贵。但好消息是你不需要监控的解决方案。”

为了证明这一点,Attea提出了一个简单的开发者利用用例美国标准管道监控事件,收集,处理,和根不同的事件类型包括发现、可用性、遥测和警报。

“管道让理智非常强大和完全可定制的。所以想Nagios类固醇,”Attea说。

公司提供多个性能指标监测机制,是否为应用程序或基础设施。

Sensu1

StatsD——一个度量聚合用于收集值如仪表、计数器、计时器、集——美国特工嵌入式StatsD守护进程监听UDB流量。阅读更多关于此服务的理智博客

监控设施,美国服务检查监控节点上收集数据和遵循相同的协议作为Nagios服务检查。每个美国代理运行检查的集合,每个检查将输出数据,产生一个退出代码,表示一个特定的状态。理智然后解析检查输出和生产指标。

GrafanaCon虽然Attea专注于服务检查,她说,“提示:你的栈会越复杂,你可能会想要检查和指标。”

使用一个简单的堆栈包括理智、InfluxDB和Grafana——所有与企业同行——Attea开源工具走过如何理智与Grafana可视化数据服务检查工作,提高监测。

输出指标提取

Sensu2

美国目前支持四个不同的标准格式:InfluxDB行协议,OpenTSDB,石墨,Nagios性能数据。

“关键在每种类型的标识符可以使用定义在一个给定的理智检查配置,“Attea说。“这决定了哪些格式检查输出应该解析和映射到输出指标格式。”

此外,“理智实际上基本上支持各种内置的标准协议和无限的插件可能存储它们,”Attea说。

美国标准检查配置

Sensu3

这里,Attea检查定义了一个名为检查CPU InfluxDB。

“这将被设置为任何节点上运行每10秒订阅,“她解释道。底部的命令是一个简单的shell脚本,它会打印出CPU使用率InfluxDB线协议。左边的两个字段显示,检查输出指标提取将发生。

“所以事件产生包含不仅执行上下文等状态,输出,持续时间,等等,”Attea说。“还会有实体信息监控节点,最后,最重要的是,提取的指标,即Kube API服务器CPU的价值。”

整个过程不仅是简单,Attea说。“这是魔法。”

结合时间序列数据库

Sensu4

理智已经与许多时间序列数据库紧密集成,因此用户可以选择他们喜欢的人。

在这个例子中,Attea InfluxDB处理程序”,因为有一个超级简单的Golang流入客户,走的是我的语言选择,”她说。

“右边的处理程序配置事件数据和调用二进制称为理智InfluxDB处理程序,“Attea解释道。“这接受配置选项命令行标志或环境变量。然后附加规标签浓缩可以发生事件管道作为理智的一部分。”

这个设置将最终接受的事件数据通过标准,然后配置的指标将被送到时间序列数据库。

“这是以前一个企业特性,所以利用它,“建议Attea。找到源代码在这里

管道内的监控事件

Sensu5

如果管道,理智后端将发送服务检查监督与理智安装代理节点。代理将执行检查,提取指标的四个支持的格式,然后后端将收到事件数据和管道通过监视事件。

“在这个特定的用例,您可以过滤这个事件只有在它包含指标、突变事件丰富任何度量标记,并添加额外的上下文数据和来源的指标。你就会通过将其送往处理事件时间序列数据库,”Attea说。

这个图也折叠StatsD指标以及另一个集成普罗米修斯度量端点。

“基本上任何遥测事件代理接收到由后端处理,这是很重要的,因为为了让应用程序的完整的可见性,系统,服务,基础设施,你可能会收到来自多个数据源的数据,“Attea解释道。“这是伟大的,有一个单一的入口点的这些数据,但是当你开始添加不同的事件类型像可用性和警报,你应该心存感激,管道动态足以支持可重用性在同样罩。”

可视化的数据

Sensu6

这理智仪表板关键事件的敏感度要高于正常的状态。“这是后端,由api驱动的,所以尽管理智仪表板提供优秀的可见性系统的整体健康和状态,它不直接可视化时间序列数据,“Attea说。

输入Grafana。

Sensu7

“在这个指示板有一个单一的数据源Grafana的而言,因为我们让美国标准做所有的重担,“Attea说。“这里显示的美国标准检查显示指标从石墨和涌入而StatsD守护进程跟踪的所有API调用和请求率。…我想说这个仪表盘很光滑,所以感谢Grafana那么容易!”

更多的从GrafanaCon 2019,查看所有的谈判YouTube