文档文档

抓取和发现

使用 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 开源版本现已发布公开 Alpha 版

InfluxDB 3 开源版本现已可用于 Alpha 测试,根据 MIT 或 Apache 2 许可获得许可。

我们正在发布两个产品作为 Alpha 版本的一部分。

InfluxDB 3 Core 是我们新的开源产品。它是一个用于时间序列和事件数据的最新数据引擎。InfluxDB 3 Enterprise 是一个商业版本,它建立在 Core 的基础上,增加了历史查询功能、读取副本、高可用性、可扩展性和细粒度的安全性。

有关如何入门的更多信息,请查看