View a markdown version of this page

适用于 RabbitMQ 的亚马逊 MQ:代理无法升级到版本 4 - Amazon MQ
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)。

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

适用于 RabbitMQ 的亚马逊 MQ:代理无法升级到版本 4

当您尝试将 RabbitMQ 3 代理升级到 RabbitMQ 4 且该代理有经典队列或启用了 Khepri 元数据存储功能标志时,适用于 RabbitMQ 的 Amazon MQ 将引发需要RABBITMQ_BROKER_NOT_UPGRADEABLE_TO_V4操作的代码。Amazon MQ 不会应用主要版本升级,并将使经纪人可供发布和消费。

此操作要求代码仅适用于 RabbitMQ 3 经纪商。要解决此状态并继续升级,请完成以下步骤。

诊断和解决 RABBITMQ_BROKER_NOT_UPGRADEABLE_TO_V4

  1. 使用 Amazon MQ 队列迁移工具将所有经典队列迁移到法定队列。该工具可通过 RabbitMQ 网络控制台(管理员 > 队列迁移)或 HTTP API 进行访问。

  2. 如果在代理上启用了Khepri,则没有到RabbitMQ 4的就地升级路径。改为考虑 RabbitMQ 的蓝绿色部署。

在您解决了潜在问题后,Amazon MQ 会自动清除该状态。CRITICAL_ACTION_REQUIRED

注意

您可以使用 UpdateBroker API 操作将代理引擎版本更新回 3.13 来清除CRITICAL_ACTION_REQUIRED状态。