ApsaraDB for MongoDB repose sur une architecture de haute disponibilité (HA). Lorsque le système HA détecte l'indisponibilité d'un nœud, il déclenche automatiquement un basculement primaire/secondaire et vous en informe par SMS ou par message interne.
Exemple de notification
[Alibaba Cloud] Cher \*\*\*\* : Votre instance ApsaraDB for MongoDB dds-bp\*\*\*\* (nom : \*\*\*\*) rencontre une erreur. Un basculement est déclenché afin de garantir la stabilité de votre instance. Nous vous recommandons de vérifier que votre application est toujours connectée à l'instance et de configurer celle-ci pour qu'elle se reconnecte automatiquement.
Fonctionnement
Une instance de type replica set comprend trois nœuds par défaut. Chaque shard d'une instance de type sharded cluster dispose également de trois nœuds. Les nœuds primaires et secondaires gèrent les connexions applicatives, tandis que les nœuds masqués servent de cibles de secours pour le basculement. Pour plus d'informations, consultez les rubriques Instances de type Replica Set ou Instances de type Sharded Cluster.
Raisons du déclenchement d'un basculement
Deux situations peuvent déclencher un basculement primaire/secondaire :
Nœud indisponible : Le système de surveillance de l'état des nœuds détecte qu'un nœud ne répond pas et promeut un nœud masqué au rang de primaire.
Hôte hors ligne : Une anomalie survient sur l'hôte exécutant le nœud primaire. Le système HA bascule vers un hôte sain pour éviter une interruption prolongée du service.
Impact d'un basculement
Le basculement entraîne une interruption temporaire de la connexion de moins de 30 secondes.
Si votre application se connecte directement à l'endpoint du nœud primaire, les opérations de lecture/écriture sont affectées pendant la fenêtre de basculement.
Actions recommandées
Pour résoudre les problèmes de reconnexion immédiate : Configurez votre application pour qu'elle se reconnecte automatiquement après une déconnexion. La plupart des pilotes MongoDB prennent en charge la reconnexion automatique par défaut.
Pour les environnements de production : Utilisez une URI de chaîne de connexion pour vous connecter à l'instance. Ainsi, votre application basculera automatiquement vers un nœud sain, maintenant la disponibilité des opérations de lecture/écriture même lors du changement de nœud primaire. Pour plus d'informations, consultez les rubriques Connexion à une instance de type Replica Set ou Connexion à une instance de type Sharded Cluster.