配置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实例的告警规则。
- 登录管理控制台。
- 在管理控制台左上角单击,选择区域。
请选择Kafka实例所在的区域。
- 在管理控制台左上角单击,选择“应用中间件 > 分布式消息服务Kafka版”,进入分布式消息服务Kafka专享版页面。
- 在左侧导航栏单击“Kafka实例”,进入Kafka实例列表页面。
- 通过以下任意一种方法,进入监控页面。
- 在Kafka实例名称后,单击“查看监控数据”,进入云监控该实例的监控指标页面。
- 单击Kafka实例名称,进入实例详情页。在左侧导航栏单击“监控与告警 > 监控详情”,进入监控页面。
- 在实例监控指标页面中,找到需要创建告警的指标项,鼠标移动到指标区域,然后单击指标右上角的,跳转到创建告警规则页面。
- 在告警规则页面,设置告警信息。
创建告警规则操作,请查看创建告警规则。
开启一键告警
以下步骤指导您开启同一Region中所有Kafka实例关键指标的告警规则。
- 登录管理控制台。
- 在管理控制台左上角单击,选择区域。
请选择Kafka实例所在的区域。
- 在管理控制台左上角单击,选择“应用中间件 > 分布式消息服务Kafka版”,进入分布式消息服务Kafka专享版页面。
- 在左侧导航栏单击“Kafka实例”,进入Kafka实例列表页面。
- 单击Kafka实例名称,进入实例详情页。
- 在左侧导航栏选择“监控与告警 > 告警”,进入“一键告警”页面。
- 告警规则的默认状态为“关闭”,单击“前往CES配置一键告警”,跳转到云监控服务控制台的“一键告警”页面。
图2 一键告警
- 在顶部搜索框中单击鼠标左键,选择“资源类型”,然后在下拉框中勾选“分布式消息服务”,单击“确定”。
- 在“分布式消息服务”所在行,按,弹出“开启告警规则”对话框。
- 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分钟告警一次。
一键告警开启后,支持修改告警策略,具体请参考一键告警。
- 返回Kafka实例的“一键告警”页面,单击,查看告警规则的状态已变为“开启”。
该Kafka实例所在Region中如果存在其他Kafka实例,也会开启对应的告警规则。
查看Kafka实例告警规则
以下步骤指导您查询指定Kafka实例的所有告警规则。
- 登录管理控制台。
- 在管理控制台左上角单击,选择区域。
请选择Kafka实例所在的区域。
- 在管理控制台左上角单击,选择“管理与监管 > 云监控服务 CES”,进入云监控服务总览页面。
- 在左侧导航栏单击“云服务监控”,进入“云服务监控”页面。
- 在顶部搜索框中输入“分布式消息服务”,按Enter。
- 单击“分布式消息服务 DMS”,进入“资源详情”页签。
- 在待查看告警规则的Kafka实例所在行,单击“更多 > 查看告警规则”,弹出“查看告警规则”对话框,查看此Kafka实例的所有告警规则。