Frédéric Laubel's Blog

Exchange Server Tips & Tricks

Bascule SCR dans le cadre d’un PRA

Posted by Frédéric Laubel sur décembre 1, 2008


Cet article à pour objectif de décrire les actions techniques à mettre en oeuvre en vu de basculer sur un site de secours en utilisant la fonctionnalité Exchange 2007 SCR.

En effet j’ai constaté qu’il n’existe pas beaucoup de littérature sur ce sujet…donc je me lance🙂

Update du 16/03 : Mise en forme au format HTML.

Update du 09/04 : Le Rollup 7 corrige plusieurs bugs liés au SCR je vous conseille donc vivement de l’installer.

Introduction

L’objectif de ce document est de décrire la méthodologie d’activation d’un serveur SCR dans le cadre d’un PRA. Le serveur de secours (serveur cible SCR) est activé uniquement en cas de sinistre sur le site de production. Les serveurs sont sur deux sites géographiques distincts, mais appartiennent au même site logique Active Directory.

Présentation de l’architecture

L’infrastructure Exchange 2007 est composée de six serveurs répartis entre deux sites géographiques :

  • Sur le site de production quatre serveurs Exchange 2007 :
    • deux serveurs ayant les rôles CAS/HUB en NLB
    • un cluster CCR
  • Sur le site de secours deux serveurs Exchange 2007 :
    • un serveur ayant les rôles CAS/HUB
    • un serveur ayant un nœud passif boite aux lettres

Dans cet article les serveurs sont en Exchange 2007 SP1 Rollup 5. Il est fortement conseillé de passer le Rollup 7 qui corrige plusieurs bugs liés au SCR.

Important : Les serveurs sont installés sur Windows 2008 et le SCR est activé entre deux sites géographiques appartenant au même site Active Directory. En cas de mise en œuvre de cette architecture avec du Windows 2003 certains points techniques sont légèrement différents.

Le schéma suivant illustre l’architecture :

v21

Tableau 1 : Noms des serveurs Exchange

Noms Rôles Sites
TargetSCR Cible SCR Site de PRA
HUBCASSecours1 HUB/CAS de secours Site de PRA
CCRNodeA Noeud CCR Site de production
CCRNodeB Noeud CCR Site de production
MONCMS Cluster Mailbox Server (CMS) Site de production / Site de PRA
HUBCASProd1 HUB/CAS principal Site de production
HUBCASProd2 HUB/CAS principal Site de production

Comme le flux SMTP est réparti entre les serveurs d’un même site Active Directory, il est nécessaire de suivre la procédure que je décris dans cet article :
https://laubel.wordpress.com/2008/09/18/forcer-lutilisation-dun-serveur-hub/

Ceci est indispensable pour éviter que le serveur HUB du site de secours soit utilisé par les serveurs de boites aux lettres du site principal. Vous n’avez pas à effectuer cette opération si les serveurs sont sur deux sites Active Directory logique différents.

Pour indiquer sur le site de production la liste des serveurs HUB à utiliser par le cluster CCR :
Set-MailboxServer -Identity MONCMS -SubmissionServerOverrideList HUBCASProd1, HUBCASProd2

Pour vérifier que ce paramétrage est actif utilisez la commande Get-mailboxServer -identity MONCMS | fl :

submissionserveroverridelistprint1

Et observez la ligne « SubmissionServerOverrideList » qui doit vous donner la listes des serveurs HUB à utiliser par les serveurs Maillbox.

-> Lors de la bascule vers le site de secours il faudra mettre à jour ce paramétrage avec le nom du serveur HUB à utiliser sur le site de secours.

Pour connaitre la configuration de Exchange 2007 SP1 en NLB je vous invite à consulter cet article :
http://www.msexchange.org/articles_tutorials/exchange-server-2007/planning-architecture/load-balancing-exchange-2007-sp1-hub-transport-servers-windows-network-load-balancing-technology-part1.html

Présentation du SCR

Ce chapitre présentant le fonctionnement du SCR est issue du fichier d’aide d’Exchange 2007. Voir https://laubel.wordpress.com/2008/08/17/mise-a-jour-du-helpfile/

