

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

# 适用于 RabbitMQ 的亚马逊 MQ：经纪人无法升级到版本 4
<a name="troubleshooting-action-required-codes-rabbitmq-not-upgradeable-to-v4"></a>

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

此操作必需代码仅适用于 RabbitMQ 3 代理。要解决此状态并继续升级，请完成以下步骤。

## 诊断并解决 RABBITMQ\_BROKER\_NOT\_UPGRADEABLE\_TO\_V4
<a name="w2aac40c39b7"></a>

1. 使用 [Amazon MQ](https://github.com/amazon-mq/rabbitmq-queue-migration) 队列迁移工具将所有经典队列迁移到法定队列。该工具可通过 RabbitMQ Web 控制台（“**管理员” > “****队列迁移**”）或 HTTP API 进行访问。

1. 如果在代理上启用了 Khepri，则没有到 RabbitMQ 4 的就地升级路径。改为考虑 [RabbitMQ 的蓝绿色](https://www.rabbitmq.com/docs/blue-green-upgrade)部署。

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

**注意**  
您可以使用 [UpdateBroker](https://docs.aws.amazon.com/amazon-mq/latest/api-reference/brokers-broker-id.html#UpdateBroker)API 操作将代理引擎版本更新回 3.13 来清除`CRITICAL_ACTION_REQUIRED`状态。