Mise à niveau vers une nouvelle version principale
Une fois que la fin de vie d'une version principale d'une base de données est atteinte, il est recommandé d'effectuer une mise à niveau vers une version principale en cours.
Recherchez les versions disponibles de RabbitMQ sur la page IBM Cloud® Messages for RabbitMQ le catalogue, à partir de la Cloud Databases commande
de plug-in d'interface de ligne de commande ibmcloud cdb deployables-show ou via l' Cloud Databases API Noeud final /deployables.
Mettez à niveau votre nouveau déploiement en restaurant une sauvegarde de vos données dans la nouvelle version. La restauration à partir d'une sauvegarde présente un certain nombre d'avantages :
- Le déploiement d'origine continue à s'exécuter sans que le travail de production soit interrompu.
- Vous pouvez tester la nouvelle base de données hors production et prendre des mesures concernant les incompatibilités liées aux applications.
- L'ensemble du processus peut être réexécuté à tout moment.
- Une nouvelle restauration réduit la probabilité de transférer des artefacts de l'ancienne version qui ne sont plus nécessaires vers le nouveau déploiement.
Vous pouvez également utiliser RabbitMQ Shovel pour migrer vers une autre version.
Mise à niveau via l'interface utilisateur
Effectuez une mise à niveau vers une nouvelle version lors de la restauration d'une sauvegarde à partir de l'onglet Sauvegardes de votre Présentation du déploiement. Cliquez sur Restaurer sur une sauvegarde pour ouvrir une boîte de dialogue dans laquelle vous pouvez choisir les options du nouveau déploiement. L'une des options configurables est la version de la base de données, qui est remplie automatiquement avec les versions disponibles vers lesquelles vous pouvez effectuer la mise à niveau. Sélectionnez une version et cliquez sur Restaurer pour démarrer le processus de mise à disposition et de restauration.
Mise à niveau via l'interface de ligne de commande
Pour mettre à niveau et restaurer à partir de la sauvegarde via l'interface de ligne de commande, utilisez la commande ibmcloud resource service-instance-create:
ibmcloud resource service-instance-create <service-name> <service-id> <service-plan-id> <region>
Les paramètres service-name, service-id, service-plan-id et region sont tous obligatoires. Vous fournissez également l'option -p avec les paramètres de version et d'ID de sauvegarde
dans un objet JSON. Si vous devez utiliser une clé de protection de clé, redimensionner le déploiement ou allouer des coeurs dédiés, vous pouvez le faire avec les paramètres facultatifs key_protect_key, members_disk_allocation_mb,
members_memory_allocation_mb ou members_cpu_allocation_count, ainsi que leurs valeurs respectives dans le corps de la demande:
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}'
Mise à niveau via l'API
Effectuez les étapes nécessaires pour utiliser l'API du contrôleur de ressources avant de l'utiliser pour effectuer une mise à niveau à partir d'une sauvegarde.
Ensuite, envoyez à l'API une demande POST. Les paramètres name, target, resource_group et resource_plan_id sont tous obligatoires. Vous fournissez également les données version et backup_id. Pour utiliser une clé de protection de clé, redimensionner le déploiement ou allouer des coeurs dédiés, configurez les paramètres facultatifs suivants et leurs valeurs: key_protect_key, members_disk_allocation_mb,
members_memory_allocation_mb ou 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
}'
Mise à niveau à l'aide de RabbitMQ Shovel
Vous pouvez utiliser une pelle pour déplacer des messages d'un cluster en cours vers un nouveau cluster lors d'une mise à niveau de la version RabbitMQ. Pour plus d'informations, voir RabbitMQ Shovel.
Traitement des incidents
Si vous rencontrez des erreurs lors de l'importation de définitions lors d'une mise à niveau de Messages for RabbitMQ, voir Pourquoi ne puis-je pas importer des définitions depuis Messages for RabbitMQ version 3.9 vers la version 3.11?.