跳到主要内容
版本:3.9.x

配置遥测数据传输

数据面(DP)定期向控制面(CP)上报运行指标,以支持集中监控、告警和控制台图表。遥测数据采用 prometheus 格式,包括 API 流量、请求延迟、HTTP 状态码、带宽和连接数。

默认情况下,数据面每 15 秒上报一次遥测数据,并启用 Gzip 压缩。此配置由控制面管理,控制面会将其发送给所有已连接的网关组。

配置遥测​

在控制台的配置中设置遥测参数。控制台将参数存入控制面数据库,并通过配置下发给已连接的数据面。

如果通过 Helm 部署,请在 api7/api7ee3 发布版本的配置值文件中,将参数放在 dashboard_configuration 下:

cp-values.yaml
dashboard_configuration:
telemetry:
enable: true
interval: 15
max_metrics_size: 33554432
metrics_batch_size: 4194304
compression_level: -1

以上参数的含义如下:

  1. enable:是否定期向控制面上传指标。
  2. interval:两次上传尝试之间的最短间隔,单位为秒。
  3. max_metrics_size:未压缩指标累计到此阈值后,不再生成新的批次;剩余指标会被截断。默认值为 32 MB。
  4. metrics_batch_size:每次上传请求的未压缩数据目标大小。指标行不会被拆开,因此实际批次可能略大于此值。该值不能超过 max_metrics_size;默认值为 4 MB。
  5. compression_level:Gzip 压缩级别,取值范围为 -1 到 9;默认值 -1 使用压缩库的默认级别。

如果通过 Docker Compose 或软件包部署,请将同一 telemetry 配置块放在控制台配置文件的顶层:

Dashboard configuration
telemetry:
enable: true
interval: 15
max_metrics_size: 33554432
metrics_batch_size: 4194304
compression_level: -1

应用控制面配置变更后,重启或滚动更新控制台。控制台会更新已存储的遥测设置;如果已存储的值发生变化,还会提高所有网关组的配置版本,使已连接的数据面通过正常的配置同步收到新设置。数据面无需单独重启。

应在每个控制台副本上设置相同的遥测参数。若某个副本启动时使用不同的值,它可能覆盖数据库中存储的全局配置。

不要只在已连接网关的本地 config.yaml 中配置 api7ee.telemetry。控制面下发的配置优先于该本地配置块,下一次配置更新可能覆盖本地值。

选择压缩级别​

Gzip 压缩可以降低遥测传输的网络开销。压缩级别决定 CPU 使用量与数据大小之间的取舍:

级别说明特点
-1压缩库默认值通常为 6 级,兼顾两者
0不压缩压缩所需 CPU 最少,传输数据最大
1最快压缩压缩 CPU 使用量较低,压缩率较低
6均衡压缩压缩 CPU 使用量和数据大小适中
9最大压缩压缩工作量最高,通常数据最小

大多数部署可保留默认级别 -1。只有在使用具有代表性的配置和流量测量网关 CPU 使用量及压缩后数据大小后,才选择其他级别;结果取决于所收集指标的数量和内容。

停止上传遥测数据​

如需停止所有已连接数据面向控制面传输遥测数据,请在控制面配置中将 enable 设为 false:

cp-values.yaml
dashboard_configuration:
telemetry:
enable: false

对于基于配置文件的部署,请改为在控制台配置文件的顶层设置:

Dashboard configuration
telemetry:
enable: false

应用变更并重启或滚动更新控制台。确认已连接的网关组收到新的配置版本,且控制台中不再出现新的流量指标。停止上传不会关闭网关配置同步或网关健康状态上报,也不会影响单独启用的 Prometheus 端点。外部监控系统只有在该端点及其监听器或 Service 暴露已配置且可访问时,才能继续抓取网关指标。

停止上传遥测数据的影响

停止上传遥测数据会明显影响运维:

影响详情
控制台分析流量、延迟、状态码、带宽和连接数视图不再接收新的数据面指标。
基于指标的告警依赖已上传网关指标的告警策略不再收到新样本;依赖其他状态的控制面告警仍可继续运行。
运维可见性容量规划和故障排查必须使用其他指标路径,例如直接抓取 Prometheus 指标。

停止上传前,请确保其他监控路径能够满足运维和合规需求。

备注

这些遥测报告仅从数据面发送到它所连接的控制面。此设置不控制其他外部集成。

后续步骤​