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

使用托管 Prometheus 为 Azure 容器存储启用监视(预览版)

现在可以使用托管 Prometheus 监视在 Azure 容器存储服务上运行的有状态工作负载。 Prometheus 是一种常用的开源监视和警报解决方案,在 Kubernetes 环境中广泛使用,用于针对基础结构和工作负载性能进行监视和发出警报。

适用于 Prometheus 的 Azure Monitor 托管服务Azure Monitor 指标的一个组件,它为运行 Prometheus 提供完全托管的且可缩放的环境。 它用于从 Azure Kubernetes 服务 (AKS) 群集收集 Prometheus 指标,以监视工作负载。

Prometheus 指标存储在 Azure Monitor 工作区中,你可以在其中使用带 PromQL 的 Azure Monitor 指标资源管理器(预览版)Azure 托管 Grafana 分析和可视化数据。

先决条件和限制

此预览版功能仅支持适用于 Prometheus 的 Azure Monitor 托管服务。 如果你已部署自己的 Prometheus 实例,则必须通过运行以下 Azure CLI 命令来禁用 Azure 容器存储的 Prometheus 实例。 将 <cluster_name><resource_group_name> 替换为自己的值。

az k8s-extension update --cluster-type managedClusters --cluster-name <cluster_name> --resource-group <resource_group_name> --name azurecontainerstorage --config base.metrics.enablePrometheusStack=false

当前没有为 Azure 容器存储启用 Azure 托管 Grafana 默认仪表板支持。

收集 Azure 容器存储 Prometheus 指标

可以使用适用于 Prometheus 的 Azure Monitor 托管服务从 AKS 群集收集 Azure 容器存储指标和其他 Prometheus 指标。 若要开始收集 Azure 容器存储指标,请在 AKS 群集上启用托管 Prometheus。 如果 AKS 群集已启用 Prometheus,则在该群集上安装 Azure 容器存储将自动开始收集 Azure 容器存储指标。

抓取频率

所有默认目标和抓取的默认抓取频率为 30 秒。

为默认目标收集的指标

以下 Azure 容器存储目标会默认启用,这意味着无需为这些目标提供任何擦除作业配置:

  • acstor-capacity-provisioner(存储池指标)
  • acstor-metrics-exporter(磁盘指标)

可以使用托管 Prometheus ConfigMap 为默认目标自定义数据收集。 请参阅在 Azure Monitor 中自定义 Prometheus 指标的抓取

存储池指标

Azure 容器存储提供从 acstor-capacity-provisioner 目标 (job=acstor-capacity-provisioner) 收集的以下存储池指标:

指标 描述
storage_pool_ready_state 这是检测存储池状态的仪表指标(0 = 未就绪,1 = 已就绪)。
storage_pool_capacity_provisioned_bytes 预配的存储池容量(以字节为单位)。
storage_pool_capacity_used_bytes 从预配的存储池容量中使用的存储池容量(以字节为单位)。
storage_pool_snapshot_capacity_reserved_bytes 为存储本地快照而保留的存储池容量(以字节为单位)。

磁盘指标

Azure 容器存储提供从 acstor-metrics-exporter 目标 (job=acstor-metrics-exporter) 收集的以下存储池指标:

指标 描述
disk_pool_ready_state 这是检测磁盘池状态的仪表指标(0 = 未就绪,1 = 已就绪)。
disk_read_operations_completed_total 在磁盘上成功执行的磁盘读取操作总数。
disk_write_operations_completed_total 在磁盘上成功执行的磁盘写入操作总数。
disk_read_operations_time_seconds_total 执行读取操作所用的总时间(以秒为单位)。
disk_write_operations_time_seconds_total 执行写入操作所用的总时间(以秒为单位)。
disk_errors_total 磁盘错误计数。
disk_read_bytes_total 成功读取的总字节数。
disk_written_bytes_total 成功写入的总字节数。
disk_readonly_errors_gauge 这是用于度量只读卷装载的仪表指标。

查询 Azure 容器存储指标

Azure 容器存储指标存储在与托管 Prometheus 关联的 Azure Monitor 工作区中。 可以直接从工作区或通过连接到工作区的 Azure 托管 Grafana 实例查询指标。

若要查看 Azure 容器存储指标,请执行以下步骤:

  1. 登录Azure 门户并导航到 AKS 群集。

  2. 从服务菜单中,在“监视”下,选择“见解”,然后选择“监视设置”。

    屏幕截图显示了如何在 Azure 门户中查找“监视设置”。

  3. 在“托管 Prometheus”下,选择相应的 Azure Monitor 工作区实例。 在实例概述页上,选择“指标”部分,并查询所需的指标。

    屏幕截图显示了如何使用 Azure 门户查询 Azure 容器存储指标。

  4. 另外,你还可以选择托管 Grafana 实例,然后在实例概述页上单击终结点 URL。 这会导航到 Grafana 门户,可在其中查询指标。 将自动为你配置数据源,以便从关联的 Azure Monitor 工作区查询指标。

    Azure 托管 Prometheus 仪表板和指标浏览器的屏幕截图。

若要详细了解如何从 Azure Monitor 工作区查询 Prometheus 指标,请参阅将适用于 Prometheus 的 Azure Monitor 托管服务用作 Grafana 的数据源

后续步骤