View a markdown version of this page

Mise à niveau sur place de la version majeure d'Amazon DocumentDB - Amazon DocumentDB

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Mise à niveau sur place de la version majeure d'Amazon DocumentDB

Vous pouvez effectuer une mise à niveau de version majeure (MVU) sur place de votre cluster Amazon DocumentDB tout en conservant les mêmes points de terminaison, stockage et balises. Vos applications continuent de fonctionner sans modifications. Cette fonctionnalité est disponible sans frais supplémentaires dans toutes les régions où Amazon DocumentDB est disponible.

Important

Votre cluster ne sera pas disponible pendant la mise à niveau et subira plusieurs redémarrages. Ne vous connectez pas au cluster, ne lisez pas depuis celui-ci et n'écrivez pas sur celui-ci après le lancement de la mise à niveau. Les temps d'arrêt varient en fonction du nombre de collections, d'index, de bases de données et d'instances. Nous vous recommandons d'effectuer la mise à niveau pendant votre période de maintenance ou pendant les heures de faible utilisation.

Une fois la mise à niveau effectuée, vous ne pouvez pas revenir à une version précédente. Vous pouvez restaurer votre instantané de pré-mise à niveau sur un nouveau cluster si nécessaire.

Chemins de mise à niveau pris en charge

Version de la source Version cible

Amazon DocumentDB 3.6

Amazon DocumentDB 5.0

Amazon DocumentDB 4.0

Amazon DocumentDB 5.0

Amazon DocumentDB 5.0

Amazon DocumentDB 8.0

Note

In-place Le MVU n'est pas pris en charge pour les clusters globaux ou les clusters élastiques. Pour mettre à niveau un cluster global, supprimez les clusters secondaires, convertissez le cluster principal en cluster régional, exécutez le MVU, puis recréez le cluster global en ajoutant des clusters secondaires portant les mêmes noms pour conserver vos points de terminaison. I/O Des frais vous seront facturés pendant que le système principal mis à niveau réplique les données vers les nouveaux systèmes secondaires. Pour obtenir des instructions complètes, consultez Supprimer un cluster d'un cluster global Amazon DocumentDB.

Conditions préalables

  • Type d'instance — Amazon DocumentDB 4.0+ ne prend pas en charge les instances db.r4. Modifiez toutes les instances en db.r4.* db.r5.* instances ou en versions plus récentes avant de procéder à la mise à niveau. Consultez Modification d'une instance Amazon DocumentDB et Classes d'instances prises en charge par région.

  • Correctifs du système d'exploitation : appliquez toutes les actions de maintenance du système d'exploitation en attente sur toutes les instances avant la mise à niveau. Consultez Mises à jour du système d'exploitation Amazon DocumentDB.

    Note

    Les correctifs de moteur en attente au niveau du cluster peuvent masquer les correctifs du système d'exploitation de l'instance. Appliquez d'abord les correctifs du moteur si nécessaire. Consultez Exécution d'une mise à jour du correctif de la version du moteur d'un cluster.

  • Limites d'index sur les instances burstables (instances de la famille t) : si vous avez plus de 3 000 index sur les instances burstables, augmentez l'index principal à au moins db.r5.large avant de procéder à la mise à niveau. Vous pouvez réduire la taille une fois la mise à niveau terminée.

    Instance Indexes maximaux pour le MVU

    db.t4g.medium

    3 KM

    db.t3.medium

    10 000

  • Groupe de paramètres — Nous vous recommandons de disposer d'un groupe de paramètres de cluster personnalisé pour la version cible avant la mise à niveau. Si aucun n'est spécifié, le groupe de paramètres par défaut de la version cible sera utilisé (par exemple, default.docdb5.0 oudefault.docdb8.0).

  • Instantané manuel : créez un instantané manuel avant la mise à niveau. Le processus de mise à niveau crée un instantané automatique nommépreupgrade-<name>-<version>-<timestamp>, mais nous vous recommandons vivement de disposer de votre propre sauvegarde. Consultez Création d'un instantané de cluster manuel.

    Note

    L'instantané automatique créé par le processus de mise à niveau ne sera pas automatiquement supprimé une fois la mise à niveau de la version majeure sur place terminée. Cet instantané n'entraînera aucun frais tant qu'il est conservé pendant la période de conservation. Vous pouvez choisir de supprimer cet instantané une fois que vous avez vérifié la réussite de la mise à niveau de votre cluster.

    Image : la zone de navigation Instantanés affichant un tableau des instantanés créés précédemment.

