Red Hat 使用 InfluxDB 收集 gNMI 数据以进行内部网络监控

导航至

Red Hat 是全球领先的开源企业 IT 解决方案提供商,其产品组合包括混合云基础设施、中间件、云原生应用程序和自动化解决方案。

业务挑战

管理 Red Hat 的企业 IT 基础设施是一项庞大的工程,涉及监控支持四十个不同国家/地区超过 40,000 名员工的骨干网络。Red Hat 的内部网络监控团队监控着公司 105 个全球办公地点中的 60 多个。总计,这相当于 14,000 多个接口和 1,600 多个设备。

Red Hat 的监控围绕性能指标和可视化展开。网络监控团队想要了解网络基础设施的性能如何,他们将这些数据可视化,以便更好地理解性能。

为了实现全球基础设施的可观测性,网络监控团队寻求构建一个监控解决方案,该解决方案可以作为网络的单一信息来源。为此,他们需要能够从全球各地收集数据,例如设备可用性数据(例如,ping、http、DNS)、查询速度、http 响应时间和代码、外部链路利用率、延迟等等。

技术挑战

由于在全球各地有如此多的不同接口和设备,Red Hat 团队需要能够使用最有效的协议从各种数据源收集数据。他们需要可视化网络性能、生成警报、创建网络地图和监控网络带宽,并且需要一种收集数据以支持这些可观测性目标的方法。

最大的挑战之一是 SNMP 协议在网络监控中仍然非常常见。但是,SNMP 有几个关键限制,因此团队正在尽可能转向 Google 的网络管理接口 (gNMI)。gNMI 提供更精细的数据轮询间隔,并且可以收集和存储 SNMP 无法收集的数据类型和指标。

但是,并非 Red Hat 环境中的每个设备都支持 gNMI,那么公司如何将所有内容整合在一起以实现其单一信息来源呢?

解决方案

Red Hat 运行 InfluxDB 的企业实例,这是其网络监控架构中的关键部分。Red Hat 使用 Telegraf 和适当的 SNMPgNMI 插件直接从网络设备收集数据。他们尽可能收集 gNMI,但有些设备仅支持 SNMP,或者正在更新以支持 gNMI,因此来自这些设备的数据通过 SNMP 传入。

Telegraf 在必要时丰富数据,然后将其传递给 Kapacitor 进行分析。如果 Kapacitor 检测到问题,系统会向相关人员发送警报。Red Hat 将分析后的 SNMP 和 gNMI 数据存储在 InfluxDB 的不同测量中,并为每个测量编写自定义查询。使用 Flux 语言,他们可以在查询级别组合不同的测量,同时在存储层中保持数据分离。

InfluxDB diagram

从此数据生成的仪表板包括各种信息,例如历史 SLI/SLO 数据和实时数据可视化。

Dashboards generated from data

结果

下图显示了构成 Red Hat 网络监控解决方案的不同组件和数据流。他们依靠 Ansible 来协调设备管理的网络自动化以及配置 Telegraf、Kapacitor 和 InfluxDB 实例。

The architecture diagram with components and data flows that comprise Red Hat network monitoring solution

由于高度自动化,此解决方案需要相对较少的人工干预,从而使支持工程师能够专注于关键问题,而不是管理单个设备和组件。InfluxDB 帮助为这些人提供尽可能广泛的数据,以馈送单一信息来源并促进自动化,从而提高实时监控能力。

有关 Red Hat 解决方案的更多详细信息,请阅读完整的案例研究