新規メジャー・バージョンへのアップグレード

データベースのメジャー・バージョンが製品寿命 (EOL) に達した場合は、最新のメジャー・バージョンにアップグレードすることをお勧めします。

IBM Cloud® Messages for RabbitMQ カタログ ページ、 Cloud Databases CLI プラグイン・コマンド ibmcloud cdb deployables-show、または Cloud Databases API /deployables エンドポイント を使用して、 RabbitMQ の使用可能なバージョンを見つけます。

データの バックアップを新しいバージョンにリストア して、新しいデプロイメントをアップグレードします。 バックアップからのリストアには、以下のようないくつかの利点があります。

  • 元のデプロイメントが実行されたままなので、実動作業を中断せずに実行できる。
  • 実動とは別に新規データベースをテストして、アプリケーションの非互換性がないかを確認できる。
  • 任意の時点でプロセス全体をやり直すことができる。
  • 新規の状態でリストアされるので、古いバージョンに存在する不必要な成果物が新しいデプロイメントに持ち越される可能性が減る。

あるいは、 RabbitMQ Shovel を使用して別のバージョンにマイグレーションすることもできます。

UI でのアップグレード

_「デプロイメントの概要」_の 「バックアップ」 タブから バックアップをリストアする ときに、新規バージョンにアップグレードします。 バックアップで 「リストア」 をクリックすると、新規デプロイメントのオプションを選択できるダイアログ・ボックスが表示されます。 構成可能なオプションの 1 つに、アップグレード先として使用可能なバージョンが自動的に取り込まれるデータベース・バージョンがあります。 バージョンを選択して**「復元」**をクリックすると、プロビジョンとリストアのプロセスが開始されます。

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 はすべて必須です。 また、-p に、バージョンとバックアップ ID のパラメーターを JSON オブジェクトで指定してください。 鍵保護鍵を使用する必要がある場合、デプロイメントをサイズ変更する必要がある場合、または専用コアを割り振る必要がある場合は、オプション・パラメーター 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 を使用するために必要なステップ を実行します。

次に、API に POST 要求を送信します。 パラメーターの name、target、resource_group、resource_plan_id はすべて必須です。 version および backup_id も指定します。 Key Protect 鍵の使用、デプロイメントのサイズ変更、または専用コアの割り振りを行うには、オプション・パラメーター 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 バージョンのアップグレード中に、shovel を使用してメッセージを現行クラスターから新規クラスターに移動できます。 詳しくは、 RabbitMQ Shovelを参照してください。

トラブルシューティング

Messages for RabbitMQのアップグレード中に定義のインポートでエラーが発生した場合は、 「 Messages for RabbitMQ バージョン 3.9 からバージョン 3.11に定義をインポートできないのはなぜですか?」を参照してください。