本章节主要介绍部分监控指标的告警策略,以及配置操作。在实际业务中,建议按照以下告警策略,配置监控指标的告警规则。
表1 RabbitMQ实例配置告警的指标
指标名称 告警策略 指标说明 解决方案 内存高水位状态 告警阈值:原始值>=1
连续触发次数:1
告警级别:致命
告警阈值为1表示触发内存高水位,会阻塞消息生产
加快消费
采用生产者确认的发送模式,并监控生产端消息生产速度和时长,当消息生产时长有明显增加时进行流控措施
磁盘高水位状态 告警阈值:原始值>=1
连续触发次数:1
告警级别:致命
告警阈值为1表示触发磁盘高水位,会阻塞消息生产
减少惰性队列的消息堆积
减少持久化队列的消息堆积
删除队列
内存使用率 告警阈值:原始值>业务预期使用率(推荐30%)
连续触发次数:连续3~5个周期
告警级别:重要
该指标需要分别为每个节点设置内存使用率告警,避免触发内存高水位阻塞生产
加快消费
采用生产者确认的发送模式,并监控生产端消息生产速度和时长,当消息生产时长有明显增加时进行流控措施
CPU使用率 告警阈值:原始值>业务预期使用率(推荐70%)
连续触发次数:连续3~5个周期
告警级别:重要
该指标需要分别为每个节点设置CPU使用率告警,CPU使用率过高可能会影响生产速度
减少镜像队列个数
对于集群实例,建议扩容节点个数,然后进行节点间重平衡
可消费消息数 告警阈值:原始值>业务预期可消费消息数
连续触发次数:1
告警级别:重要
可消费消息数过多表示消息堆积 请参考消息堆积的解决办法 未确认消息数 告警阈值:原始值>业务预期未确认消息数
连续触发次数:1
告警级别:重要
未确认消息数过多可能会导致消息堆积
检查消费者是否异常
检查消费者逻辑是否消耗时间过长
连接数 告警阈值:原始值>业务预期连接数
连续触发次数:1
告警级别:重要
连接数突增可能是流量变大的预警 需检查业务是否正常,可参考其他告警 通道数 告警阈值:原始值>业务预期通道数
连续触发次数:1
告警级别:重要
通道数突增可能是流量变大的预警 需检查业务是否正常,可参考其他告警 Erlang进程数 告警阈值:原始值>业务预期进程数
连续触发次数:1
告警级别:重要
进程数突增可能是流量变大的预警 需检查业务是否正常,可参考其他告警
说明
告警阈值请根据业务预期数设置。例如,业务预期使用率35%,则告警阈值设置35%。
连续触发次数和告警级别可根据业务逻辑自行调整。
操作步骤
步骤 1 登录管理控制台。
步骤 2 在管理控制台右上角单击,选择区域。
说明此处请选择RabbitMQ实例所在的区域。
步骤 3 在管理控制台左上角单击,选择“企业中间件”->“分布式消息服务”->“RabbitMQ专享版”,进入分布式消息服务RabbitMQ专享版页面。
步骤 4 通过以下任意一种方法,查看监控数据。
- 在RabbitMQ实例名称后,单击“查看监控数据”。跳转到云监控页面,查看实例、节点和队列的监控数据,数据更新周期为1分钟。
- 单击RabbitMQ实例名称,进入实例详情页。在左侧导航栏单击“监控”,进入监控页面,查看实例、节点和队列的监控数据,数据更新周期为1分钟。
步骤 5 在实例监控指标页面中,找到需要创建告警的指标项,鼠标移动到指标区域,然后单击指标右上角的,进入“创建告警规则”页面。
步骤 6 在告警规则页面,设置告警信息。
创建告警规则操作,请查看《云监控服务用户指南》的创建告警规则和告警通知。
- 设置告警名称和告警的描述。
- 设置告警策略和告警级别。
例如,在进行指标监控时,如果连续3个周期,连接数原始值超过设置的值,则产生告警,如果未及时处理,则每一天发送一次告警通知。
- 设置“发送通知”开关。当开启时,设置告警生效时间、产生告警时通知的对象以及触发的条件。
- 单击“立即创建”,等待创建告警规则成功。