Mode coordination de l’activation du centre de données dans Exchange Server

Le mode de coordination de l’activation du centre de données est une propriété de groupe de disponibilité de base de données. Ce mode est désactivé par défaut et doit être activé pour tous les groupes de disponibilité de base de données constitués d’au moins deux membres qui utilisent la réplication continue. Il ne doit pas être activé pour les groupes de disponibilité de base de données en mode de réplication tierce, sauf indication contraire du fournisseur tiers.

Le mode de coordination de l’activation du centre de données permet de contrôler le montage de la base de données au niveau du comportement de démarrage d’un groupe de disponibilité de base de données. Ce contrôle est conçu pour empêcher les situations de Split-Brain au niveau de la base de données lors d’un retour vers une ancienne version d’un centre de données. Une situation de Split-Brain, aussi connue sous le nom de « syndrome Split-Brain », entraîne le montage d’une base de données en tant que copie active sur deux membres du même groupe de disponibilité de base de données qui ne parviennent pas à communiquer l’un avec l’autre. Le mode de coordination de l’activation du centre de données permet d’éviter le syndrome Split-Brain, car ce mode exige que les membres du groupe de disponibilité de base de données obtiennent l’autorisation de monter les bases de données avant de pouvoir le faire.

Par exemple, lorsqu’un centre de données principal contient deux membres DAG et le serveur témoin, et qu’un deuxième centre de données contient deux autres membres du DAG, le DAG n’est pas en mode DAC. Le centre de données principal perd de l’alimentation. Vous activez donc le DAG dans le deuxième centre de données. Finalement, l’alimentation du centre de données principal est restaurée, et les membres du DAG dans le centre de données principal, dont le quorum était atteint avant la panne d’alimentation, démarrent et montent leurs bases de données. Étant donné que le centre de données principal a été restauré sans connectivité réseau au deuxième centre de données et que le DAG n’était pas en mode DAC, les bases de données actives au sein du DAG entrent dans une condition de fractionnement du cerveau.

Fonctionnement du mode de coordination de l’activation du centre de données

Le mode de coordination de l’activation du centre de données inclut un protocole appelé DACP (Activation Coordination Protocol). Lorsque le mode de coordination de l’activation du centre de données est activé, les membres du groupe de disponibilité de base de données ne montent pas automatiquement les bases de données, même si elles disposent d’un quorum. Au lieu de cela, le protocole DACP est utilisé pour déterminer l’état en cours du groupe de disponibilité de base de données et si Active Manager doit essayer de monter les bases de données.

Vous pouvez considérer le mode DAC comme un niveau d’application de quorum pour le montage de bases de données. Pour comprendre l’objectif de DACP et son fonctionnement, il est important de comprendre le scénario principal qu’il est destiné à gérer. Considérez le scénario à deux centres de données décrit ci-dessus. Supposons qu’il y ait une panne d’alimentation complète dans le centre de données principal. Dans ce cas, tous les serveurs et le WAN étant hors service, le organization prend la décision d’activer le centre de données de secours. Dans presque tous ces scénarios de récupération, lorsque l’alimentation est restaurée dans le centre de données principal, la connectivité WAN n’est généralement pas immédiatement restaurée. Cela signifie que les membres du DAG dans le centre de données principal seront mis sous tension, mais ils ne pourront pas communiquer avec les membres du DAG dans le centre de données de secours activé. Le centre de données principal doit toujours contenir la majorité des électeurs du quorum DAG, ce qui signifie que lorsque l’alimentation est rétablie, même en l’absence de connectivité WAN aux membres du DAG dans le centre de données de secours, les membres du DAG dans le centre de données principal ont la majorité et ont donc quorum. C’est un problème, car avec le quorum, ces serveurs peuvent être en mesure de monter leurs bases de données, ce qui à son tour entraînerait une divergence par rapport aux bases de données actives réelles qui sont maintenant montées dans le centre de données de secours activé.

