更新时间:2024-12-12 GMT+08:00
分享

配置Kafka监控告警

本章节主要介绍部分监控指标的告警策略,以及配置操作。在实际业务中,建议按照以下告警策略,配置监控指标的告警规则。

表1 Kafka实例的告警策略和处理建议

指标ID

指标名称

测量对象

告警策略

指标说明

告警处理建议

broker_disk_usage

磁盘容量使用率

节点

告警阈值:原始值>80%

连续触发次数:1

告警级别:紧急

该指标为从Kafka节点虚拟机层面采集的磁盘容量使用率。

出现该告警时,需要修改实例存储空间。具体操作,请参考变更实例规格

broker_cpu_core_load

CPU核均负载

节点

告警阈值:原始值>2

连续触发次数:3

告警级别:重要

该指标为从Kafka节点虚拟机层面采集的CPU每个核的平均负载。

出现该告警时,先检查该监控是否长期处于接近或超过告警阈值状态,如果是,需要修改实例基准带宽/代理个数,即扩节点。具体操作,请参考变更实例规格

broker_memory_usage

内存使用率

节点

告警阈值:原始值>90%

连续触发次数:3

告警级别:紧急

该指标为Kafka节点虚拟机层面采集的内存使用率。

出现该告警时,需要修改实例基准带宽/代理个数,即扩节点。具体操作,请参考变更实例规格

current_partitions

分区数

实例

告警阈值:原始值>分区数上限的90%,不同实例规格分区数上限不同,具体参考产品规格

连续触发次数:1

告警级别:重要

该指标用于统计Kafka实例中已经使用的分区数量。

出现该告警时,如果业务后续还需要新增Topic,则需要修改实例基准带宽/代理个数或将业务拆分至多个实例。修改实例基准带宽/代理个数的具体操作,请参考变更实例规格

broker_cpu_usage

CPU使用率

节点

告警阈值:原始值>90%

连续触发次数:3

告警级别:重要

统计Kafka节点虚拟机的CPU使用率。

出现该告警时,先检查该监控是否长期处于接近或超过告警阈值状态,如果是,需要修改实例基准带宽/代理个数,即扩节点。具体操作,请参考变更实例规格

group_msgs

堆积消息数

实例

告警阈值:原始值>积压上限的90%,积压上限由您根据业务实际情况设定

连续触发次数:1

告警级别:重要

该指标用于统计Kafka实例中所有消费组中总堆积消息数。

出现该告警时,首先排查是否有闲置消费组,如果有,则删除。其次,可以考虑加快消费速度,例如增加组内消费者数量等。

topic_messages_remained

队列可消费消息数

消费组

告警阈值:原始值>积压上限的90%,积压上限由您根据业务实际情况设定

连续触发次数:1

告警级别:重要

该指标用于统计消费组指定队列可以消费的消息个数。

出现该告警时,首先排查消费者代码逻辑是否有误,例如消费者出现了异常不再消费等。其次,可以考虑加快消息的消费,例如增加队列消费者,并确保分区数大于或等于消费者数。

配置Kafka告警规则

以下步骤指导您配置指定Kafka实例的告警规则。

  1. 登录管理控制台。
  2. 在管理控制台左上角单击,选择区域。

    请选择Kafka实例所在的区域。

  3. 在管理控制台左上角单击,选择“应用中间件 > 分布式消息服务Kafka版”,进入分布式消息服务Kafka专享版页面。
  4. 在左侧导航栏单击“Kafka实例”,进入Kafka实例列表页面。
  5. 通过以下任意一种方法,进入监控页面。

    • 在Kafka实例名称后,单击“查看监控数据”,进入云监控该实例的监控指标页面。
    • 单击Kafka实例名称,进入实例详情页。在左侧导航栏单击“监控与告警 > 监控详情”,进入监控页面。

  6. 在实例监控指标页面中,找到需要创建告警的指标项,鼠标移动到指标区域,然后单击指标右上角的,跳转到创建告警规则页面。
  7. 在告警规则页面,设置告警信息。

    创建告警规则操作,请查看创建告警规则

    1. 设置告警名称和告警的描述。
    2. 设置告警策略。

      如下图所示,在进行指标监控时,如果连续1次,磁盘容量使用率原始值>=80%,则产生告警,如果未及时处理,则产生告警通知。

      图1 设置告警策略
    3. 设置“发送通知”开关。

      当开启时,设置通知方式和不同方式对应的通知参数。

    4. 单击“立即创建”,等待创建告警规则成功。