La réplication continue de secours (SCR) est une nouvelle fonctionnalité ajoutée au Service Pack (SP1) Exchange Server 2007. Comme son nom l’indique, la SCR est conçue pour les scénarios utilisant ou activant l’utilisation des serveurs de récupération de secours.

La SCR utilise la technologie d’envoi et de relecture des journaux utilisés par la réplication continue locale (LCR) et la réplication continue en cluster (CCR) afin de fournir des options et configuration de déploiement supplémentaires.

SCR permet de séparer la disponibilité élevée (constituée par la disponibilité des données et services) et la résilience de site. Par exemple, la SCR peut être alliée à la CCR pour répliquer localement des groupes de stockage dans un centre de données principal (qui utilise la CCR pour une disponibilité élevée) et à distance dans un centre de données secondaire ou de sauvegarde (qui utilise la SCR pour la résilience de site). Ce centre de données secondaire pourrait contenir un nœud passif dans un cluster de basculement qui héberge les cibles de SCR. Ce genre de cluster s’appelle un cluster de secours parce qu’il ne contient aucun serveur de boîtes aux lettres en cluster, mais qu’il peut être rapidement configuré avec un serveur de boîtes aux lettres en cluster de remplacement dans un scénario de récupération. En cas de défaillance ou de perte du centre de données principal, les cibles de SCR hébergées dans ce cluster de secours peuvent y être rapidement activées.

Le dessin ci-dessus montre un modèle de CCR vers SCR, une source et une cible. Cette architecture est l’objet de la procédure de bascule SCR.

image002

Les ordinateurs de gauche représentent les deux nœuds CCR physiques dans un même centre de données. Les ordinateurs de droite représentent deux cibles SCR dans un autre centre de données. Dans cet exemple, un groupe de stockage unique est répliqué vers une cible SCR à cluster unique (nœud passif). La récupération du groupe de stockage peut être effectuée selon l’une ou l’autre des méthodes suivantes :

  • /RecoverCMS
  • La portabilité de la base de données peut être utilisée pour la récupération de groupes de stockage depuis des sources CCR multiples.

Tout comme la CCR, la SCR nécessite que les chemins de la base de données et des fichiers journaux soient les mêmes dans la source et dans la cible.

Source et cibles SCR

Le point de départ de la SCR s’appelle la source, qui peut être n’importe lequel des groupes de stockage de :

  • serveur de boîtes aux lettres autonome ;
  • serveur de boîtes aux lettres en cluster dans un cluster à copie unique (SCC) ;
  • serveur de boîtes aux lettres en cluster dans un environnement de CCR.

Les groupes de stockage SCR ne peuvent contenir plus d’une base de données. Vous ne pouvez pas activer la SCR pour un groupe de stockage qui contient plus d’une base de données, et vous ne pouvez pas ajouter une seconde base de données ou une base de données subséquente à un groupe de stockage SCR.

Le point de terminaison de la SCR s’appelle la cible, et elle peut être :

  • serveur de boîtes aux lettres autonome non activé pour la LCR pour un groupe de stockage ;
  • nœud passif dans un cluster de basculement sur lequel le rôle de boîtes aux lettres est installé, mais aucun serveur de boîtes aux lettres en cluster n’est installé dans le cluster.

Un ordinateur cible de SCR doit être équipé du rôle de serveur de boîtes aux lettres, même s’il n’héberge pas de boîtes aux lettres de production. Le rôle serveur de boîtes aux lettres est requis parce qu’il inclut le services de réplication Microsoft Exchange et d’autres composants nécessaires à la fonctionnalité de SCR.

Une source peut avoir plusieurs cibles. Par exemple, une source peut avoir une cible dans le même centre de données qu’elle, et une deuxième cible dans un autre centre de données. Le nombre de cibles possibles pour une source est illimité. Cependant, nous vous conseillons de ne pas en utiliser plus de quatre par source. L’impact sur le serveur source doit être vérifié et prévu en conséquence si plus de quatre cibles sont configurées.

La SCR est disponible dans l’édition standard du SP1 Exchange 2007. Si un serveur de boîtes aux lettres dans un environnement SCC ou CCR est utilisé comme source SCR, le SP1 Exchange 2007 Enterprise Edition est nécessaire parce que la mise en cluster de Exchange 2007 nécessite l’Enterprise Edition. Si un cluster de secours est utilisé comme cible SCR, l’Enterprise Edition du SP1 Exchange 2007 est aussi requise.

