Posts Tagged ‘exchange upgrade’
Exchange Server Upgrade | Step-by-Step
The guide will cover upgrading an Exchange Server 2013 CU8 into Exchange 2013 CU15.
In a nutshell, this is the procedure:
-
Prepare the existing environment
- Download the latest binaries
- Remove Interim Updates
-
Perform Upgrade
- Enable Exchange Server maintenance mode (High Availability)
- Upgrade Schema
- Install Exchange Binaries
- Enable Exchange Server services
Prepare the existing environment
Download Exchange Server SP/RU/CU binaries
When you are performing an Upgrade, you can go ahead and install the latest Cumulative Update (CU). You DO NOT, need to install all previous CU’s one by one in an incremental way. This is because a CU is a full installation of Exchange Server plus a collection of all the updates, patches and changes that has been made available so far.
For an Example, if you are on Exchange Server 2016 RTM, you can straight away install CU4. Because CU4 will contain all changes made in each of the CU’s previously released.
Exchange 2016
Version | Blog post |
Exchange 2016 CU4 | Released: December 2016 Quarterly Exchange Updates |
Exchange 2016 CU3 | Released: September 2016 Quarterly Exchange Updates |
Exchange 2016 CU2 | Released: June 2016 Quarterly Exchange Updates |
Exchange 2016 CU1 | Released: March 2016 Quarterly Exchange Updates |
Exchange 2016 RTM | Exchange Server 2016: Forged in the cloud. Now available on-premises |
Exchange 2013
Remove Interim Updates
Now that you have downloaded the binaries, you need to get rid of the Interim Updates that may have been installed in your environment. In some cases, if an Interim Update is installed, Microsoft Exchange Server CU’s or SP’s cannot be installed. Therefore, before installing the binaries, read the release notes for any information on removal of interim updates. Below steps will guide for that;
- In Control Panel, double-click Programs and Features.
- In the Currently installed programs list, click Interim Update for Exchange Server 201X (KBxxxxxx), where xxxxxx is the Knowledge Base article number that is associated with the IU.
- Click Remove.
- At a command prompt, run sn.exe -Vu * to enable strong name verification.
- Run sn.exe –Vl to verify that strong name verification is enabled.
Perform Upgrade
Enable Exchange Server maintenance mode (High Availability)
If you have standalone servers in your environment, then an upgrade will require you to go in for a downtime. Why? Because the services needs to be stopped during the upgrade process. In such a scenario, skip to the Upgrade section.
However, if your environment consists multiple servers in terms of 2xCAS or 2xMBX or 2x(CAS+MBX) or any of a combined scenario, it is highly advised that you perform upgrading of the servers one by one. This will ensure that your environment will stay online using the rest of the high available servers taking the downtime away.
There’s a catch in here. Let’s say we have a 2 Mailbox Server scenario: Server A and B. You decide to mount all databases into ServerA and upgrade Server B. Although this seems an okay way to do, it is not the case. Reason is that the Active Manager and other Exchange backend workers doesn’t know that you are doing a planned maintenance. Thus, the workers will think that the server is in a failed state. Can we fix this? Absolutely. You have to take the services on Server B or the server that you are about to do the upgrade into ‘Maintenance Mode’.
Below steps will guide you to do so;
- Run Exchange PowerShell as Administrator.
-
Run below command to drain connections on the Hub Transport service
Set-ServerComponentState <SERVER> -Component HubTransport -State Draining -Requester Maintenance
-
Run below command to disable cluster services
Suspend-ClusterNode <SERVER>
- Run below command to prevent databases from being mounted on the server. It will also immediately move any mounted databases on the server to other servers if copies exist and are healthy.
Set-MailboxServer <server> -DatabaseCopyActivationDisabledAndMoveNow $true
- Verify that no mailbox databases are mounted on the server.
Get-MailboxDatabaseCopyStatus
-
Run below command to block databases being automatically activated on the specified Mailbox server.
Set-MailboxServer <server> -DatabaseCopyAutoActivationPolicy Blocked
-
Run below command to put the state of all components together to Inactive.
Set-ServerComponentState <server> -Component ServerWideOffline -State Inactive -Requester Maintenance
- Close PowerShell.
Upgrade Schema
Now that the server has been put to maintenance mode and you are ready to proceed with the Upgrade process. First thing we need to do is, update the schema. This is critical because without the required schema updates, the setup will not proceed.
- Run command prompt as Administrator.
-
Run below command
Setup.exe /PrepareSchema /IAcceptExchangeServerLicenseTerms
-
Run below command
Setup.exe /PrepareAD /IAcceptExchangeServerLicenseTerms
-
Run below command
Setup.exe /PrepareSchema /IAcceptExchangeServerLicenseTerms
- Navigate to the Exchange installation binaries folder.
- Run setup.exe.
-
On the Check for Updates window, select your choice and click OK.
- On the Upgrade window, click Next.
- On the License Agreement page select “I accept ….” and click Next.
- On the Readiness Check page, ensure no prerequisites are pending. Click Next to proceed.
- Now the installation will proceed.
- Once the installation is finished, click Finish.
- Restart the server.
Now that the server has been upgraded successfully we can resume Exchange services back to normal mode. Follow the below steps.
- Run Exchange PowerShell as Administrator.
-
Run below command to enable connections on the Hub Transport service.
Set-ServerComponentState <SERVER> -Component HubTransport -State Active -Requester Maintenance
-
Run below command to enable cluster services
Resume-ClusterNode <SERVER>
-
Run below command to enable databases from being mounted on the server.
Set-MailboxServer <server> -DatabaseCopyActivationDisabledAndMoveNow $false
-
Run below command to enable databases being automatically activated on the specified Mailbox server.
Set-MailboxServer <server> -DatabaseCopyAutoActivationPolicy Unrestricted
-
Run below command to put the state of all components together to Activate.
Set-ServerComponentState <server> -Component ServerWideOffline -State Active -Requester Maintenance
- Close PowerShell.
Now that your server is back in the game. It’s time to upgrade the second server. Perform the steps above from the beginning to do so.
Happy Upgrading!! J