Basculement d’une instance de base de données multi-AZ pour Amazon RDS - Amazon Relational Database Service

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.

Basculement d’une instance de base de données multi-AZ pour Amazon RDS

Si une interruption de service prévue ou imprévue de votre instance de base de données multi-AZ est le résultat d’une anomalie de l’infrastructure, Amazon RDS bascule automatiquement sur le réplica de secours d’une autre zone de disponibilité.

La durée du basculement dépend de l'activité de la base de données et d'autres conditions au moment où l'instance de base de données primaire est devenue indisponible. Les durées de basculement oscillent généralement entre 60 et 120 secondes. Cependant, les transactions importantes ou les processus de récupération longs peuvent augmenter le temps de basculement. Lorsque le basculement est terminé, un temps supplémentaire peut être nécessaire pour que la console RDS reflète la nouvelle zone de disponibilité.

Note

Vous pouvez forcer le basculement manuellement lorsque vous redémarrez une instance de base de données multi-AZ. Pour plus d’informations, consultez Redémarrage d'une instance de base de données.

Étant donné qu'Amazon RDS gère automatiquement les basculements, vous pouvez reprendre les opérations de base de données aussi rapidement que possible sans intervention administrative. L'instance de base de données primaire bascule automatiquement vers le réplica de secours si l'une des conditions décrites dans le tableau suivant se produit : Vous pouvez consulter les raisons du basculement dans le journal des événements.

Raison du basculement Description
Le système d'exploitation sous-jacent à l'instance de base de données RDS fait l'objet d'un correctif dans le cadre d'une opération hors connexion.

Un basculement a été déclenché pendant la fenêtre de maintenance d'un correctif du système d'exploitation ou d'une mise à jour de sécurité.

Pour plus d’informations, consultez Entretien d’une instance de base de données.

L'hôte principal de l'instance RDS multi-AZ est non sain. Le déploiement d'instance de base de données multi-AZ a détecté une instance de base de données primaire déficiente et a opéré un basculement.
L'hôte principal de l'instance RDS multi-AZ est inaccessible en raison d'une perte de connectivité réseau.

La surveillance RDS a détecté une défaillance de la capacité d'accessibilité du réseau à l'instance de base de données primaire et a déclenché un basculement.

L'instance RDS a été modifiée par le client.

Une modification d'instance de base de données RDS a déclenché un basculement.

Pour plus d’informations, consultez Modification d'une instance de base de données Amazon RDS.

L'instance principale RDS multi-AZ est occupée et ne répond pas.

L'instance de base de données primaire ne répond pas. Nous vous recommandons d'effectuer les opérations suivantes :

Pour plus d'informations sur ces recommandations, consultez la section Surveillance des outils d’Amazon RDS et Bonnes pratiques relatives à Amazon RDS..

Le volume de stockage sous-jacent à l'hôte principal de l'instance RDS multi-AZ a été défaillant. Le déploiement d'instance de base de données multi-AZ a détecté un problème de stockage sur l'instance de base de données primaire et a opéré un basculement.
L'utilisateur a demandé un basculement de l'instance de base de données.

Vous avez redémarré l'instance de base de données et choisi l'option Redémarrer avec basculement.

Pour plus d’informations, consultez Redémarrage d'une instance de base de données.

Pour déterminer si votre instance de base de données Multi-AZ a basculé, voici ce que vous pouvez faire :

  • Configurez les abonnements aux événements de base de données de sorte qu’ils vous notifient par e-mail ou SMS qu’un basculement a été initié. Pour plus d’informations sur les événements, consultez Utiliser la notification d'événements d'Amazon RDS.

  • Examinez vos événements de base de données à l'aide de la console RDS ou d'opérations d'API.

  • Examinez l'état actuel de votre déploiement d'instance de base de données multi-AZ à l'aide de la console RDS ou d'opérations d'API.

Pour savoir comment répondre aux basculements, réduire le temps de récupération et découvrir d’autres bonnes pratiques pour Amazon RDS, consultez Bonnes pratiques relatives à Amazon RDS..

Configuration de la durée de vie de la JVM pour les recherches de nom DNS

Le mécanisme de basculement modifie automatiquement l'enregistrement DNS de l'instance de base de données pour pointer vers l'instance de base de données en attente. Par conséquent, vous devez rétablir toutes les connexions existantes à votre instance de base de données. Dans un environnement de machine virtuelle Java, vous devrez peut-être reconfigurer les paramètres de votre machine virtuelle Java, en raison du fonctionnement du mécanisme de mise en cache Java du DNS.

La machine virtuelle Java met en cache les recherches de noms DNS. Lorsque la JVM résout un nom d'hôte en adresse IP, elle met en cache l'adresse IP pendant une période définie appelée time-to-live (TTL, durée de vie).

Comme les ressources AWS utilisent des entrées de nom DNS qui changent parfois, nous vous recommandons de configurer votre JVM avec une valeur de durée de vie (TTL) de 60 secondes. De cette manière, lorsque l'adresse IP d'une ressource change, votre application peut recevoir et utiliser la nouvelle adresse IP de la ressource en interrogeant le DNS.

Dans certaines configurations Java, la durée de vie par défaut de la JVM est définie de façon à ce que la JVM n'actualise jamais les entrées DNS tant qu'elle n'est pas redémarrée. Par conséquent, si l'adresse IP d'une ressource AWS change pendant que votre application est en cours d'exécution, elle ne peut pas utiliser cette ressource tant que vous n'aurez pas redémarré manuellement la JVM et que les informations IP mises en cache n'auront pas été actualisées. Dans ce cas, il est essentiel de définir la durée de vie de la JVM de façon à ce que ses informations IP mises en cache soient régulièrement actualisées.

Vous pouvez obtenir la durée de vie par défaut de la JVM en récupérant la valeur de la propriété networkaddress.cache.ttl :

String ttl = java.security.Security.getProperty("networkaddress.cache.ttl");
Note

La durée de vie par défaut peut varier en fonction de la version de votre JVM et selon qu’un gestionnaire de sécurité est installé ou non. De nombreuses JVM fournissent une durée de vie par défaut de moins de 60 secondes. Si c'est le cas pour la JVM que vous utilisez et que vous n'avez pas recours à un gestionnaire de sécurité, vous pouvez ignorer le reste de cette rubrique. Pour plus d’informations sur les responsables de la sécurité dans Oracle, consultez The Security Manager dans la documentation Oracle.

Pour modifier la durée de vie de la JVM, définissez la valeur de la propriété networkaddress.cache.ttl. Utilisez l'une des méthodes suivantes selon vos besoins :

  • Pour définir globalement la valeur de la propriété pour toutes les applications qui utilisent la JVM, définissez networkaddress.cache.ttl dans le fichier $JAVA_HOME/jre/lib/security/java.security.

    networkaddress.cache.ttl=60
  • Pour définir la propriété localement pour votre application uniquement, définissez networkaddress.cache.ttl dans le code d'initialisation de votre application avant que les connexions réseau ne soient établies.

    java.security.Security.setProperty("networkaddress.cache.ttl" , "60");