View a markdown version of this page

适用于 RabbitMQ 的亚马逊 MQ 的可配置存储最佳实践 - Amazon MQ
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)。

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

适用于 RabbitMQ 的亚马逊 MQ 的可配置存储最佳实践

亚马逊 MQ for RabbitMQ 经纪商使用亚马逊 Elastic Block Store (Amazon EBS) 进行永久存储。在取决于您的实例类型的范围内配置存储大小。随着时间的推移监控代理的磁盘使用情况,可以帮助您选择正确的存储大小,并避免阻止发布者的磁盘警报事件。

先决条件

可配置存储仅适用于满足以下要求的 Amazon MQ 的 RabbitMQ 经纪商:

  • 引擎版本 4.2 或更高版本。

  • 集群部署模式。

  • m7g仅限实例类型。

步骤 1:按实例类型配置存储范围

每种实例类型都支持特定范围的可配置存储大小。下表列出了每种实例类型可用的最小(默认)和最大存储大小。

实例类型 Minimum/Default 存储空间大小 (GB) 最大存储大小 (GB)
mq.m7g.medium 5 25
mq.m7g.large 15 75
mq.m7g.xlarge 25 125
mq.m7g.2xlarge 45 180
mq.m7g.4xlarge 90 250
mq.m7g.8xlarge 175 400
mq.m7g.12xlarge 260 500
mq.m7g.16xlarge 345 500

步骤 2:监控磁盘使用情况

要就存储大小做出明智的决定,请使用 Amazon CloudWatch 指标监控您的经纪商的磁盘使用情况。以下关键指标可帮助您了解磁盘使用模式:

RabbitMQDiskFree

每个节点 EBS 卷上可用的可用磁盘空间总量(以字节为单位)。

RabbitMQDiskFreeLimit

每个节点 EBS 卷的磁盘限制。当任何节点上的可用磁盘空间低于该值时,会触发磁盘警报,集群中的所有节点都会阻止传入的消息。

要监控磁盘使用情况,请执行以下操作:

  1. 打开 Amazon MQ 控制台并选择您的经纪商名称。

  2. 在 “操作” 下,选择 “查看指标”。

  3. 在经纪商指标下,选择RabbitMQDiskFree和RabbitMQDiskFreeLimit。

  4. 将时间范围设置为大约 2 周,以观察您的磁盘使用模式。

步骤 3:决定何时升级存储

监视RabbitMQDiskFree完RabbitMQDiskFreeLimit大约 2 周后,请按照以下指导来确定是否增加存储大小:

  • 无需执行任何操作 — RabbitMQDiskFree 仍远高RabbitMQDiskFreeLimit于预留空间 10 GB,并且使用量稳定。继续监控。

  • 考虑升级 — RabbitMQDiskFree 呈下降趋势,仅剩下大约 5 GB RabbitMQDiskFreeLimit。你有两个选择:

    • 增加可配置的存储大小。在您的实例类型的最大值内增加 EBS 卷大小(参见上表),以提供更多的磁盘空间。

    • 升级您的实例大小。迁移到更大的实例类型,这样可以支持更高的最大存储上限和其他资源优势。

重要

当RabbitMQDiskFreeLimit在任何节点上RabbitMQDiskFree掉到下方时,RabbitMQ 会发出磁盘警报 ()。RABBITMQ_DISK_ALARM此警报在整个集群范围内。如果任何节点低于限制,则所有节点都会阻止传入的消息。消费者仍然可以耗尽消息,但在可用空间恢复到超过限制之前,不接受任何新数据。

有关诊断和解决磁盘限制警报的步骤,请参阅 Amazon MQ 上的 RabbitMQ:磁盘限制警报。