开启一键告警

以下步骤指导您开启同一Region中所有Kafka实例关键指标的告警规则。

  1. 登录管理控制台。
  2. 在管理控制台左上角单击,选择区域。

    请选择Kafka实例所在的区域。

  3. 在管理控制台左上角单击,选择“应用中间件 > 分布式消息服务Kafka版”,进入分布式消息服务Kafka专享版页面。
  4. 在左侧导航栏单击“Kafka实例”,进入Kafka实例列表页面。
  5. 单击Kafka实例名称,进入实例详情页。
  6. 在左侧导航栏选择“监控与告警 > 告警”,进入“一键告警”页面。
  7. 告警规则的默认状态为“关闭”,单击“前往CES配置一键告警”,跳转到云监控服务控制台的“一键告警”页面。

    图2 一键告警

  8. 在顶部搜索框中单击鼠标左键,选择“资源类型”,然后在下拉框中勾选“分布式消息服务”,单击“确定”。
  9. 在“分布式消息服务”所在行,按,弹出“开启告警规则”对话框。
  10. Kafka实例包含2个预先设定的告警规则,详情参见表2,请根据实际需求开启对应的告警规则开关,单击“确定”。

    图3 开启告警规则
    表2 告警规则详情

    告警规则名称

    维度

    告警策略

    alarm-dms-kafka_broker-metric-defaulth

    实例

    • 分区数原始值如果连续3个周期>=750个,触发重要告警,每天告警一次。
    • 主题数原始值如果连续3个周期>=200个,触发重要告警,每天告警一次。
    • 消息堆积数原始值如果连续3个周期>=100000000个,触发重要告警,每天告警一次

    alarm-dms-kafka_instance_id-metric-default

    节点

    • 磁盘平均写操作耗时原始值如果连续3个周期>5000ms,触发紧急告警,每10分钟告警一次。
    • 磁盘平均读操作耗时原始值如果连续3个周期>5000ms,触发紧急告警,每10分钟告警一次。
    • 消费请求平均处理时长原始值如果连续3个周期>60000ms,触发重要告警,每小时告警一次。
    • JVM堆内存使用率原始值如果连续3个周期>85%,触发紧急告警,每10分钟告警一次。
    • 磁盘容量使用率原始值如果连续3个周期>85%,触发紧急告警,每10分钟告警一次。
    • CPU使用率原始值如果连续3个周期>85%,触发紧急告警,每10分钟告警一次。
    • 节点存活状态原始值如果连续3个周期<1,触发紧急告警,每10分钟告警一次。
    • 内存使用率原始值如果连续3个周期>85%,触发紧急告警,每10分钟告警一次。

    一键告警开启后,支持修改告警策略,具体请参考一键告警

  11. 返回Kafka实例的“一键告警”页面,单击,查看告警规则的状态已变为“开启”。

    该Kafka实例所在Region中如果存在其他Kafka实例,也会开启对应的告警规则。

查看Kafka实例告警规则

以下步骤指导您查询指定Kafka实例的所有告警规则。

  1. 登录管理控制台。
  2. 在管理控制台左上角单击,选择区域。

    请选择Kafka实例所在的区域。

  3. 在管理控制台左上角单击,选择“管理与监管 > 云监控服务 CES”,进入云监控服务总览页面。
  4. 在左侧导航栏单击“云服务监控”,进入“云服务监控”页面。
  5. 在顶部搜索框中输入“分布式消息服务”,按Enter。
  6. 单击“分布式消息服务 DMS”,进入“资源详情”页签。
  7. 在待查看告警规则的Kafka实例所在行,单击“更多 > 查看告警规则”,弹出“查看告警规则”对话框,查看此Kafka实例的所有告警规则。

相关文档