全部产品
Search
文档中心

云原生数据仓库AnalyticDB:PromQL资源组运维管理

更新时间:May 21, 2026

本文介绍PromQL资源组在生产环境中的运维与精细化使用,包括按负载规划资源、理解多租户数据组织、使用VM UI与VM集群监控排查问题、修改参数与扩缩容,以及常见错误的处理方法。

资源规划

PromQL资源组由四类节点组成,每类节点的规格和数量需要在创建时一并规划。ACU是AnalyticDB for MySQL的计算计量单位,1 ACU等于1 vCPU + 4 GB内存

不同负载下的推荐配置示例如下,您可以参考所选场景的配置作为起点,再按下方表格的规则进行调整:

  • 功能验证 / PoC:四类节点均采用最小规格(存储 / 写入 / 查询节点各4 ACU、认证节点1 ACU),节点数量采用系统默认值(存储3 / 写入2 / 查询2 / 认证2),存储磁盘500 GB。总ACU为30,可承载约80万 samples/s 的写入吞吐。

  • 中等生产负载(活跃series ≤ 100万、写入速率 ≤ 5000样本/秒):存储节点8 ACU × 3、写入节点8 ACU × 2、查询节点8 ACU × 2 并分配1 TB缓存盘、认证节点1 ACU × 2。

  • 大规模负载:根据峰值写入QPS和活跃series数线性扩展存储节点与写入节点;查询节点根据并发数和缓存命中率调整规格与缓存盘容量。

各类节点的可选规格与扩容时机如下:

节点

可选规格

规划建议

存储节点

4 / 8 / 16 / 32 / 64 / 128 ACU

当数据量或活跃series增长、磁盘水位接近上限时,建议扩容存储节点的规格、数量或磁盘空间。

存储节点的数据磁盘使用ESSD云盘,按GB为单位分配。单节点磁盘容量可按以下公式估算:

单节点磁盘空间 ≈ 保留期(天) × 每秒样本数 × 1.3 字节 ÷ 存储节点数。

写入节点

4 / 8 / 16 / 32 / 64 / 128 ACU

当写入QPS或样本量增长、写入出现抖动时,建议扩容规格或增加节点数量。

查询节点

4 / 8 / 16 / 32 / 64 / 128 ACU

当查询并发或大范围扫描增多时,建议扩容规格或增加节点数量;如需进一步加速重复查询,可为查询节点分配缓存盘。

认证节点(Auth)

1 ACU(固定)

当客户端并发量增加导致认证压力上升时,建议增加节点数量。

数据组织与多租户

PromQL资源组对外提供一套统一的指标库。您只需关注指标名称(metric)与标签(labels),无需关注底层的租户切分。但VictoriaMetrics协议要求在URL中指定租户ID,理解其行为可避免数据写入成功但查询不到的问题。

默认租户

PromQL资源组的控制台、VM UI与默认查询入口均绑定到租户ID0。所有写入与查询URL都应使用/insert/0/.../select/0/...,否则数据虽然落盘,但在控制台和VM UI中不可见。

常见误用:写入非0租户后查询为空

VictoriaMetrics引擎对任意accountID(例如/insert/1/...)都会按需自动创建租户并接收写入,HTTP返回204,不会报错。但是:

  • 从默认查询入口/select/0/...查询时,无法看到这些数据。

  • VM UI与控制台的VM集群监控中,这些数据也不会被统计。

  • 数据虽然真实存在于vmstorage中,但从用户视角看起来如同丢失。

重要

客户端写入路径中的租户ID段必须固定为0。如果使用vmagent等中间件转发,请确认其remoteWrite.url中包含/insert/0/

多业务隔离方案

针对多业务、多环境、多团队场景,PromQL资源组推荐以下隔离方案:

隔离强度

方案

适用场景

逻辑隔离(推荐)

同一资源组内,使用metric名称与labels区分业务、环境与集群。

label设计建议:使用appservice区分业务系统,env区分环境(prod / staging),clusterregion区分集群或地域。

避免将业务标签塞进metric名称(例如order_request_total),建议统一为request_total{app="orderservice"},便于跨业务聚合。

多业务共用一套监控底座,跨业务统一看板,运维成本最低。

物理隔离

在同一AnalyticDB for MySQL实例下创建多个PromQL资源组。

需要计费独立、SLA独立、容量配额独立。

环境隔离

