Upgrade auf neue übergeordnete Version durchführen

Sobald eine Hauptversion das Ende des Lebenszyklus (EOL, End Of Life) erreicht hat, sollten Sie ein Upgrade auf eine aktuelle Hauptversion durchführen.

Suchen Sie die verfügbaren Versionen von RabbitMQ auf der Seite IBM Cloud® Messages for RabbitMQ Katalog, über den Cloud Databases CLI-Plug-in-Befehl ibmcloud cdb deployables-show oder über die Cloud Databases API /deployables-Endpunkt.

Führen Sie ein Upgrade Ihrer neuen Implementierung durch, indem Sie eine Sicherung Ihrer Daten in der neuen Version wiederherstellen. Die Wiederherstellung einer Sicherung weist eine Reihe von Vorteilen auf:

  • Die Ausführung der Originalbereitstellung wird fortgesetzt und die Produktionsarbeit wird nicht unterbrochen.
  • Sie können die neue Datenbank aus der Produktion heraus testen und auf eine etwaige Inkompatibilität von Anwendungen reagieren.
  • Der gesamte Prozess kann an jedem beliebigen Punkt erneut ausgeführt werden.
  • Durch die aktuelle Wiederherstellung verringert sich die Wahrscheinlichkeit, dass nicht benötigte Artefakte der älteren Version auf die neue Bereitstellung übertragen werden.

Alternativ können Sie RabbitMQ Shovel auch für die Migration auf eine andere Version verwenden.

Upgrade über die Benutzerschnittstelle

Führen Sie ein Upgrade auf eine neue Version durch, wenn Sie auf der Registerkarte Sicherungen Ihrer _Implementierungsübersicht_eine Sicherung wiederherstellen. Klicken Sie bei einer Sicherung auf Wiederherstellen, um ein Dialogfeld aufzurufen, in dem Sie Optionen für die neue Implementierung auswählen können. Eine der konfigurierbaren Optionen ist die Datenbankversion, die automatisch mit den Versionen gefüllt wird, auf die Sie ein Upgrade durchführen können. Wählen Sie eine Version aus und klicken Sie auf Wiederherstellen, um den Prozess zum Wiederherstellen und Einrichten zu starten.

Upgrade über die Befehlszeilenschnittstelle

Verwenden Sie den Befehl ibmcloud resource service-instance-create, um ein Upgrade und eine Wiederherstellung von einer Sicherung über die Befehlszeilenschnittstelle durchzuführen:

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

Die Parameter service-name, service-id, service-plan-id und region sind erforderlich. Geben Sie auch -p mit den Parametern für Version und Sicherungs-ID in einem JSON-Objekt an. Wenn Sie einen Key Protect-Schlüssel verwenden, die Größe der Bereitstellung ändern oder dedizierte Kerne zuordnen müssen, können Sie dies mit den optionalen Parametern key_protect_key, members_disk_allocation_mb, members_memory_allocation_mb oder members_cpu_allocation_count zusammen mit den entsprechenden Werten für den Hauptteil der Anforderung tun:

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}'

Upgrade über die Anwendungsprogrammierschnittstelle

Führen Sie die erforderlichen Schritte aus, um die Ressourcencontroller-API zu verwenden, bevor Sie sie für ein Upgrade von einem Backup verwenden.

Senden Sie als Nächstes eine POST-Anforderung an die API. Die Parameter name, target, resource_group und resource_plan_id sind erforderlich. Sie geben auch version und backup_id an. Um einen Key Protect-Schlüssel zu verwenden, die Größe der Bereitstellung zu ändern oder dedizierte Kerne zuzuordnen, konfigurieren Sie die folgenden optionalen Parameter und ihre Werte: key_protect_key, members_disk_allocation_mb, members_memory_allocation_mb oder 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
  }'

Upgrade mit RabbitMQ Shovel

Sie können eine Schaufel verwenden, um Nachrichten während eines RabbitMQ-Versionsupgrades aus einem aktuellen Cluster in einen neuen Cluster zu verschieben. Weitere Informationen finden Sie unter RabbitMQ Shovel.

Fehlerbehebung

Wenn beim Importieren von Definitionen während eines Upgrades von Messages for RabbitMQFehler auftreten, finden Sie weitere Informationen unter Why ca I import definitions from Messages for RabbitMQ version 3.9 auf Version 3.11?.