基础设施监控基础:Telegraf、InfluxDB 和 Grafana 入门
作者:Jason Myers / 开发者
2024年4月5日
导航至
确保应用程序和系统的可靠性和性能对于健康的基础设施至关重要。随着数据的指数级增长,传统的监控方法不足以提供实时洞察和主动的问题解决。这就是 InfluxDB 发挥作用的地方,它为您的所有监控需求提供了一个强大且可扩展的解决方案。
本次网络研讨会涵盖了使用 TIG 技术栈、Telegraf、InfluxDB 和 Grafana 进行基础设施监控的基础知识。会议涵盖了一系列主题,包括监控和可观测性之间的区别、使用 Telegraf 进行数据收集、使用 InfluxDB 进行数据存储以及使用 Grafana 进行数据可视化和操作。为了说明这些概念,开发者倡导者 Anais Dotis-Georgiou 提出了假设性问题,并演示了如何使用上述工具来解决这些问题。
亮点
1. Telegraf、InfluxDB 和 Grafana 的组合实现了全面的基础设施监控
Anais 讨论了如何使用这三种工具进行有效的基础设施监控。Telegraf 是一个开源代理,用于数据收集。“Telegraf 是我们的开源插件,开源代理,用于收集指标和事件。它是插件驱动的,在 GitHub 上有超过 12,000 个星标,”她指出。
InfluxDB 是一个时间序列数据库,是存储组件。InfluxDB 3.0 构建在 FDAP 技术栈之上,其中包括 Apache Flight、DataFusion、Arrow 和 Parquet,使其能够处理大量时间序列数据。这些开源技术也使得扩展 InfluxDB 以及将其与其他工具和系统集成变得容易。因此,InfluxDB 3.0 提供了更好的互操作性,允许开发人员使用各种 Python 库和其他工具进行 ETL。
最后一个工具是 Grafana,主要用于数据可视化和警报。“我们使用 Grafana 作为可观测性中心……我们可以使用 Flight SQL 插件或官方 InfluxDB v3 插件以及 Jaeger 数据源来查询 InfluxDB 3.0 中的数据,我们在其中整合了所有的日志、追踪、事件和指标,”她详细说明道。“Grafana 和 InfluxDB 之间有着非常良好且长期的关系。它是我们期望用户与 InfluxDB 一起使用的主要可视化工具。”
2. InfluxDB 3.0 为处理时间序列数据带来了重大改进
InfluxDB 专为处理时间序列数据而设计,新版本 InfluxDB 3.0 带来了显著的改进。增强的存储和压缩功能允许用户使用更少的空间来处理和存储大量数据。它还比以前的版本更快地摄取数据,并允许用户使用 SQL 实时查询数据。
Anais 进一步强调了 InfluxDB 3.0 如何允许开发人员除了指标之外,还摄取日志、追踪和事件。灵活性和数据库处理大量数据的能力使其成为物联网、分析和云原生服务的理想解决方案。
“我们为 InfluxDB 提供了云端和边缘端的解决方案。因此,在某些用例中,用户可能希望将其数据更靠近数据源。因此,他们可能会在将数据写入更全局可见的存储之前,对其数据进行降采样和聚合,”她指出。
3. Telegraf 的多功能性使其成为有价值的数据收集工具
Telegraf 是一款开源数据收集代理,因其插件驱动的特性而具有高度的通用性。Anais 描述了它如何支持 300 多个用于摄取和输出数据的插件,使其成为时间序列数据最灵活的摄取代理之一。
“Telegraf 是我们的开源代理,用于收集指标和事件。它是插件驱动的,在 GitHub 上有超过 12,000 个星标,”她说道。Anais 强调了 Telegraf 的社区驱动性,其中大部分插件由社区贡献。
她还解释了如何通过单个文件配置 Telegraf,并使用各种标志在提交配置之前对其进行测试。这种易于配置和测试的特性使 Telegraf 成为用户友好的数据收集工具。
网络研讨会中的示例证实了这一点。正如 Anais 解释的那样,“我们使用 Telegraf 作为我们的收集主干。我们将其部署在我们所有的服务器和云基础设施上,以收集 OpenTelemetry 数据、Prometheus 和 CloudWatch 数据,以及原始的基于服务器的指标。”
后续步骤
当涉及到基础设施监控时,时间序列数据至关重要。当涉及到时间序列数据时,InfluxDB 是为您提供数据完全控制权并让您能够更好地利用数据的解决方案。
要亲自试用 InfluxDB,请立即注册一个免费帐户。