Prometheus 采集 EMR 组件

最近更新时间:2024-10-25 18:18:01

我的收藏

操作场景

在使用 腾讯云弹性 MapReduce(以下简称 EMR)产品过程中,需要将 EMR 监控指标上报到 Prometheus 监控服务,可参考下文指引。下文将为您介绍如何快速采集 EMR 监控指标。

前提条件

已使用弹性 MapReduce (EMR) 并开启 Prometheus Exporter 功能,详情查看 弹性 MapReduce (EMR) 快速入门
使用与 EMR 相同的地域及私有网络 VPC,购买腾讯云 Prometheus 监控实例。可查看 Prometheus 监控服务支持的地域
说明:
Prometheus 监控服务 通过 EMR 节点内网地址采集监控指标,跨 VPC 采集需要先打通网络。
在网络相通的前提下,支持跨账号采集

操作步骤

2. 在左侧菜单栏中单击 Prometheus 监控服务。
3. 在 Prometheus 实例列表中,选择对应的 Prometheus 实例。
4. 进入实例详情页,单击数据采集 > 集成中心
5. 在集成中心找到并单击 EMR,即会弹出一个安装窗口,确认信息后点击保存即可。



6. 进入 EMR 控制台,点击集群的 ID/名称 > 实例信息,获取 EMR 集群所在地域、EMR 实例 ID。



7. 在 EMR 填写任务配置(Yaml 格式)。按下图红框依次填写任务名、EMR 集群所在地域、EMR 实例 ID。
说明:
地域填写格式可以参见 开服地域 的地域说明,例如:ap-guangzhou
实例 ID 支持填写多个。
relabel_configs 配置参见 抓取配置说明




支持指标

Prometheus 监控服务支持所有 EMR 指标,详细指标列表可参见 EMR 集群监控指标

如何正确判断服务异常

EMR 的 service_status 指标在服务异常或者用户手动停止时都会显示0,无法正确区分异常服务。因为 EMR 无法直接提供服务异常的指标,只能判断用户是否手动停止。Prometheus 监控服务根据服务是否手动停止的信息,新增 emr_additional_service_status 指标,与 service_status 指标组合可用于区分异常服务,值为 0 表示服务异常:
(service_status{} * on(instance_id, host, type) group_left() (emr_additional_service_status{} == 1))