文档文档

抓取和发现

通过 Kapacitor 的发现和抓取功能,可以从远程目标的动态列表中拉取数据。将这些功能与 TICKscript 结合使用,以监控目标、处理数据并将数据写入 InfluxDB。目前,Kapacitor 仅支持 Prometheus 风格的目标。

注意:抓取和发现目前处于技术预览阶段。后续版本中配置和行为可能会发生更改。

内容

概述

下图概述了使用 Kapacitor 发现和抓取数据的基础设施。

图像 1 – 抓取和发现工作流程

configuration-open
  1. 首先,Kapacitor 实施发现过程以识别您基础设施中的可用目标。它定期请求该信息,并从授权机构接收该信息。在图中,授权机构告知 Kapacitor 三个目标:ABC
  2. 接下来,Kapacitor 实施抓取过程以从现有目标拉取指标数据。它定期运行抓取过程。在此,Kapacitor 从目标 ABC 请求指标。在 ABC 上运行的应用程序在其 HTTP API 上公开一个 /metrics 端点,该端点返回特定于应用程序的统计信息。
  3. 最后,Kapacitor 根据配置的 TICKscript 处理数据。使用 TICKscript 来筛选、转换和对指标数据执行其他任务。此外,如果应存储数据,请配置 TICKscript 以将其发送到 InfluxDB

推送与拉取指标

通过将发现与抓取相结合,Kapacitor 使指标收集基础设施能够从目标拉取指标,而不是要求它们将指标推送到 InfluxDB。在目标可能具有短暂生命周期的动态环境中,拉取指标具有多个优势。

配置抓取器和发现器

单个抓取器从单个发现器抓取目标。配置抓取器和发现器归结为分别配置每个抓取器和发现器,然后告知抓取器关于发现器的信息。

以下是抓取器的所有配置选项。

示例 1 – 抓取器配置

[[scraper]]
  enabled = false
  name = "myscraper"
  # ID of the discoverer to use
  discoverer-id = ""
  # The kind of discoverer to use
  discoverer-service = ""
  db = "mydb"
  rp = "myrp"
  type = "prometheus"
  scheme = "http"
  metrics-path = "/metrics"
  scrape-interval = "1m0s"
  scrape-timeout = "10s"
  username = ""
  password = ""
  bearer-token = ""
  ssl-ca = ""
  ssl-cert = ""
  ssl-key = ""
  ssl-server-name = ""
  insecure-skip-verify = false

可用的发现器

Kapacitor 支持以下服务进行发现

名称描述
azure发现托管在 Azure 中的目标。
consul使用 Consul 服务发现来发现目标。
dns通过 DNS 查询发现目标。
ec2发现托管在 AWS EC2 中的目标。
file-discovery发现文件中列出的目标。
gce发现托管在 GCE 中的目标。
kubernetes发现托管在 Kubernetes 中的目标。
marathon使用 Marathon 服务发现来发现目标。
nerve使用 Nerve 服务发现来发现目标。
serverset使用 Serversets 服务发现来发现目标。
static-discovery静态列出目标。
triton使用 Triton 服务发现来发现目标。

有关配置每个发现器的详细信息,请参阅示例 配置文件


此页是否对您有帮助?

感谢您的反馈!


Flux 的未来

Flux 即将进入维护模式。您可以继续像现在这样使用它,而无需对您的代码进行任何更改。

阅读更多

现已全面上市

InfluxDB 3 Core 和 Enterprise

快速启动。更快扩展。

获取更新

InfluxDB 3 Core 是一个开源、高速、近数据引擎,可实时收集和处理数据,并将其持久化到本地磁盘或对象存储。InfluxDB 3 Enterprise 以 Core 的基础为构建,增加了高可用性、读取副本、增强的安全性以及数据压缩,从而实现更快的查询和优化的存储。InfluxDB 3 Enterprise 的免费层级可供非商业家用或业余爱好者使用。

更多信息,请查看