本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Amazon Managed Service for Prometheus 服务配额
以下两个部分介绍了与 Amazon Managed Service for Prometheus 相关的配额和限制。
服务配额
Amazon Managed Service for Prometheus 的限额如下。适用于 Prometheus 的亚马逊托管服务提供使用率指标来监控 Prometheu CloudWatch s 的资源使用情况。使用亚马逊 CloudWatch 使用指标警报功能,您可以监控 Prometheus 的资源和使用情况,以防止出现限制错误。
随着项目和工作区增长,您应监控或请求增加的最常见配额是:每个工作区的活跃系列数和每个工作区的摄取率。
对于所有可调整配额,您可以通过选择可调整列中的链接或请求增加配额
每个工作区的活跃系列限制是动态应用的。有关更多信息,请参阅 活跃系列默认配额。每个工作区的摄取率配额决定了您将数据摄入到工作区的速度。有关更多信息,请参阅 摄取节流。
注意
除非另有说明,否则这些限额适用于每个工作区。每个工作区的活跃系列的最大值为十亿。
| Name | 默认值 | 可调整 | 说明 |
|---|---|---|---|
| 每个工作区具有元数据的活动指标 | 每个受支持的区域:2 万个 | 否 | 每个工作区具有元数据的独特活动指标数量。注:如果达到限制,则会记录指标样本,但会丢弃超过限制的元数据。 |
| 每个工作区的活跃系列数 | 每个受支持的区域:5000 万个 | 是 |
每个工作区的独特活跃序列数(最多可达 10 亿个)。如果在过去 2 小时内报告了样本,则该序列处于活动状态。2 M 到 50 M 的容量会自动根据最近 30 分钟的使用情况进行调整。 |
| 警报管理器定义文件中的警报聚合组大小 | 每个受支持的区域:1000 个 | 是 |
警报管理器定义文件中的警报聚合组的最大大小。group_by 的每个标签值组合都会创建一个聚合组。 |
| 警报管理器定义文件大小 | 每个受支持的区域:1000000 个 | 否 | 警报管理器定义文件的最大大小(以字节为单位)。 |
| 警报管理器中的警报有效载荷大小 | 每个受支持的区域:2000 万个 | 否 | 每个工作区所有警报管理器警报的最大警报负载大小,以字节为单位。警报大小取决于标签和注释。 |
| 警报管理器中的警报 | 每个受支持的区域:1,000 个 | 是 |
每个工作区中并发警报管理器警报的最大数量。 |
| HA 追踪器集群 | 每个受支持的区域:500 个 | 否 | HA Tracker 将针对每个工作区摄取样本所跟踪的最大集群数。 |
| 每个工作区的摄取率 | 每个支持的区域:1,666,666 | 是 |
每个工作区每秒的指标样本摄取率。该限制会自动调整为每个工作空间活动系列限制的 1/30,最高为 1,666,666。 |
| 警报管理器定义文件中的抑制规则 | 每个受支持的区域:100 个 | 是 |
警报管理器定义文件中最大的抑制规则数。 |
| 标签大小 | 每个受支持的区域:7 个 | 否 | 一个序列接受的所有标签和标签值的最大组合大小(以 KB 为单位)。 |
| LabelSet 每个工作空间的限制 | 每个受支持的区域:100 个 | 是 |
每个工作区可以创建的标签集最大数量限制。 |
| 每个指标系列的标签数 | 每个支持的区域:150 个 | 是 |
每个指标序列的标签数。 |
| 元数据长度 | 每个受支持的区域:1 个 | 否 | 指标元数据接受的最大长度(以 KB 为单位)。元数据指的是指标名称、类型、单位和帮助文本。 |
| 每个指标的元数据 | 每个受支持的区域:10 个 | 否 | 每个指标的元数据数 注:如果达到限制,则会记录指标样本,但会丢弃超过限制的元数据。 |
| 警报管理器路由树中的节点 | 每个受支持的区域:100 个 | 是 |
警报管理器路由树中的最大节点数。 |
| 每个区域的 API 操作数(以每秒事务数为单位) | 每个受支持的区域:10 个 | 是 |
所有 Amazon P APIs rometheus 托管服务每区域每秒执行的最大 API 操作数,包括工作空间 APIs CRUD、 APIs标记、规则组命名 APIs空间 CRUD 和警报管理器定义 CRUD。 APIs |
| 每个工作空间的 GetSeries、 GetLabels 和 GetMetricMetadata API 操作数(以每秒事务数为单位) | 每个受支持的区域:10 个 | 否 | 每个工作空间每秒的最大数量 GetSeries GetLabels 和 GetMetricMetadata 兼容 Prometheus 的 API 操作。 |
| 每个工作空间的 QueryMetrics API 操作数(以每秒事务数为单位) | 每个受支持的区域:300 个 | 否 | 每个工作空间每秒可执行的最大 QueryMetrics 兼容 Prometheus 的 API 操作数。 |
| 每个工作空间的 RemoteWrite API 操作数(以每秒事务数为单位) | 每个受支持的区域:3000 个 | 否 | 每个工作空间每秒可执行的最大 RemoteWrite 兼容 Prometheus 的 API 操作数。 |
| 每个工作区中与 Prometheus 兼容的其他 API 操作数(以每秒事务数为单位) | 每个受支持的区域:100 个 | 否 | 所有其他兼容 Prometheus 的工作区每秒的最大 API 操作数, APIs 包括、等 ListAlerts ListRules |
| 即时查询的查询字节数 | 每个受支持的区域:5 个 | 否 | 单个即时查询能扫描的最大字节数(以 GB 为单位)。 |
| 范围查询的查询字节数 | 每个受支持的区域:5 个 | 否 | 单个范围查询中每 24 小时能扫描的最大字节数(以 GB 为单位)。 |
| 查询样本 | 每个受支持的区域:5000 万个 | 否 | 在单个范围查询或单个即时查询中,每 24 小时间隔可以扫描的最大样本数。 |
| 已提取的查询序列 | 每个受支持的区域:1,200 万个 | 否 | 在单个范围查询或单个即时查询中,每 24 小时间隔可以扫描的最大序列数。 |
| 查询时间范围(以天为单位) | 每个支持的区域:95 | 否 | QueryMetrics、 GetSeries和的最大时间范围 GetLabels APIs。 |
| 请求大小 | 每个受支持的区域:1 个 | 否 | 摄取或查询的最大请求大小(以 MB 为单位)。 |
| 规则评估间隔 | 每个受支持的区域:30 个 | 是 |
每个工作区中一个规则组的最小规则评估间隔(以秒为单位)。 |
| 规则组命名空间定义文件大小 | 每个受支持的区域:1000000 个 | 否 | 一个规则组命名空间定义文件的最大大小(以字节为单位)。 |
| 每个工作区的规则数 | 每个受支持的区域:2,000 个 | 是 |
每个工作区的最大规则数。 |
| 每个工作区的静默数 | 每个受支持的区域:1,000 个 | 是 |
每个工作区的最大静默数,包括已过期、活动和待处理的静默。 |
| 警报管理器定义文件中的模板数 | 每个受支持的区域:100 个 | 是 |
警报管理器定义文件中的最大模板数。 |
| 每个账户每个区域的工作区数 | 每个受支持的区域:25 个 | 是 |
每个区域的工作区最大数量。 |
活跃系列默认配额
Amazon Managed Service for Prometheus 工作区会自动根据您的摄取使用量进行调整。随着使用量增加,该服务将自动增加时间序列容量,直至达到默认配额。
Amazon Managed Service for Prometheus 工作区会根据使用量自动扩展,方式有两种:
-
当 30 分钟平均使用量低于 500 万个系列时,容量将翻一番(例如,使用量为 350 万的工作区获得 700 万的容量)。
-
当使用量超过 500 万个系列时,工作区会增加 1000 万的缓冲区(例如,使用量为 2500 万的工作区将获得 3500 万容量)。
Amazon Managed Service for Prometheus 会随着摄取量增加自动分配更多容量,直至您的配额。这有助于确保您的工作负载不会持续受到节流。但是,如果与过去 30 分钟内计算出的先前基准值相比增加了一倍或超过 1000 万,则可能会出现节流。为避免节流,Amazon Managed Service for Prometheus 建议在增加到超过之前的基准值时逐渐增加摄入量。
注意
活跃时间序列的最小容量为 200 万,并且当序列少于 200 万时没有节流。
要超出其默认配额,您可以请求增加配额
扩展到超出默认配额
当您请求将配额增加到超过默认活跃系列配额时,Amazon Managed Service for Prometheus 会相应地调整您的工作区容量。如果您没有充分利用增加的容量,该服务将随着时间推移收回未使用的部分。随着使用量增长,工作区将再次自动纵向扩展。
但是,如果活跃时间序列比过去 2 小时计算的上一个基准值增加了一倍以上或超过 5000 万个,则可能会发生节流。例如:
-
如果配额为 1 亿,而基准值为 3000 万,则可以在 2 小时内纵向扩展到 6000 万,而不会发生节流。
-
如果配额为 1 亿,而基准值为 5000 万,则可以在 2 小时内纵向扩展到整 1 亿,而不会发生节流。
摄取节流
Amazon Managed Service for Prometheus 会根据您当前的限制对每个工作区的摄取量进行节流。这有助于保持工作区的性能。如果你超过了限制,你将在 CloudWatch 指标DiscardedSamples中看到(并附上rate_limited原因)。您可以使用 CloudWatch 监控您的摄取量,也可以创建警报,在接近限制限制时向您发出警报。有关更多信息,请参阅 使用 CloudWatch 指标监控亚马逊托管服务的 Prometheus 资源。
Amazon Managed Service for Prometheus 使用令牌存储桶算法
每摄取一个数据样本,就会从存储桶中移除一个令牌。如果您的存储桶大小(每个工作区的摄取率)为 1000000,那么您的工作区可以在一秒钟内摄取一百万个数据样本。如果要摄取的样本超过一百万个,就会被节流,不再摄取任何记录。其他数据样本将被丢弃。
存储桶会以设定的速率自动重填。如果存储桶的容量低于其最大容量,则每秒都会向其添加一定数量的令牌,直到其达到最大容量。如果重填令牌到达时存储桶已满,令牌就会被丢弃。存储桶中的令牌数量不能超过其最大数量。样本摄取的重填速率由每个工作区的摄取速率限制来设置。如果将每个工作区的摄取速率设置为 170,000,则存储桶的重填速率为每秒 170,000 个令牌。
如果您的工作区在一秒钟内摄取 1,000,000 个数据样本,您的存储桶就会立即缩减为零令牌。然后,存储桶中每秒重填 170,000 个令牌,直至达到其 1,000,000 个令牌的最大容量。如果不再进行摄取,则之前空的存储桶将在 6 秒钟内恢复到最大容量。
注意
摄取以批处理请求的方式进行。如果您有 100 个可用令牌,却发送了包含 101 个样本的请求,那么整个请求都会被拒绝。Amazon Managed Service for Prometheus 不部分接受请求。如果您正在编写收集器,则可以管理重试(使用较小的批次或在一段时间后重试)。
在工作区摄取更多数据样本之前,您无需等待存储桶填满。您可以在令牌被添加到存储桶时使用这些令牌。如果您立即使用重填令牌,存储桶就不会达到最大容量。例如,如果您耗尽了存储桶,您可以继续每秒摄取 170,000 个数据样本。只有当每秒摄取的数据样本少于 170,000 个时,存储桶才能重填到最大容量。
摄取数据的额外限制
Amazon Managed Service for Prometheus 对摄取到工作区的数据有以下额外要求。这些不可调整。
-
超过 1 小时的指标样本会拒绝摄取。
-
每个样本和元数据都必须有一个指标名称。