Comment activer le mode maintenance sur votre serveur Exchange

Comment mettre un serveur Exchange 2019/2016 en mode maintenance (Oui, c’est une procédure)

Gérer des serveurs Exchange est déjà assez fastidieux sans avoir à gérer la maintenance. Que ce soit pour des correctifs, des mises à jour matérielles ou simplement pour maintenir un environnement propre, la mise en mode maintenance du serveur est essentielle. Mais attention, c’est une opération délicate ! Il faut déplacer toutes les bases de données, inverser les rôles et s’assurer que le flux de messagerie ne soit pas interrompu. Ce guide vous accompagne pas à pas dans les étapes courantes, principalement manuellement, car, soyons honnêtes, l’utilisation de scripts n’est pas toujours fiable. Prévoyez de consacrer du temps à vérifier chaque étape pour éviter les mauvaises surprises. Une fois la maintenance terminée, le serveur est indisponible pour la distribution du courrier pendant que vous effectuez les mises à jour ou les réparations matérielles. Le retour au mode maintenance est ensuite relativement simple, mais il faut veiller à ne pas laisser le serveur en panne.

Comment mettre Exchange Server en mode maintenance ?

Méthode 1 : Mode de maintenance manuelle — car il arrive que les scripts échouent tout simplement.

Cette méthode consiste à procéder étape par étape, ce qui est judicieux si vous souhaitez garder le contrôle ou si vous rencontrez des problèmes avec les scripts. Dans certaines configurations, vous exécutez les scripts depuis l’environnement de commande Exchange Management Shell, mais dans d’autres, vous devrez le faire via PowerShell distant, notamment si le serveur n’est pas directement accessible. Assurez-vous d’abord que les outils RSAT avec le module FailoverClusters chargé, ainsi que la dernière version d’Exchange Management Shell, sont installés. Utilisez PowerShell pour vous connecter à votre serveur à distance comme suit : `powershell $Session = New-PSSession -ConfigurationName Microsoft. Exchange -ConnectionUri http://your.exchange.server/PowerShell/ -Authentication Kerberos -Credential (Get-Credential) Import-PSSession $Session`.Avant toute chose, identifiez les noms de vos serveurs : `powershell # Quel serveur mettre en mode maintenance ? $maintance_srv = « exchange1.yourdomain.com » # Où placer les files d’attente de messagerie ?` $target_srv = « exchange2.yourdomain.com » Ensuite, désactivez le composant HubTransport et videz le flux de messagerie : powershell Set-ServerComponentState $maintance_srv –Component HubTransport –State Draining –Requester Maintenance Restart-Service MSExchangeTransport Vérifiez s’il est en mode de vidange : powershell Get-ServerComponentState -Identity $maintance_srv -Component HubTransport Une fois qu’il affiche « Vidange », déplacez les copies de la base de données de boîtes aux lettres hors du serveur : powershell Set-MailboxServer $maintance_srv –DatabaseCopyAutoActivationPolicy Blocked Set-MailboxServer $maintance_srv –DatabaseCopyActivationDisabledAndMoveNow $true Maintenant, attendez quelques minutes que les copies actives soient déplacées. Vous pouvez vérifier l’état avec : powershell Get-MailboxDatabaseCopyStatus -Server $maintance_srv | Si le statut est « Monté », vous pouvez suspendre le nœud du cluster pour modifier le rôle PAM (Primary Active Manager) : `powershell Suspend-ClusterNode –Name $maintance_srv`.Une fois les bases de données déplacées et les bases de données montées supprimées, placez le serveur en mode maintenance : `powershell Set-ServerComponentState $maintance_srv –Component ServerWideOffline –State InActive –Requester Maintenance`.Vérifiez qu’il est bien en mode maintenance : `powershell Get-ServerComponentState -Identity $maintance_srv -Component ServerWideOffline`.Pour rétablir le fonctionnement normal, procédez en sens inverse : `powershell Set-ServerComponentState $maintance_srv –Component ServerWideOffline –State Active –Requester Maintenance`, `Resume-ClusterNode –Name $maintance_srv`, `Set-MailboxServer $maintance_srv –DatabaseCopyAutoActivationPolicy Unrestricted`, `Set-MailboxServer`.$maintance_srv –DatabaseCopyActivationDisabledAndMoveNow $false Set-ServerComponentState $maintance_srv –Component HubTransport –State Active –Requester Maintenance Terminez par une vérification de l’état du service : powershell Test-ServiceHealth $maintance_srv Et si vous souhaitez rééquilibrer les bases de données de boîtes aux lettres, exécutez : powershell cd $exscripts.\RedistributeActiveDatabases.ps1 -DagName votre-dag -BalanceDbsByActivationPreference Si vous souhaitez déplacer toutes les copies de boîtes aux lettres en masse :Exécutez la commande suivante sur PowerShell : `Move-ActiveMailboxDatabase -Server $target_srv -ActivateOnServer $maintance_srv -Confirm:$false`.Ensuite, effectuez un test de connexion : `PowerShell Test-MAPIConnectivity -Server $maintance_srv`.Enfin, vérifiez l’état général du DAG : `PowerShell Get-MailboxDatabaseCopyStatus` et `Get-ReplicationHealth -DatabaseAvailabilityGroup`.

Remarque : Sur certains systèmes, l’ensemble du processus peut sembler un peu fragile. Les transferts de données peuvent prendre quelques minutes et il arrive que les commandes ne semblent pas fonctionner immédiatement. La patience est de mise ; une seconde tentative ou un redémarrage rapide peuvent parfois résoudre le problème.

Résumé

  • Identifiez votre serveur et les destinations de votre file d’attente de courrier électronique.
  • Vidangez le flux de messagerie avec Set-ServerComponentState.
  • Déplacez les copies de la base de données des boîtes aux lettres hors du serveur.
  • Mettez le serveur en mode maintenance.
  • Effectuer des mises à jour ou des travaux sur le matériel.
  • Suivez les étapes inverses pour remettre le serveur en ligne.

Conclure

Mettre un serveur Exchange en mode maintenance n’est pas sorcier, mais c’est un peu délicat. Le faire manuellement permet de savoir exactement ce qui se passe, mais exige aussi de suivre attentivement chaque étape. Une fois la technique maîtrisée, le processus est assez simple ; il faut juste un peu de patience. J’espère que cela permettra à certains de gagner du temps. Croisons les doigts !