你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Azure Monitor 为 Prometheus 提供的托管服务的技术详细信息

Azure Monitor 和 Prometheus 概述了 Prometheus 的 Azure Monitor 托管服务。 本文提供有关该服务的其他技术详细信息。

服务限制和配额

Azure Monitor 中的 Prometheus 托管服务对数据导入设有默认限制和配额。 当达到引入限制时,可能会发生限制。 可以请求增加这些限制。 有关详细信息,请参阅 Azure Monitor 服务限制

局限性

以下限制适用于 Prometheus 的 Azure Monitor 托管服务:

  • 抓取和存储指标的最低频率为 1 秒。
  • 在节点更新期间,在群集级别收集器的某些指标集合中,你可能会遇到持续 1 到 2 分钟的间隙。 此差距是由 Azure Kubernete 服务的常规操作来更新群集中的节点造成的。 此行为不会影响推荐的警报规则。
  • 不自动启用适用于 Windows 节点的托管 Prometheus。 若要为群集中的 Windows 节点和 Pod 启用监视,请参阅启用 Windows 指标收集(预览版)

数据注意事项

存储在 Azure Monitor 工作区(包括 Prometheus 数据)中的数据根据 Azure 信任中心中所述的所有标准进行处理。 存在一些特定于此数据的注意事项:

  • 数据以物理方式存储在预配 Azure Monitor 工作区所在的同一区域中。
  • 使用Microsoft管理的密钥对静态数据进行加密。
  • 数据将保留 18 个月。

有关 Azure Monitor 托管的 Prometheus 服务对 PII/EUII 数据支持的详细信息,请参阅 Azure Monitor 和 Prometheus

事例敏感性

Azure Monitor 适用于 Prometheus 的托管服务是一个不区分大小写的系统。 如果字符串(例如指标名称、标签名称或标签值)与另一个时序的区别仅在于字符串的大小写,则它会将这些字符串视为相同的时序。

注释

此行为不同于本机开放源代码 Prometheus,因为后者是区分大小写的系统。 在 Azure 虚拟机、虚拟机规模集或 Azure Kubernetes 服务群集中运行的自托管 Prometheus 实例是区分大小写的系统。

在 Prometheus 的托管服务中,以下时序数据被视为相同:

diskSize(cluster="eastus", node="node1", filesystem="usr_mnt")
diskSize(cluster="eastus", node="node1", filesystem="usr_MNT")

前述示例是时序数据库中的单个时序。 请注意以下事项:

  • 任何针对它们引入的样本都会存储,如同它们是针对单个时间序列进行抓取或引入的一样。
  • 如果前述示例采用相同的时间戳引入,则会随机删除其中一个示例。
  • 存储在时间序列数据库中并通过查询返回的大小写不可预测。 同一时间序列可能在不同时间返回不同的大小写。
  • 通过不区分大小写的比较,可从时序数据库中检索查询中存在的任何指标名称或标签名称/值匹配器。 如果查询中存在区分大小写的匹配器,则在字符串比较中,会将其视为不区分大小写的匹配器。

最佳做法是使用统一的大小写来生成或抓取时间序列。

开源 Prometheus 会将前述示例视为两个不同的时序。 针对它们抓取或引入的任何样本都会单独进行存储。

避免重复时序

Prometheus 不支持重复的时序。 Azure 托管的 Prometheus 将这些作为 422 错误呈现给用户,而不是默默地删除重复的时间序列。 遇到这些错误的用户应采取措施以避免重复时序。

例如,如果用户为存储在不同资源组中的两个不同群集使用相同的“群集”标签值,但数据都被导入到同一个 AMW,则应将其中一个标签重命名以确保唯一性。 此错误仅在边缘情况下出现,在这种情况下,时间戳和值在这两个群集中都是相同的。

个人数据

使用 Azure Monitor 管理和托管 Prometheus 是为了存储有关客户计算机和应用程序服务运行状况的信息。 它不是为了存储任何个人数据。 确保不会将任何敏感信息(如用户名和信用卡号)发送到 Azure Monitor 托管的 Prometheus 字段,例如指标名称、标签名称或标签值。

指标名称、标签名称和标签值

指标抓取目前有下表中的限制:

资产 限度
标签名称长度 小于或等于 511 个字符。 如果作业中的任何时序超过此限制,整个抓取作业会失败,并且在引入之前会从该作业中删除指标。 可以看到该作业的 up=0,并且目标 Ux 也显示了 up=0 的原因。
标签值长度 小于或等于 1023 个字符。 如果作业中的任何时序超过此限制,整个抓取会失败,并且在引入之前会从该作业中删除指标。 可以看到该作业的 up=0,并且目标 Ux 也显示了 up=0 的原因。
每个时序的标签数 小于或等于 63。 如果作业中的任何时序超过此限制,整个抓取作业会失败,并且在引入之前会从该作业中删除指标。 可以看到该作业的 up=0,并且目标 Ux 也显示了 up=0 的原因。
度量值名称长度 小于或等于 511 个字符。 如果作业中的任何时序超过此限制,只会删除该特定时序。 MetricextensionConsoleDebugLog 包含已丢弃指标的跟踪。
具有不同大小写的标签名称 同一指标示例中两个具有不同大小写的标签将被视为具有重复标签,并在引入时被丢弃。 例如,时序 my_metric{ExampleLabel="label_value_0", examplelabel="label_value_1} 会因重复的标签而被删除,因为 ExampleLabelexamplelabel 被视为相同的标签名称。