Besoins pour les cibles SCR

Avant de déployer des cibles SCR, nous vous conseillons de vous familiariser avec les besoins des cibles SCR :

  • Chaque cible peut avoir de multiples serveurs sources. Le système source comme le système cible doivent être équipés de SP1 Exchange 2007. Il peut s’agir de n’importe quel système d’exploitation pris en charge par Exchange 2007 SP1 (par exemple, Windows Server 2008 ou Windows Server 2003). Toutefois, tous les ordinateurs cibles de SCR doivent exécuter le même système d’exploitation que l’ordinateur source de SCR correspondant. L’utilisation de différents systèmes d’exploitation pour une source de SCR et ses cibles (par exemple, lorsque la source de SCR est Windows Server 2003 et la cible de SCR Windows Server 2008, ou vice versa) n’est pas prise en charge.
  • L’ordinateur cible de la SCR doit être équipé du rôle serveur de boîtes aux lettres du SP1 Exchange 2007.
  • Pour utiliser la SCR, vous devez configurer vos chemins d’installation du serveur Exchange plus minutieusement si vous projetez d’utiliser un cluster de secours et la fonctionnalité de récupération du serveur de boîtes aux lettres en cluster (Setup /RecoverCMS) dans le processus d’activation de la cible SCR. Pour utiliser le processus de récupération du serveur, le chemin d’installation du serveur Exchange doit être le même dans l’ordinateur source de la SCR et dans celui cible. Si le serveur Exchange est installé dans %ProgramFiles%\Microsoft\Exchange Server sur l’ordinateur source de la SCR, il doit aussi être installé dans %ProgramFiles%\Microsoft\Exchange Server sur tous les ordinateurs qui seront les cibles SCR du serveur source. Si ces chemins d’installation ne correspondent pas, Setup /RecoverCMS échoue parce que le chemin d’installation dans le Registre ne correspond pas à la valeur de l’attribut msExchInstallPath de l’objet serveur de boîtes aux lettres dans le service d’annuaire Active Directory.
  • Vous devez également planifier les chemins d’accès aux groupes de stockage et base de données avec soin lorsque vous utilisez la SCR car le chemin d’accès aux groupes de stockage et base de données utilisé par une source de SCR sera utilisé pour la copie des groupes de stockage et base de données sur toutes les cibles de SCR correspondant à la source.
  • Les ordinateurs sources et cible de SCR doivent figurer dans le même domaine Active Directory mais peuvent se trouver dans le même site Active Directory ou dans des sites différents.
  • Chaque ordinateur cible prend en charge jusqu’à 50 cibles de SCR (50 groupes de stockage répliqués) lorsque l’édition Enterprise d’Exchange 2007 est utilisée, et jusqu’à 5 cibles de SCR lorsque l’édition Standard d’Exchange 2007 est utilisée.

Restrictions sur les ordinateurs cibles de la SCR

Lorsqu’un nœud passif ou un serveur de boîtes aux lettres autonome est configuré comme cible de SCR, les fonctionnalités suivantes sont bloquées :

  • Il n’est pas possible que la LCR soit activée pour un quelconque groupe de stockage sur un serveur de boîtes aux lettres autonome désigné en tant que cible SCR. Le service de réplication Microsoft Exchange n’a pas été conçu ni modifié pour gérer la LCR et la réplication à partir d’une autre source.
  • Un nœud passif désigné en tant que cible SCR doit faire partie d’un cluster avec basculement qui n’a aucun serveur de boîtes aux lettres en cluster.

Installation du serveur TargetSCR

Installation des pré-requis d’Exchange en Cluster

L’installation des pré-requis Exchange 2007 est effectué à l’aide de fichiers .xml créés par l’équipe produit Exchange. Ces fichiers sont valables uniquement pour Windows 2008.

Ces fichiers sont disponibles en libre téléchargement : http://msexchangeteam.com/files/12/attachments/entry448276.aspx

Tout d’abord, il faut installer les pré-requis Exchange 2007 :
servermanagercmd.exe -ip Exchange-Base.xml

requirements1

