升級至新的主要版本

當資料庫的主要版本處於其使用期限 (EOL) 時,最好升級至現行主要版本。

在 IBM Cloud® Messages for RabbitMQ 型錄 頁面上,從 Cloud Databases CLI 外掛程式指令 ibmcloud cdb deployables-show 或透過 Cloud Databases API /deployables 端點,尋找 RabbitMQ 的可用版本。

透過將資料的備份 還原 至新版本,來升級新部署。 從備份還原有一些優點:

  • 原始部署會繼續執行,且正式作業工作可以不中斷。
  • 您可以在正式作業之外測試新資料庫,並處理任何應用程式不相容。
  • 可以隨時重新執行整個程序。
  • 全新還原可減少將舊版本不需要的構件帶入新部署的可能性。

或者,您也可以使用 RabbitMQ Shovel 來移轉至另一個版本。

在使用者介面中升級

從 _部署概觀_的 備份 標籤 還原備份 時,升級至新版本。 在備份上按一下 還原,以啟動對話框,您可以在其中選擇新部署的選項。 其中一個可配置選項是資料庫版本,它會自動移入可供您升級至的版本。 選取版本,然後按一下 還原,以啟動供應及還原程序。

透過 CLI 升級

若要透過 CLI 從備份升級及還原,請使用 ibmcloud resource service-instance-create 指令:

ibmcloud resource service-instance-create <service-name> <service-id> <service-plan-id> <region>

參數 service-name、service-id、service-plan-id 和 region 都是必要的。 您也可以在 JSON 物件中提供版本及備份 ID 參數給 -p。 如果您需要使用金鑰保護金鑰、調整部署大小或配置專用核心,則可以使用選用參數 key_protect_key、members_disk_allocation_mb、members_memory_allocation_mb 或 members_cpu_allocation_count,以及它們在要求內文中的個別值來執行此動作:

ibmcloud resource service-instance-create example-upgrade messages-for-rabbitmq standard us-south \
-p '{"backup_id": "crn:v1:bluemix:public:messages-for-rabbitmq:us-south:a/54e8ffe85dcedf470db5b5ee6ac4a8d8:1b8f53db-fc2d-4e24-8470-f82b15c71717:backup:06392e97-df90-46d8-98e8-cb67e9e0a8e6", "version":3.8}'

透過 API 升級

在使用資源控制器 API 從備份升級之前,請先完成 使用資源控制器 API 的必要步驟。

接下來,傳送 POST 要求給 API。 參數 name、target、resource_group 和 resource_plan_id 都是必要的。 您也可以提供 version 和 backup_id。 若要使用金鑰保護金鑰、調整部署大小或配置專用核心,請配置下列選用參數及其值: key_protect_key、members_disk_allocation_mb、members_memory_allocation_mb 或 members_cpu_allocation_count。

curl -X POST \
  https://resource-controller.bluemix.net/v2/resource_instances \
  -H 'Authorization: Bearer <>' \
  -H 'Content-Type: application/json' \
    -d '{
    "name": "my-instance",
    "target": "bluemix-us-south",
    "resource_group": "5g9f447903254bb58972a2f3f5a4c711",
    "resource_plan_id": "messages-for-rabbitmq-standard",
    "backup_id": "crn:v1:bluemix:public:messages-for-rabbitmq:us-south:a/54e8ffe85dcedf470db5b5ee6ac4a8d8:1b8f53db-fc2d-4e24-8470-f82b15c71717:backup:06392e97-df90-46d8-98e8-cb67e9e0a8e6",
    "version":3.9
  }'

使用 RabbitMQ Shovel 升級

在 RabbitMQ 版本升級期間,您可以使用鏟子將訊息從現行叢集移至新叢集。 如需相關資訊,請參閱 RabbitMQ Shovel。

疑難排解

如果在升級期間匯入定義時發生錯誤 Messages for RabbitMQ,請參閱 為何無法將定義從 Messages for RabbitMQ 3.9 版匯入至 3.11版?。