Amazon MQ for RabbitMQ:磁盘限制警报 - Amazon MQ
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Amazon MQ for RabbitMQ:磁盘限制警报

磁盘限制警报表明,由于添加新消息时未消耗大量消息,RabbitMQ 节点使用的磁盘量有所减少。当由 Amazon CloudWatch 指标 RabbitMQDiskFree 标识的代理的可用磁盘空间达到由 RabbitMQDiskFreeLimit 标识的磁盘限制时,RabbitMQ 将引发磁盘限制警报。RabbitMQDiskFreeLimit 由 Amazon MQ 设置,是在考虑了每种代理实例类型的可用磁盘空间的情况下定义的。

引发磁盘限制警报的 Amazon MQ for RabbitMQ 代理将变得不可用于所发布的新消息。在集群中运行 RabbitMQ 时,磁盘警报是集群范围的。如果一个节点变得低于限制,则所有其他节点都将阻止传入的消息。由于缺少磁盘空间,代理可能还会遇到其他使警报诊断和解决复杂化的问题。

Amazon MQ 在遇到磁盘警报时不会重新启动代理,并且将会在该代理继续引发警报时返回 RebootBroker API 操作异常。

注意

您不能将代理从 mq.m5 实例类型降级为 mq.t3.micro 实例类型。如果您想降级,则必须删除代理并创建新的代理。

诊断和解决磁盘限制警报

默认情况下,Amazon MQ 将会为您的代理启用指标。您可以通过访问 Amazon CloudWatch 控制台或者通过使用 CloudWatch API 查看您的代理指标MessageCount 是诊断 RabbitMQ 磁盘限制警报时的有用指标。消息在被使用或丢弃之前一直存储在内存中。高消息计数表示磁盘存储空间过度使用,而可能导致磁盘警报。

要诊断磁盘限制警报,请使用 Amazon MQ 管理控制台执行以下操作:

  • 使用发布到队列的消息。

  • 清除队列中的消息。

  • 删除代理中的队列。

注意

在您采取必要的操作后,RABBITMQ_DISK_ALARM 状态可能需要几个小时才能清除。

为防止磁盘限制警报再次发生,您可以将主机实例类型升级为具有其他资源的实例。有关如何更新代理的实例类型的信息,请参阅《Amazon MQ REST API 参考》中的 UpdateBrokerInput