Puis il faut procéder à la même opération pour  les pré-requis de la mise en cluster d’Exchange Server 2007:
servermanagercmd.exe -ip Exchange-clusMBX.xml

clusmbx1


Installation du nœud passif Exchange

Avant installation du serveur Exchange il est nécessaire de créer un cluster MSCS. Le cluster sera formé d’un seul nœud.

image004

Le chemin d’accès aux données et logs Exchange doit être équivalent entre le serveur TargetSCR et les nœuds sources CCRNodeA et CCRNodeB.

image005

Important : Installer Exchange en prenant soin d’indiquer un chemin d’installation identique au chemin d’installation existant sur les serveurs sources.

Installer Exchange en nœud passif (il n’y aura pas de création de CMS).

image007

Le compte machine de la cible SCR (TargetSCR) doit avoir un accès total au compte machine du CMS.
Cela se fait dans Active Directory en allant sur les propriétés du compte du CMS (MONCMS) et en ajoutant le compte machine TargetSCR en accès Full. Ceci n’est valable que pour Windows 2008.

Activation et surveillance du SCR

Activation du SCR

L’activation du SCR se fait par la commande Enable-StorageGroupCopy.

Par exemple pour activer la réplication SCR sur le groupe de stockage SG-1 vers le serveur TargetSCR :

Enable-StorageGroupCopy MONCMS\SG-1 -StandbyMachine TargetSCR

Il est possible d’activer le SCR sur l’ensemble des groups de stockage avec une seule commande :

Get-StorageGroup -Server MONCMS | Enable-StorageGroupCopy -StandbyMachine TargetSCR

Surveillance du SCR

La surveillance de la réplication SCR se fait par la commande Get-StorageGroupCopyStatus :

Get-StorageGroupCopyStatus MONCMS\SG-1 -StandbyMachine TARGETSCR

Un état Healthy indique que la réplication fonctionne correctement.

L’ajout de l’option fl permet d’obtenir plus de détails :

Get-StorageGroupCopyStatus MONCMS\SG-1 -StandbyMachine TARGETSCR | fl

image009

Le paramétrage des options –ReplayLagTime et –TruncationLagTime est laissé par défaut.

Arrêt du site principal et activation du site de secours

Préparation des groupes de stockage

A la suite d’une défaillance du site principal il faut activer les copies de secours SCR sur le serveur TARGETSCR.

Il est nécessaire de préparer les groupes de stockage avec la commande Restore-StorageGroupCopy. Cette commande permet notamment de mettre les bases dans un état « mountable ».

Par exemple pour préparer le groupe de stockage SG-1 :

Restore-StorageGroupCopy -Identity MONCMS\SG-1 | -StandbyMachine TARGETSCR -force

Il est possible de préparer l’ensemble des groupes de stockage à l’aide du script GetscrSources.ps1 disponible dans le répertoire d’installation d’Exchange 2007 SP1.

L’option -Force est obligatoire dans le cas où les serveurs sources ne sont pas en ligne, ce qui est le cas ici.

Suppression de l’enregistrement CMS dans le DNS

Supprimer l’enregistrement hôte du CMS dans le serveur DNS.

Désactivation du SCR

La commande Restore-StorageGroupCopy doit désactiver la réplication SCR. Si la réplication est toujours active il est nécessaire de la désactiver explicitement avec la commande Disable-StorageGroupCopy.

Disable-StorageGroupCopy -Identity MONCMS\SG-1 -StandbyMachine TARGETSCR -Confirm:$False


Restauration du CMS

La restauration du CMS se fait à partir du média d’installation d’Exchange 2007 en spécifiant la nouvelle adresse IP utilisée.

Setup.com /RecoverCMS /CMSName:MONCMS /CMSIPAddress:<IPAddress>

Où <IPAddress> est la nouvelle adresse IP à utiliser.
Exemple :

image010

Il est possible que la commande retourne une erreur lors de sa première exécution. Dans ce cas vérifier que les ressources cluster soient online, si besoin mettez les online manuellement  puis relancer la commande….

Mise à jour du paramètre -SubmissionServerOverrideList

Nous spécifions le serveur HUB  à utiliser sur le site de secours par le CMS.

Set-MailboxServer -Identity MONCMS -SubmissionServerOverrideList HUBCASSecours1


