Now that the first Update Rollup for Exchange 2010 SP1 has released, it is a great time to review the proper way to apply updates to Exchange Servers including DAGs.
First off, the recommended order to apply updates to Exchange roles are as follows:
- Edge Transport
- CAS (apply to Internet facing sites first and back-up any OWA customizations)
- HUB
- UM
- MB
After downloading the Update Rollup, it is time to install. If you try to install the update just by double-clicking it, the update will fail and the following error will be displayed: “Update Rollup…ended prematurely”
Too bad it doesn’t tell you what to do. To get the update installed successfully, the update must be initiated from an elevated command prompt.
Now run the update .msp file from the elevated command prompt:
The update wizard will launch and complete successfully:
Exchange 2010 SP1 provides some new scripts to help with performing maintenance on DAG members. To apply the update to a DAG member, the following steps should be taken:
Step 1 – From the Exchange installation path (in my case C:\Program Files\Microsoft\Exchange Server\V14\Scripts\), run: .\StartDagServerMaintenance.ps1 –ServerName “MBXServerName”
This script will:
- Run Suspend-MailboxDatabaseCopy for each database copy hosted on the DAG member
- Pauses the node in the cluster, which prevents it from being and becoming the PAM
- Sets the value of the DatabaseCopyAutoActivationPolicy parameter on the DAG member to Blocked
- Moves all active databases currently hosted on the DAG member to other DAG members
Step 2 – Install the update rollup as described above
Step 3 – From the Exchange installation path (in my case C:\Program Files\Microsoft\Exchange Server\V14\Scripts\), run: .\StopDagServerMaintenance.ps1 –ServerName “MBXServerName”
This script will:
- Run Resume-MailboxDatabaseCopy for each database copy hosted on the DAG member
- Resumes the node in the cluster, which it enables full cluster functionality for the DAG member
- Sets the value of the DatabaseCopyAutoActivationPolicy parameter on the DAG member to Unrestricted
Step 4 – (Optional) Use the RedistributeActiveDatabases.ps1 script to re-balance the active database copies across the DAG
Happy Updating…