DACP a été créé pour résoudre ce problème. Active Manager stocke un bit en mémoire (0 ou 1) qui indique au DAG s’il est autorisé à monter des bases de données locales affectées comme actives sur le serveur. Lorsqu’un DAG s’exécute en mode DAC, chaque fois qu’Active Manager démarre, le bit est défini sur 0, ce qui signifie qu’il n’est pas autorisé à monter des bases de données. Étant donné qu’il est en mode DAC, le serveur doit essayer de communiquer avec tous les autres membres du DAG qu’il connaît pour obtenir un autre membre du DAG pour lui donner une réponse indiquant s’il peut monter des bases de données locales qui lui sont affectées comme actives. La réponse se présente sous la forme du paramètre de bits pour les autres gestionnaires actifs dans le DAG. Si un autre serveur répond que son bit est défini sur 1, cela signifie que les serveurs sont autorisés à monter des bases de données. Par conséquent, le serveur qui démarre définit son bit sur 1 et monte ses bases de données.

Toutefois, lorsque vous effectuez une récupération à partir d’une panne de courant du centre de données principal où les serveurs sont récupérés, mais que la connectivité WAN n’a pas été restaurée, tous les membres du DAG dans le centre de données principal ont une valeur de bit DACP de 0 ; par conséquent, aucun des serveurs qui démarrent la sauvegarde dans le centre de données principal récupéré ne monte des bases de données, car aucun d’entre eux ne peut communiquer avec un membre DAG dont la valeur de bit DACP est 1.

Mode de coordination de l’activation du centre de données pour les groupes de disponibilité de base de données comptant deux membres

Les groupes de disponibilité de base de données ayant deux membres comportent des limitations qui empêchent le bit DACP seul d’être pleinement protégé contre le syndrome de « split brain » au niveau de l’application. Pour un groupe de disponibilité de base de données comptant uniquement deux membres, le mode de coordination de l’activation du centre de données utilise également l’heure d’amorçage du serveur témoin du groupe pour déterminer s’il peut monter des bases de données au démarrage. L’heure d’amorçage du serveur témoin est comparée à celle à laquelle le bit DACP a été défini sur 1.

  • Si l’heure de définition du bit DACP est antérieure à l’heure d’amorçage du serveur témoin, le système part du principe que le membre DAG et le serveur témoin ont été redémarrés en même temps (probablement en raison d’une panne de courant du centre de données principal), et le membre n’est donc pas autorisé à monter des bases de données.

  • Si l’heure à laquelle le bit DACP a été défini est plus récente que l’heure d’amorçage du serveur témoin, le système suppose que le membre DAG a été redémarré pour une autre raison (peut-être une interruption programmée durant laquelle une opération de maintenance a été menée, un blocage du système ou une panne de courant isolée du membre DAG) et l’autorise à monter des bases de données.

Importante

Dans la mesure où l’heure d’amorçage du serveur témoin permet de déterminer si un membre DAG peut monter ses bases de données actives au démarrage, vous ne devez jamais redémarrer simultanément le serveur témoin et le membre DAG. Sinon, le membre du DAG sera dans l'incapacité de monter les bases de données au démarrage. Si cela se produit, vous devez exécuter la cmdlet Restore-DatabaseAvailabilityGroup sur le groupe de disponibilité de base de données. Le bit DACP sera alors réinitialisé et le membre DAG pourra monter les bases de données.

Autres avantages du mode de coordination de l’activation du centre de données

Outre la prévention du syndrome de « split brain » au niveau de l’application, le mode de coordination de l’activation du centre de données permet d’utiliser les cmdlets intégrées de résilience de site pour effectuer des permutations de centre de données. parmi lesquelles :

L'exécution d'une permutation de centre de données pour les groupes de disponibilité de base de données non définis en mode de coordination d'activation du centre de données implique l'utilisation d'une combinaison d'outils Exchange et d'outils de gestion de clusters. Pour plus d’informations, consultez Basculements de centre de données.

Activation du mode de coordination de l’activation du centre de données

Le mode de coordination de l'activation du centre de données peut être activé uniquement à l'aide de l'environnement de ligne de commande Exchange Management Shell. Plus spécifiquement, vous pouvez utiliser la cmdlet Set-DatabaseAvailabilityGroup pour activer le mode de coordination de l'activation du centre de données, comme illustré dans l'exemple suivant.

Set-DatabaseAvailabilityGroup -Identity DAG2 -DatacenterActivationMode DagOnly

Dans l'exemple précédent, DAG2 est activé pour le mode de coordination d'activation du centre de données.

Pour plus d'informations sur le fonctionnement du mode de coordination de l'activation du centre de données, voir Configuration des propriétés du groupe de disponibilité de base de données et Set-DatabaseAvailabilityGroup.