Vérification de l’intégrité des bases Exchange

Avant le montage des bases Exchange il est nécessaire de vérifier leur intégrité et les réparer le cas échéant.

La vérification des bases se fait avec l’utilitaire ESEUTIL.

Par exemple pour la base DB-1 dont le fichier .edb se trouve dans le répertoire M:\ExchangeDB\DB-1 :

Eseutil /MH M:\ExchangeDB\DB-1\db-1.edb

Si en retour la ligne State à pour valeur Dirty Shutdown il faut réparer la base avant de la monter (car il manque les logs permettant de remonter la base).

image011

Noter le numéro préfixe dans le répertoire logs de la base de données. Dans cet exemple les logs se terminent par 02.

Lancer la réparation avec ESEUTIL en spécifiant notamment le numéro de préfixe des fichiers de log.

Par exemple pour la base DB-1 dont le répertoire de logs se trouve dans le répertoire L:\SG-1 :

Eseutil /r E02 /s M:\ExchangeDB\DB-1 /l L:\SG-1 /a

La réparation se lance :

image0121

Vérifier de nouveau l’état de la base avec la commande Eseutil /MH M:\ExchangeDB\DB-1\db-1.edb

image014

Cette fois la ligne State renvoi la valeur Clean Shutdown permettant un montage sans risque de la base.

Montage des bases Exchange

Monter les bases de données Exchange avec la commande Mount-Database ou graphiquement par la console Exchange.

A cette étape à partir du moment ou les serveurs DNS et les postes clients possèdent la nouvelle adresse IP de MONCMS les clients doivent pouvoir se connecter normalement à leurs boites aux lettres par le client lourd Outlook ou par le client léger OWA.

En cas d’utilisation prolongé du site de secours ou de création de boites aux lettres il sera nécessaire de reconfigurer la distribution du carnet d’adresse en mode hors connexion (OAB) pour prendre en compte les nouveaux serveurs CAS.

Pour savoir comment modifier  la configuration de l’OAB :
http://technet.microsoft.com/en-us/library/bb124270.aspx

Préparation du site principal avant redémarrage

Dans ce document nous partons du principe que le nœud actif du cluster CCR est le serveur CCRNodeA.

Pour vérifier qui est le nœud actif utiliser la commande Get-MailboxServerStatus.

Il est nécessaire de procéder à remise en route maitrisé du site principal pour éviter tous conflits entre les services du site de secours (qui est maintenant en production) et les services du site principal (qui est en cours de redémarrage).

Procéder au redémarrage des contrôleurs de domaine du site principal, puis des serveurs Exchange HUB /CAS et enfin des nœuds CCR.

Supprimer le CMS des nœuds CCRNodeA et CCRNodeB :

Setup.com /ClearLocalCMS /CMSName :MONCMS

image015


Vérifier que les ressources du CMS n’apparaissent plus dans le gestionnaire de cluster.
Après avoir exécuté cette commande sur un ordinateur Windows Server 2008 le compte machine est désactivé. Il est nécessaire de le réactiver : Start / All Programs, / Administrative Tools, /  Active Directory Users and Computers. Rechercher le compte MONCMS et clic droit sur le compte / Enable Account.

Configuration du site principal comme cible SCR

L’ancien site principal doit devenir la cible SCR afin de s’assurer du bon retour en arrière sans perte des données. La procédure est la même que celle utilisée pour activer le SCR sur le site de secours.

Enable-StorageGroupCopy EXCMS1\SG-1 -StandbyMachine CCRNodeA

Pour rappel il est possible d’activer le SCR sur l’ensemble des groups de stockage avec une seule commande :

Get-StorageGroup -Server MONCMS\SG-1 | Enable-StorageGroupCopy -StandbyMachine CCRNodeA

Si les bases de données initiales ne sont plus utilisables il faut renvoyer la totalité des bases (reseed) du site de secours vers le site principal.

Cela se fait par la commande Update-StorageGroupCopy.

Redémarrage du site principal

Une fois que le site principal est prêt à revenir le site de production, nous pouvons commencer la procédure de bascule.

Démontage des bases Exchange du serveur TARGETSCR

Il faut commencer par démonter les bases Exchange sur le serveur TARGETSCR. Cela peut se faire en mode graphique depuis la console Exchange ou avec la commande Dismount-Database.