Bonnes pratiques

Avant la mise à niveau : test avec un clone

  1. Clonage d'un volume pour un cluster Amazon DocumentDBÀ utiliser pour créer un clone de votre cluster. Vous n'aurez pas de frais de stockage à moins que vous ne modifiiez les données du clone.

  2. Faites correspondre le nombre d'instances du clone au cluster cible pour une estimation de temps réaliste.

  3. Exécutez le MVU sur le clone et testez complètement les différences fonctionnelles.

  4. Vérifiez si une mise à niveau est déjà planifiée en exécutant describe-db-clusterset en recherchantPendingModifiedValues.EngineVersion. Si vous avez modifié le cluster et que vous avez choisi de l'appliquer dans la fenêtre de maintenance suivante, le planning ne sera pas visible dans la console mais vous pouvez le consulter dans AWS CLI :

    aws docdb describe-db-clusters \ --region us-east-1 \ --db-cluster-identifier mydocdbcluster
    "PendingModifiedValues": { "EngineVersion": "5.0.0" },
  5. Si le test est réussi, procédez à la mise à niveau sur votre cluster de production.

Pendant la mise à niveau

Vous pouvez suivre la progression de la mise à niveau de votre version majeure sur place en vous abonnant aux événements de maintenance du cluster. Une fois la mise à niveau terminée, vous recevrez l'événement « La version majeure du cluster de base de données a été mise à niveau ». Cet événement, ainsi que d'autres événements survenant pendant la mise à niveau, apparaissent dans la section Événements et balises de la page détaillée du cluster dans la console Amazon DocumentDB. L'état du cluster passe alors de upgrading àavailable.

Les événements suivants sont générés lors de la mise à niveau :

  1. Démarrage de la mise à niveau de la version majeure du moteur de cluster de base Le cluster reste en ligne.

  2. Préparation de la mise à niveau en cours : lancement des vérifications préalables à la mise à niveau en ligne.

  3. Préparation de la mise à niveau en cours : vérifications préalables à la mise à niveau en ligne terminées.

  4. Mettre le cluster de base de données hors ligne pendant que l'instance principale termine le patch/upgrade processus.

  5. Préparation de la mise à niveau en cours : lancement des prévérifications de mise à niveau hors ligne.

  6. Préparation de la mise à niveau en cours : les prévérifications de mise à niveau hors ligne ont été effectuées.

  7. <version-to><timestamp>Mise à niveau en cours : création d'un instantané préalable à la mise à niveau [preupgrade- <cluster-name>- <version-from>-to- -].

  8. Mise à niveau en cours : volume de clonage.

  9. Mise à niveau en cours : mise à niveau de Writer.

  10. Mise à niveau en cours : mise à niveau des lecteurs.

  11. La version majeure du moteur de cluster de bases de données a été mise à niveau.

Les événements sont visibles dans la console, sous la page Événements :

Image : la boîte de navigation Événements affichant un tableau des événements de mise à niveau.

À partir du AWS CLI, vous pouvez exécuter aws docdb describe-eventspour suivre la progression de la mise à niveau. Pour recevoir des notifications automatiquement, abonnez-vous aws docdb create-event-subscriptionaux événements et acheminez-les vers Amazon SNS pour recevoir des e-mails, des messages push ou d'autres méthodes de livraison. Pour de plus amples informations, veuillez consulter Abonnement aux événements Amazon DocumentDB.

aws docdb describe-events --source-identifier mydocdbcluster --source-type db-cluster

La commande renvoie un résultat semblable à ce qui suit :

{ "Events": [ { "SourceIdentifier": "mydocdbcluster", "SourceType": "db-cluster", "Message": "Database cluster engine version upgrade started.", "EventCategories": [ "maintenance" ], "Date": "2023-07-11T23:20:32.444000+00:00", "SourceArn": "arn:aws:rds:us-east-1:xxxx:cluster:mycluster" } ] }

