Nginx 和 Cortex 集成

强大的性能和简单的集成,由 InfluxData 构建的开源数据连接器 Telegraf 提供支持。

info

对于大规模实时查询,这不是推荐的配置。为了进行查询和压缩优化、高速摄取和高可用性,您可能需要考虑 Nginx 和 InfluxDB

50 亿+

Telegraf 下载量

#1

时间序列数据库
来源:DB Engines

10 亿+

InfluxDB 下载量

2,800+

贡献者

目录

强大的性能,无限的扩展能力

收集、组织和处理海量高速数据。当您将任何数据视为时间序列数据时,它会更有价值。InfluxDB 是排名第一的时间序列平台,旨在通过 Telegraf 进行扩展。

查看入门方法

输入和输出集成概述

Telegraf 的 Nginx 插件旨在收集来自 Nginx Web 服务器的状态指标,从而提供对服务器运行指标的实时洞察。

此插件使 Telegraf 能够使用 Prometheus remote write 协议将指标发送到 Cortex,从而可以无缝地摄取到 Cortex 的可扩展、多租户时间序列存储中。

集成详情

Nginx

此插件收集来自 Nginx 的状态指标。它利用 ngx_http_stub_status_module 模块来收集与服务器性能相关的基本指标。该插件提供了对活动连接、已处理请求以及各种指标当前状态的宝贵见解。这种实时数据对于监控 Web 服务器性能和确保最佳运行至关重要。配置允许用户指定 Nginx 状态端点的 URL、设置超时以及在必要时配置 TLS 设置。

Cortex

借助 Telegraf 的 HTTP 输出插件和 prometheusremotewrite 数据格式,您可以将指标直接发送到 Cortex,这是一个水平可扩展的、用于 Prometheus 的长期存储后端。Cortex 支持多租户,并接受使用 Prometheus protobuf 格式的 remote write 请求。通过使用 Telegraf 作为收集代理和 Remote Write 作为传输机制,组织可以将可观测性扩展到 Prometheus 本身不支持的来源(例如 Windows 主机、支持 SNMP 的设备或自定义应用程序指标),同时利用 Cortex 的高可用性和长期保留功能。

配置

Nginx

[[inputs.nginx]]
  ## An array of Nginx stub_status URI to gather stats.
  urls = ["http://localhost/server_status"]

  ## Optional TLS Config
  # tls_ca = "/etc/telegraf/ca.pem"
  # tls_cert = "/etc/telegraf/cert.pem"
  # tls_key = "/etc/telegraf/key.pem"
  ## Use TLS but skip chain & host verification
  # insecure_skip_verify = false

  ## HTTP response timeout (default: 5s)
  response_timeout = "5s"

Cortex

[[outputs.http]]
  ## Cortex Remote Write endpoint
  url = "http://cortex.example.com/api/v1/push"

  ## Use POST to send data
  method = "POST"

  ## Send metrics using Prometheus remote write format
  data_format = "prometheusremotewrite"

  ## Optional HTTP headers for authentication
  # [outputs.http.headers]
  #   X-Scope-OrgID = "your-tenant-id"
  #   Authorization = "Bearer YOUR_API_TOKEN"

  ## Optional TLS configuration
  # tls_ca = "/path/to/ca.pem"
  # tls_cert = "/path/to/cert.pem"
  # tls_key = "/path/to/key.pem"
  # insecure_skip_verify = false

  ## Request timeout
  timeout = "10s"

输入和输出集成示例

Nginx

  1. Web 性能监控:使用 Nginx 插件从基础设施中的各种 Nginx 服务器收集性能指标。通过在实时仪表板中可视化这些指标,团队可以跟踪性能趋势、识别瓶颈并增强其 Web 应用程序的用户体验。实施此类监控使企业能够在其影响最终用户之前主动解决性能问题。

  2. 负载均衡器监控:将此插件与您的负载均衡器集成,以跟踪后端 Nginx 服务器的性能。通过收集“活动连接”和“已处理请求”等统计信息,您的运营团队可以确保流量以最佳方式流动,并且没有单个服务器过载。这种主动的负载均衡方法可以防止服务停机并增强用户体验。

  3. 自动化警报系统:将 Nginx 插件与警报服务结合使用,以便在服务器的指标超出预定义阈值时自动通知您的团队。例如,如果活动连接数过高,系统可以触发警报,以便立即采取纠正措施,从而保持服务质量和可靠性。

  4. 历史数据分析:将 Nginx 插件收集的指标存储在时间序列数据库中,以分析历史性能趋势。此分析可以揭示高流量或性能不佳的时期,从而为有关基础设施扩展和优化的数据驱动决策提供依据。通过了解过去的趋势,组织可以更好地为未来的需求做好准备。

Cortex

  1. 统一多租户监控:使用 Telegraf 从不同团队或环境收集指标,并将它们推送到带有单独 X-Scope-OrgID 标头的 Cortex。这实现了每个租户的隔离数据摄取和查询,非常适合托管服务和平台团队。

  2. 将 Prometheus 覆盖范围扩展到边缘设备:在边缘或物联网设备上部署 Telegraf 以收集系统指标,并将它们发送到集中的 Cortex 集群。这种方法确保了即使在没有本地 Prometheus 抓取器的环境中也能保持一致的可观测性。

  3. 具有联邦租户的全球服务可观测性:通过配置 Telegraf 代理将数据推送到区域 Cortex 集群(每个集群都标记有租户标识符)来聚合来自全球基础设施的指标。Cortex 处理跨区域的重复数据删除和集中访问。

  4. 自定义应用程序遥测管道:通过 Telegraf 的 exechttp 输入插件收集特定于应用程序的遥测数据,并将其转发到 Cortex。这使 DevOps 团队能够以可扩展、查询高效的格式监控特定于应用程序的 KPI,同时保持指标按租户或服务逻辑分组。

反馈

感谢您成为我们社区的一份子!如果您有任何一般性反馈或在这些页面上发现了任何错误,我们欢迎并鼓励您提出意见。请在 InfluxDB 社区 Slack 中提交您的反馈。

强大的性能,无限的扩展能力

收集、组织和处理海量高速数据。当您将任何数据视为时间序列数据时,它会更有价值。InfluxDB 是排名第一的时间序列平台,旨在通过 Telegraf 进行扩展。

查看入门方法

相关集成

HTTP 和 InfluxDB 集成

HTTP 插件从一个或多个 HTTP(S) 端点收集指标。它支持各种身份验证方法和数据格式的配置选项。

查看集成

Kafka 和 InfluxDB 集成

此插件从 Kafka 读取消息,并允许基于这些消息创建指标。它支持各种配置,包括不同的 Kafka 设置和消息处理选项。

查看集成

Kinesis 和 InfluxDB 集成

Kinesis 插件允许从 AWS Kinesis 流中读取指标。它支持多种输入数据格式,并提供带有 DynamoDB 的检查点功能,以实现可靠的消息处理。

查看集成