Passer au contenu

Comment résoudre les problèmes de mise à niveau d’Aurora compatible avec MySQL ?

Lecture de 6 minute(s)
0

Je souhaite résoudre les erreurs qui s’affichent lorsque j'utilise un déploiement bleu/vert pour mettre à niveau ma base de données Amazon Aurora édition compatible avec MySQL.

Brève description

Si vous utilisez un déploiement bleu/vert pour mettre à niveau une base de données Aurora compatible avec MySQL, votre déploiement peut indiquer « Configuration non valide » pour l'état de la mise à niveau. Pour obtenir plus d'informations sur ce problème, consultez les journaux et événements de l'instance d’enregistreur pour le message suivant :

« Failed to provision due to upgrade incompatibilities. »

Pour résoudre ce problème, essayez les étapes de dépannage suivantes.

Résolution

Préparer le déploiement bleu/vert

Pour réduire les problèmes liés à votre déploiement bleu/vert, appliquez les bonnes pratiques suivantes pour préparer le déploiement :

  • Consultez la matrice de compatibilité des versions d'Aurora MySQL pour vous assurer que vous pouvez mettre à niveau votre version actuelle vers la version cible avec un déploiement bleu/vert. Pour plus d'informations, consultez la section Vérification des numéros de version d'Aurora MySQL.
  • Évaluez la capacité de votre application à gérer de brèves interruptions pendant le basculement. Vous pouvez également implémenter une logique de nouvelle tentative de connexion dans votre code d’application pour faciliter le processus de basculement. Pour plus d'informations, consultez la section Bonnes pratiques générales pour les déploiements bleu/vert.
  • Vérifiez tous les paramètres de configuration pour vous assurer que votre version actuelle est compatible avec la version cible.
  • Créez une sauvegarde de votre base de données actuelle pour vous assurer de pouvoir revenir en arrière si nécessaire.

Exécuter le déploiement bleu/vert

Au cours de votre déploiement, effectuez les tâches suivantes :

  • Utilisez les métriques Amazon CloudWatch, Amazon EventBridge et Logs pour suivre la progression de la mise à niveau.
  • Si vous effectuez une mise à niveau vers une version mineure plus récente au sein de la même version majeure, utilisez la fonction de mise à niveau sur place sur le cluster vert. Cette fonctionnalité vous permet d'accéder à la dernière version du correctif avant de terminer le processus de basculement.
  • Une fois que vous avez vérifié que l'environnement vert est prêt et que le cluster vert ne présente aucun retard de réplication, effectuez le basculement pendant une fenêtre de maintenance planifiée.

Si la transition s'arrête ou ralentit pendant l’opération de basculement, consultez les journaux d'erreurs pour détecter des messages d'erreur ou des goulots d'étranglement spécifiques. Vous pouvez spécifier un délai de basculement compris entre 30 secondes et 3 600 secondes (1 heure). Si la transition prend plus de temps que la durée spécifiée, Aurora annule les modifications et ne modifie aucun des environnements.

Remarque : Le délai d'expiration par défaut est de 300 secondes (5 minutes).

Utiliser d'autres approches de mise à niveau

Pour certaines mises à niveau, par exemple d'Aurora sans serveur v1 à Aurora sans serveur v2, vous ne pouvez pas utiliser le processus de déploiement bleu/vert. Pour résoudre ce problème, appliquez l’une des méthodes suivantes :

Utiliser des réplicas en lecture

Effectuez les opérations suivantes :

  1. Créez un réplica en lecture de votre cluster Aurora sans serveur v1.
  2. Mettez à niveau le réplica en lecture du cluster vers Aurora sans serveur v2.
  3. Mettez à jour le réplica en lecture afin qu'il devienne le cluster principal.

Pour plus d'informations, consultez la section Mise à niveau d'un cluster Aurora sans serveur v1 vers Aurora sans serveur v2.

Utiliser la restauration d’instantanés