Après la mise à niveau

Avertissement

Immédiatement après la mise à niveau de la version majeure sur place, votre cluster Amazon DocumentDB remplit à nouveau les métadonnées d'index que le moteur de base de données utilise pour optimiser les plans d'exécution des requêtes. Les performances des requêtes reviennent aux niveaux attendus une fois ce processus terminé. Elle se termine généralement en quelques minutes, mais elle peut prendre jusqu'à deux heures selon le nombre d'index de votre cluster.

Ne redémarrez pas, ne basculez pas et ne up/down redimensionnez pas votre instance Writer pendant cette période, car cela pourrait perturber le recalcul des métadonnées de l'index. Nous vous recommandons d'attendre d'avoir observé les performances de requête attendues avant d'apporter de telles modifications.

Suivez les progrès via les événements du cluster suivants :

  • Post-upgrade état du cluster : lancement du processus d'actualisation des métadonnées de l'index

  • Post-upgrade état du cluster : le processus d'actualisation des métadonnées de l'index s'est terminé en X secondes

Contactez le AWS support si le processus d'actualisation des métadonnées de l'index n'est pas terminé dans les trois heures ou si vous continuez à rencontrer des problèmes de performances une fois le processus terminé.

  1. Prenez un instantané manuel du cluster mis à niveau au cas où vous auriez besoin de le restaurer à son état postérieur à la mise à niveau. Le processus de capture automatique reprendra dès que la mise à niveau de la version majeure sur place sera terminée.

  2. Clusters de balises mis à niveau depuis la version 3.6. Ajoutez une balise pour différencier les clusters mis à niveau depuis la version 3.6. (voirPost-upgrade considérations relatives aux clusters mis à niveau à partir de la version 3.6 ou 4.0).

  3. Mettez à jour votre pilote. Pour utiliser les nouvelles fonctionnalités (par exemple, le classement, les vues ou la compression Zstd dans la version 8.0), effectuez une mise à niveau vers la version d'API MongoDB correspondante. Pour plus d'informations, consultez Nouveautés d'Amazon DocumentDB 8.0.

  4. Testez minutieusement. Validez votre application par rapport au cluster mis à niveau.

Quels sont les changements après la mise à niveau d'Amazon DocumentDB 5.0 vers la version 8.0

Après avoir effectué une mise à niveau de version majeure d'Amazon DocumentDB 5.0 vers la version 8.0, les fonctionnalités suivantes sont activées ou modifiées :

  • Collation. Amazon DocumentDB 8.0 prend en charge le classement. Après la mise à niveau, le classement est activé par défaut pour les nouvelles collections et leurs index, ainsi que pour les nouveaux index des collections existantes.

  • Index du texte. Les nouveaux index de texte sont créés à l'aide de Text Index V2, qui utilise un analyseur de recherche de texte mis à jour pour améliorer la compatibilité avec MongoDB. Les index de texte existants ne sont pas affectés.

  • Version du planificateur de requêtes. Si vous n'avez pas de groupe de paramètres personnalisé, un nouveau groupe de paramètres par défaut est créé pour Amazon DocumentDB 8.0 avec Planner Version 3 automatiquement sélectionnée. Avec la version 3 du planificateur de requêtes, les vues sont également disponibles.

  • Compression. Amazon DocumentDB 8.0 prend en charge la compression de documents basée sur un dictionnaire à l'aide de l'algorithme Zstd. Après la mise à niveau, de nouvelles collections sont créées avec la compression Zstd activée par défaut. Les collections existantes à partir de la version 5.0 conservent leurs paramètres de compression. Pour tirer parti de la compression Zstd sur les collections existantes, vous pouvez modifier leurs paramètres de compression. Pour plus d'informations, consultez la section Dictionary-based compression.

  • Reconstruction de l'index. Si vous effectuez une mise à niveau d'Amazon DocumentDB 5.0 vers Amazon DocumentDB 8.0, aucune reconstruction d'index n'est nécessaire.

