Amazon Relational Database Service
Guide de l'utilisateur

Haute disponibilité (multi-AZ) pour Amazon RDS

Amazon RDS fournit une haute disponibilité et une prise en charge du basculement pour les instances de base de données grâce aux déploiements Multi-AZ. Amazon RDS utilise plusieurs technologies distinctes pour fournir la prise en charge du basculement. Les déploiements multi-AZ pour les instances de base de données Oracle, PostgreSQL, MySQL et MariaDB utilisent la technologie de basculement d'Amazon. Les instances de base de données SQL Server utilisent la mise en miroir de bases de données SQL Server (DBM).

Dans un déploiement multi-AZ, Amazon RDS fournit et maintient automatiquement un réplica de secours synchrone dans une autre zone de disponibilité. L'instance de base de données principale est répliquée de manière synchrone sur les Zones de disponibilité vers un réplica d'attente afin de fournir une redondance de données, d'éliminer les gels E/S et de minimiser les pics de latence pendant les sauvegardes du système. L'exécution d'une instance de base de données avec une haute disponibilité peut améliorer la disponibilité lors de la maintenance planifiée du système et contribuer à protéger vos bases de données contre toute défaillance d'une instance de base de données ou perturbation d'une zone de disponibilité. Pour plus d'informations sur les zones de disponibilité, consultez régions et zones de disponibilité.

Note

La fonction de haute disponibilité n'est pas une solution de mise à l'échelle pour les scénarios en lecture seule ; vous ne pouvez pas utiliser un réplica de secours pour traiter le trafic en lecture. Pour traiter le trafic en lecture seule, vous devez utiliser un réplica en lecture. Pour plus d'informations, consultez Utilisation des réplicas en lecture.


			Scénario de haute disponibilité

A l'aide de la console RDS, vous pouvez créer un déploiement Multi-AZ en spécifiant simplement l'option Multi-AZ lors de la création d'une instance de base de données. Vous pouvez aussi utiliser la console pour convertir les instances de bases de données existantes en déploiements Multi-AZ en modifiant l'instance de base de données et en spécifiant l'option Multi-AZ. La console RDS affiche la zone de disponibilité du réplica de secours, appelée zone de disponibilité secondaire.

Vous pouvez également spécifier un déploiement Multi-AZ à l'aide de l'interface de ligne de commande. Utilisez la commande describe-db-instances de l'AWS CLI ou l'opération d'API Amazon RDS DescribeDBInstances pour afficher la zone de disponibilité du réplica de secours (appelée zone de disponibilité secondaire).

La console RDS affiche la zone de disponibilité du réplica de secours (appelée zone de disponibilité secondaire), ou vous pouvez utiliser la commande rds-describe-db-instances de l'AWS CLI ou l'opération d'API Amazon RDS DescribeDBInstances pour rechercher la zone de disponibilité secondaire.

Les instances de bases de données qui utilisent les déploiements Multi-AZ peuvent avoir une latence d'écriture et de validation accrue par rapport à un déploiement mono-AZ, en raison de la réplication de données synchrone qui se produit. Vous pouvez avoir une modification de la latence si votre déploiement bascule vers le réplica de secours, même si AWS est conçu avec une connectivité réseau à faible latence entre les zones de disponibilité. Pour les charges de travail de production, nous vous recommandons d'utiliser les IOPS provisionnés et les classes d'instance de bases de données optimisées pour les IOPS provisionnés afin d'obtenir des performances rapides et régulières. Pour de plus amples informations sur les classes d'instance de base de données, veuillez consulter Choix de la classe d'instance de base de données.

Modification d'une instance de base de données pour qu'elle devienne un déploiement multi-AZ

Si vous disposez d'une instance de base de données dans un déploiement mono-AZ et que vous le modifiez en déploiement Multi-AZ (pour les moteurs autres que SQL Server ou Amazon Aurora), Amazon RDS procède en plusieurs étapes. D'abord, Amazon RDS prend un instantané de l'instance de base de données principale de votre déploiement, puis restaure l'instantané dans une autre zone de disponibilité. Amazon RDS configure ensuite la réplication synchrone entre votre instance de base de données principale et la nouvelle instance. Cette action évite les interruptions lorsque vous passez de mono-AZ à Multi-AZ, mais vous pouvez subir des conséquences significatives sur les performances lors de la première conversion à Multi-AZ. Cet impact est plus sensible pour les instances de bases de données volumineuses et gourmandes en écriture.

Une fois la modification terminée, Amazon RDS déclenche un événement (RDS-EVENT-0025) qui indique que le processus est terminé. Vous pouvez surveiller les événement Amazon RDS. Pour plus d'informations sur les types d'événements d'instance, consultez Utilisation de la notification d'événement Amazon RDS.

Processus de basculement pour Amazon RDS

En cas de panne prévue ou imprévue de votre instance de base de données, Amazon RDS bascule automatiquement sur un réplica de secours d'une autre zone de disponibilité si vous avez activé l'option Multi-AZ. Le temps nécessaire pour que le basculement se termine 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 principale est devenu 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 l'interface utilisateur de la console RDS reflète la nouvelle zone de disponibilité.

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. En raison du fonctionnement du mécanisme Java de mise en cache du DNS, vous devrez peut-être reconfigurer votre environnement de machine virtuelle Java. Pour de plus amples informations sur la gestion d'une application Java qui met en cache les valeurs de DNS dans le cas d'un basculement, veuillez consulter AWS SDK for Java.

Note

Vous pouvez forcer le basculement manuel lorsque vous redémarrez une instance de base de données. Pour de plus amples informations, veuillez consulter 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 principale bascule automatiquement vers le réplica de secours si l'une des conditions suivantes se produit :

  • Panne d'une zone de disponibilité

  • Échec de l'instance de bases de données principale

  • Modification du type de serveur de l'instance de bases de données

  • Le système d'exploitation de l'instance de bases de données est en cours de correction logicielle

  • Un basculement manuel de l'instance de base de données a été initié à l'aide de Reboot with failover (Redémarrer avec basculement)

Il existe plusieurs façons de déterminer si votre instance de base de données Multi-AZ a basculé :

  • Les abonnements aux événements DB peuvent être définis pour vous avertir par e-mail ou par SMS qu'un basculement a été initié. Pour plus d'informations sur les événements, consultez Utilisation de la notification d'événement Amazon RDS

  • Vous pouvez afficher les événements DB à l'aide de la console Amazon RDS ou d'opérations d'API.

  • Vous pouvez afficher l'état actuel de votre déploiement Multi-AZ à l'aide de la console Amazon RDS et d'opérations d'API.

Pour plus d'informations sur la façon dont vous pouvez réagir aux basculements ou réduire le temps de récupération et sur les autres bonnes pratiques pour Amazon RDS, consultez Bonnes pratiques pour Amazon RDS.

Rubriques connexes