Préparation des bases Exchange sur CCRNODEA

La commande est identique à celle utilisé lors de la bascule initiale :

Restore-StorageGroupCopy -Identity MONCMS\SG-1 | -StandbyMachine CCRNODEA


Arrêt du service Cluster sur TARGETSCR

Arrêter le service cluster sur le serveur TARGETSCR soit par l’interface graphique, soit par la commande Stop-ClusteredMailboxServer.


Suppression de l’enregistrement DNS de MONCMS

Supprimer l’enregistrement DNS du CMS MONCMS qui contient l’adresse IP attribuée durant son utilisation sur le site de secours.

Désactivation du SCR

La commande Restore-StorageGroupCopy doit désactiver la réplication SCR. Si la réplication est toujours active il est nécessaire de la désactiver explicitement avec la commande Disable-StorageGroupCopy. Disable-StorageGroupCopy -Identity MONCMS\SG-1 -StandbyMachine CCRNODEA -Confirm:$False


Restauration du CMS

A partir du serveur CCRNODEA exécuter : Setup.com /RecoverCMS /CMSName:MONCMS /CMSIPAddress:<IPAddress> Où <IPAddress> est l’adresse IP utilisée avant la bascule pour le CMS.

Mise à jour du paramètre -SubmissionServerOverrideList

Nous remettons à jour la liste des serveurs HUB à utiliser sur le site principal.

Set-MailboxServer -Identity MONCMS -SubmissionServerOverrideList CCRNodeA, CCRNodeB


Montage des bases

Monter les bases Exchange soit par l’interface graphique soit par la commande Mount-Database.


Activation du CCR

Il est nécessaire de réactiver la réplication CCR, cela se fait soit par l’interface graphique soit par la commande Resume-StorageGroupCopy.


Vérification de la réplication CCR

Pour vérifier la réplication CCR il est possible d’utiliser la commande Test-ReplicationHealth. Celle-ci ne doit pas renvoyer d’erreur. 

Reconfiguration du site de secours


Suppression du CMS

Depuis le serveur TARGETSCR supprimer le CMS :

Setup.com /ClearLocalCMS /CMSName:MONCMS

Après avoir exécuté cette commande sur un ordinateur Windows Server 2008 le compte machine est désactivé. Il est nécessaire de le réactiver : Start / All Programs, / Administrative Tools, /  Active Directory Users and Computers. Rechercher le compte MONCMS et clic droit sur le compte / Enable Account.

Vérification des services Exchange

Pour s’assurer du bon démarrage du service Exchange « MSExchangeRepl » utiliser la commande Test-ServiceHealth.


Test-ServiceHealth

Si ce service n’est pas démarré, il est nécessaire de le redémarrer manuellement.

Le service « MSExchangeRepl » doit être démarré avant activation du SCR sur le serveur TARGETSCR :

image017

Activation du SCR vers TARGETSCR

L’activation du SCR se fait par la commande Enable-StorageGroupCopy.

Par exemple pour activer la réplication SCR sur le groupe de stockage SG-1 vers le serveur TARGETSCR :

Enable-StorageGroupCopy MONCMS\SG-1 -StandbyMachine TARGETSCR

Il est possible d’activer le SCR sur l’ensemble des groups de stockage avec une seule commande :

Get-StorageGroup -Server MONCMS\SG-1 | Enable-StorageGroupCopy -StandbyMachine TARGETSCR


Validation du SCR

La surveillance de la réplication SCR se fait par la commande Get-StorageGroupCopyStatus :

Get-StorageGroupCopyStatus MONCMS\SG-1 -StandbyMachine TARGETSCR

Un état Healthy indique que la réplication fonctionne correctement.

L’ajout de l’option fl permet d’obtenir plus de détails.

Get-StorageGroupCopyStatus MONCMS\SG-1 -StandbyMachine TARGETSCR | fl

image016

Fin du document

N’hésitez pas à me faire part de vos remarques et suggestions.

Happy PRA🙂

Une Réponse to “Bascule SCR dans le cadre d’un PRA”

  1. […] Bascule SCR dans le cadre d’un PRA […]

Sorry, the comment form is closed at this time.

 
%d blogueurs aiment cette page :