不同环境(生产 / 测试)使用不同资源组。

避免测试流量影响生产查询性能。

使用VM UI

VM UI是VictoriaMetrics内置的可视化查询界面,无需自建Grafana即可执行PromQL查询与问题排查。访问入口与登录方式参见快速使用PromQL资源组。VM UI主要功能页如下:

页面

用途

Query

输入PromQL执行即时查询,结果支持表格、图表、JSON三种视图。

Explore > Metrics

浏览所有已写入的指标名称。

Cardinality Explorer

按label维度分析数据基数,定位高基数标签。

Top Queries

查看最耗时或最频繁的查询,用于性能优化。

查看VM集群监控

控制台为每个PromQL资源组提供开箱即用的运维监控仪表盘。在资源组管理列表中,单击目标PromQL资源组操作列的VM集群监控,即可在抽屉中查看以下内容:

  • 实时统计:Total datapoints、Ingestion rate、Read requests、Active series、Disk space usage、Available CPU / Memory、Bytes per point等关键指标。

  • 集群组件状态:按pod_type(storage / select / insert)分组展示每类节点的运行情况与版本号。

  • 趋势图:Uptime、Datapoints ingestion rate、Requests rate等折线图,支持调整时间范围。

  • VM Auth子页:单独查看认证节点的请求量与错误率。

所有vm_*自监控指标对外暴露,您可以将PromQL资源组接入自有的Grafana或告警系统,实现自身监控闭环。

修改参数

在资源组详情面板的参数配置区块,单击右上角的修改配置,可调整以下参数:

参数

默认值

说明

insert.maxConcurrentInserts

32

写入节点的最大并发写入数。

select.cacheDataPath

/cache

查询节点的缓存数据路径,位于缓存盘上。

common.replicationFactor

2

数据副本数,保障存储节点故障时不丢数据。

storage.dedup.minScrapeInterval

15s

去重的最小抓取间隔,相同时间戳的样本仅保留最新值。

common.retentionPeriod

15d

数据保留周期。支持单位hdwy,例如90d表示保留90天。

说明

修改参数将触发对应节点的滚动重启,期间写入与查询可能出现短暂抖动,建议在业务低峰期操作。如需导出当前完整参数文件,可单击下载配置

节点扩缩容

在详情面板的节点配置表中,单击对应节点行的修改,可调整以下项:

  • 节点规格:在 4 / 8 / 16 / 32 / 64 / 128 ACU 之间切换(认证节点固定为1 ACU)。

  • 节点数量

  • 单节点磁盘空间:仅存储节点支持调整。

扩缩容期间集群整体保持可用,单个节点重启时其请求将自动路由到其他健康节点,但可能出现短暂的性能波动,建议在业务低峰期操作。

常见问题

写入或查询返回HTTP 400 unsupported path requested

URL路径中缺少/prometheus/段。集群版协议要求写入路径为/insert/0/prometheus/api/v1/...,查询路径为/select/0/prometheus/api/v1/...

返回HTTP 401 Unauthorized

账号或密码错误,请到资源组详情面板重新复制管理员凭证;或客户端使用了https://前缀,端口8427仅支持HTTP,请改为http://

写入返回204但查询无数据

  • 索引延迟:写入后1~2秒索引才可见,稍候重试即可。

  • 租户ID错误:本产品的默认租户ID固定为0,请检查URL中/insert/<租户ID>/段是否为0。详情参见常见误用:写入非0租户后查询为空

连接超时

  • 客户端来源IP是否已加入实例白名单。

  • 所用地址与客户端网络位置是否匹配:使用VPC地址要求客户端与实例位于同一VPC内,跨VPC使用VPC地址也会连接超时;客户端在阿里云外或不同VPC时,必须开通并使用公网地址。

  • 访问URL是否使用了http://前缀和端口8427

如何延长数据保留期

在参数配置中将common.retentionPeriod调整为目标值,例如180d表示保留180天。修改后会触发节点滚动重启。延长保留期会增加历史数据占用的磁盘空间,请同时评估是否需要扩容存储节点的磁盘容量。

如何释放资源组以停止计费

在资源组列表中,单击目标PromQL资源组操作列的更多菜单,选择释放。释放后资源组与其中的所有指标数据都会被删除,且无法恢复。释放操作提交后立即停止计费,按已用时长(不满1小时按1小时)结算。