Exchange 2013 Maintenance Mode

by Nuno Mota [Published on 6 Feb. 2013 / Last Updated on 6 Feb. 2013]

This tip talks about the replacement of the StartDagServerMaintenance.ps1 script introduced in Exchange 2010.

With Exchange 2013, Microsoft introduced many new features to further improve Database Availability Groups, or DAGs. One of these new features is called Maintenance Mode and it enables administrators to designate a server as in-service or out-of-service by using the Set-ServerComponentState cmdlet. With Exchange 2010, administrators had to use the StartDagServerMaintenance.ps1 script or manually prepare a DAG member for maintenance.

As with the script, Maintenance Mode is used to tell Exchange that a particular server should not be available to service clients. In a mailbox server, an administrator will typically perform a switchover to another server (if the server to be put in maintenance mode is hosting active database copies) and then use the Set-MailboxServer and Set-ServerComponentState cmdlet to put it into maintenance mode, preventing the active copies from being activated and disabling the Transport services:

Set-ServerComponentState <> -Component HubTransport -State Draining -Requester Maintenance

Suspend-ClusterNode <>

Set-MailboxServer <> -DatabaseCopyActivationDisabledAndMoveNow $True (this can be done manually by moving the active database copy(ies) to another server)

Set-MailboxServer <> -DatabaseCopyAutoActivationPolicy Blocked

Set-ServerComponentState <> -Component ServerWideOffline -State Inactive -Requester Maintenance

This cmdlet also applies to Client Access Servers which, when placed into maintenance mode, stops the server from acknowledging load balancer heartbeats and disables all proxy services.

Set-ServerComponentState <> -Component ServerWideOffline -State Inactive -Requester Maintenance

Featured Links