Effectuez les opérations suivantes :

  1. Créez un instantané de votre cluster Aurora sans serveur v1.
  2. Restaurez l’instantané sur un nouveau cluster Aurora sans serveur v2.
  3. Mettez à jour votre application afin qu'elle pointe vers le nouveau cluster v2.

Vérifier les configurations après la mise à niveau

Une fois la mise à niveau du cluster terminée, vérifiez que toutes les fonctions de base de données, les procédures stockées et les requêtes d'application fonctionnent comme prévu. Surveillez les métriques de performance pendant 24 à 48 heures après la mise à niveau, y compris aux heures de pointe, pour vous assurer qu'il n'y a pas d'effets inattendus sur les performances.

Étapes de dépannage supplémentaires

Erreur d'incompatibilité

Si la configuration actuelle de votre base de données utilise des paramètres ou des fonctionnalités qui ne sont pas compatibles avec la base de données cible, le message d'erreur suivant s'affiche :

« Failed to provision due to upgrade incompatibilities. See https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.mysql80-upgrade-procedure.html#AuroraMySQL.mysql80-upgrade-troubleshooting to resolve these issues, then delete and recreate this Blue/Green Deployment. »

Pour résoudre cette erreur, procédez comme suit :

  1. Vérifiez le fichier upgrade-prechecks.log dans votre base de données Aurora compatible avec MySQL.
  2. Résolvez tous les problèmes de compatibilité que vous identifiez dans le fichier journal. Pour plus d'informations, consultez les sections Résumé des vérifications préalables de mise à niveau de Community MySQL et Résumé des vérifications préalables de mise à niveau d'Aurora MySQL.
  3. Supprimez le déploiement bleu/vert.
  4. Recréez le déploiement bleu/vert.

Erreur de compatibilité des paramètres

Si l'état de votre cluster vert est incompatible et qu'il n'est pas disponible, cela signifie que les paramètres de cluster existants ou les valeurs des paramètres d'instance ne sont pas compatibles avec la version cible.

Pour résoudre cette erreur, procédez comme suit :

  1. Réinitialisez les groupes de paramètres du cluster et les valeurs de paramètres d'instance.

  2. Pour transformer le cluster vert en cluster autonome, exécutez la commande promote-read-replica-db-cluster :

    aws rds promote-read-replica-db-cluster --db-cluster-identifier <Green Cluster>
  3. Supprimez le cluster et l'instance.

  4. Vérifiez la compatibilité des valeurs de paramètres du cluster existant avec la version cible. Vous pouvez également passer aux valeurs par défaut sur le cluster bleu. Modifiez ensuite les valeurs des paramètres une par une pendant le basculement vers le cluster vert.

  5. Après avoir validé les paramètres, créez un nouvel environnement bleu/vert.

Résoudre les problèmes liés à une mise à niveau bloquée

Votre cluster vert peut se bloquer pendant la mise à niveau pour les raisons suivantes :

  • Incompatibilité de la version cible
  • Les transactions de longue durée sur le cluster bleu bloquent le processus de mise à niveau sur le cluster vert

Pour résoudre cette erreur, suivez ces instructions :

  1. Vérifiez si la version mise à niveau prend en charge la version cible pour une mise à niveau directe.
  2. Si la version n'est pas prise en charge, annulez vos modifications et supprimez le déploiement bleu/vert.
  3. Effectuez une mise à niveau vers la version intermédiaire recommandée. Enfin, effectuez une mise à niveau vers la version finale.

Vous pouvez également surveiller votre cluster bleu pour détecter les transactions longues. Si certaines transactions sont longues, terminez-les ou résiliez-les. Puis, réessayez le processus de mise à niveau.

Informations connexes

Comment mettre à niveau mon cluster de base de données Amazon Aurora MySQL vers une nouvelle version ?

Migrer vers la version 3 d’Amazon Aurora MySQL (avec compatibilité avec MySQL 8.0)

Réalisation de mises à niveau de versions majeures pour Amazon Aurora MySQL avec une durée d’indisponibilité minimale

Mise à niveau de la version majeure d'un cluster de base de données Amazon Aurora MySQL

AWS OFFICIELA mis à jour il y a un an