Note

Pour une liste complète des différences fonctionnelles, voirCompatibilité d'Amazon DocumentDB avec MongoDB.

Post-upgrade considérations relatives aux clusters mis à niveau à partir de la version 3.6 ou 4.0

  • Reconstruction de l'index. Un MVU conserve les index d'origine. Amazon DocumentDB 5.0 a amélioré la maintenance des index et la collecte des déchets, en particulier pour les index à faible cardinalité. Après la mise à niveau depuis la version 3.6 ou 4.0, nous vous recommandons de reconstruire vos index afin de garantir des performances de requête optimales (facultatif, implique des éléments supplémentaires I/O). Consultez Maintenance de l'index en utilisant reIndex.

  • Comparaison numérique des sous-documents (3.6 uniquement). Les clusters mis à niveau à partir de la version 3.6 héritent du comportement de la version 3.6 selon lequel les types numériques des sous-documents ne sont pas comparés entre les types. Par exemple, ce {a: {b: NumberLong(1)}} n'est pas égal {a: {b: 1}} dans la version 3.6, mais ils sont égaux dans la version 4.0 et les versions ultérieures. Ce comportement affecte tous les clusters mis à niveau depuis la version 3.6.

Exécution de la mise à niveau

Using the AWS Management Console
  1. Connectez-vous à la console Amazon DocumentDB AWS Management Consoleet ouvrez-la.

  2. Dans le tableau Clusters, sélectionnez le cluster source, cliquez sur Actions, puis sur Modifier.

    Image : la boîte de navigation Clusters affichant une liste des liens de clusters existants et leurs liens d'instance correspondants.
  3. Dans Spécifications du cluster, choisissez la version cible (par exemple, 5.0.0 ou 8.0.0) dans la liste déroulante des versions du moteur.

    Image : la section Spécifications du cluster de la boîte de dialogue Modifier le cluster affichant les champs Identifiant du cluster et Version du moteur.
  4. Dans Options du cluster, sélectionnez votre groupe de paramètres de cluster pour la version du moteur cible. Vous pouvez utiliser la valeur par défaut (par exemple, default.docdb5.0 ou default.docdb8.0) ou un groupe de paramètres personnalisé que vous avez créé.

    Image : la section Options du cluster de la boîte de dialogue Modifier le cluster affichant le champ du groupe de paramètres du cluster.
  5. Choisissez Continuer, sélectionnez vos préférences de planification (à appliquer immédiatement ou à la fenêtre de maintenance suivante), puis choisissez Modifier le cluster.

    Image : la boîte de dialogue Modifier le cluster présentant le résumé et la planification des modifications pour le cluster sélectionné.
  6. Surveillez l'état du cluster dans le tableau des clusters à mesure qu'il passe à la mise à niveau :

    Image : la boîte de navigation Clusters mettant en évidence la colonne État du cluster en cours de mise à niveau.
Using the AWS CLI

À utiliser modify-db-clusteravec le --allow-major-version-upgrade drapeau :

aws docdb modify-db-cluster \ ‐‐db-cluster-identifier mydocdbcluster \ ‐‐allow-major-version-upgrade \ ‐‐engine-version 8.0.0 \ ‐‐apply-immediately \ ‐‐cluster-parameter-group mydocdbparametergroup \ ‐‐region us-east-1

Remplacez chacune placeholder par les informations de votre cluster.

Résolution des problèmes

  • Échec de la mise à niveau et annulation. Si la mise à niveau échoue, elle tente automatiquement de revenir en arrière. Une restauration réussie génère l'événement suivant : « Le cluster de base de données est dans un état qui ne peut pas être mis à niveau ». Votre cluster revient à son état antérieur à la mise à niveau et vous pouvez continuer à l'utiliser. Contactez l' AWS assistance pour résoudre le problème avant de réessayer.

  • Post-upgrade performance. Une dégradation temporaire des performances et une utilisation élevée du processeur peuvent se produire pendant l'actualisation des métadonnées de l'index. Si la dégradation persiste au-delà de 3 heures, contactez AWS le support.

Pour obtenir une assistance supplémentaire, contactez AWS le Support.