Exchange 2010 SP3 on Windows Server 2012
I've been busy with a small Exchange 2007 to Exchange 2010 engagement the last few days and we decided to go with Windows Server 2012 for the base operating system. Luckily for us Exchange 2010 SP3 has been released and I was very excited to deploy on a new Windows Server 2012 OS.
I thought it would be a good idea to share my experiences as I picked up some issues during the deployment specifically the configuration of the Database Availability Groups.
I’m not going to cover the actual migration, just the Windows Server 2012 part and the issues I picked up during the Database Availability Group configuration. There are many great TechNet articles that cover the coexistence:
https://technet.microsoft.com/en-us/library/dd638158(v=exchg.141).aspx
First things first – let’s read the release notes on Exchange 2010 SP3:
https://technet.microsoft.com/en-us/library/jj965774(v=exchg.141).aspx
Two important points:
- Schema updates are required.
- A database availability group (DAG) member that’s running an older version of Exchange 2010 can move its active databases to a DAG member running a newer version of Exchange 2010, but can’t do the reverse. After a DAG member has been upgraded to a newer Exchange 2010 service pack, its active database copies can't be moved to another DAG member that’s running Exchange 2010 RTM or to a service pack that's older than the service pack installed on the DAG member.
There are also some minor changes in the prerequisites for Windows Server 2012.
Dot Net Framework 3.5 and Windows Powershell 2.0 needs the Windows Server 2012 image mounted as the side by side store (sxs) source files are not available locally after install – you only need to use the source files if you don’t have internet access to Windows Updates from your box – which was the case for me. You don’t have to uninstall Dot Net Framework 4.5 or Windows PowerShell 3.0.
To install Dot Net Framework 3.5 and Windows Powershell 2.0 via PowerShell using SXS source files:
Import-Module ServerManager
Install-WindowsFeature NET-Framework-Core,PowerShell-V2 –Source E:\Sources\sxs
Where E:\ is the drive where you mounted the Windows Server 2012 image file.
The rest of the MultiRole prerequisites (I install telnet client additionally for troubleshooting purposes):
Install-WindowsFeature Telnet-Client,RSAT-ADDS, RSAT-Clustering,Web-Server,Web-Basic-Auth,Web-Windows-Auth,Web-Metabase,Web-Net-Ext,Web-Request-Monitor,Web-Static-Content,Web-Mgmt-Console,Web-Lgcy-Mgmt-Console,Web-WMI,WAS-Process-Model,Web-Asp-Net,Web-Client-Auth,Web-ISAPI-Ext,Web-ISAPI-Filter,Web-Http-Errors,Web-Http-Logging,Web-Http-Redirect,Web-Http-Tracing,Web-Digest-Auth,Web-Dir-Browsing,Web-Dyn-Compression,NET-HTTP-Activation,RPC-Over-HTTP-Proxy –Restart
Install the Office 2010 Filter Packs found here: https://www.microsoft.com/en-us/download/details.aspx?id=17062
Install Office 2010 Filter Pack Service Pack 1 found here: https://www.microsoft.com/en-us/download/details.aspx?id=26604
The next step is the actual install – which I won’t cover as there are tons of content on the web around that.
After my brand spanking new multirole servers were deployed and base configuration completed it was time for the DAG configuration.
The first thing to know when creating the DAG on Windows Server 2012 is that your cluster name object (CNO) needs to be pre-staged, because of the permission changes in Windows Server 2012 with regards to computer objects.
- CNO enhancements in Windows Server 2012:
https://blogs.technet.com/b/wincat/archive/2012/08/29/windows-server-2012-failover-cluster-enhanced-integration-with-active-directory-ad.aspx
- The CNO pre-staging steps are outlined in this article:
https://technet.microsoft.com/en-us/library/ff367878(v=exchg.141).aspx
It’s important to ensure the above CNO pre-staging is correct as the cluster is only formed once you add the first mailbox server to the DAG. This is where my second issue popped up.
I noticed that during Add-DatabaseAvailabilityGroupServer the process got stuck at installing the Failover Cluster Components. I’m not entirely sure if this is Windows Server 2012 related or only happened to me on that day (it has never happened on Windows Server 2008 R2), but I killed the process and noticed that the components were indeed installed on the server. When I reran Add-DatabaseAvailabilityGroupServer itfinished successfully and the cluster was created .
I don’t like processes getting stuck and then killed in mid configuration, so before my second Add-DatabaseAvailabilityGroupServer I pre-installed the Failover Cluster components by using the following PowerShell cmdlet:
Install-WindowsFeature -Name Failover-Clustering –IncludeManagementTools
At this stage I encountered my third issue (yeah it was a tough day at work :-) ):
When the second server is added to the cluster, the cluster is changed to Node and File Share majority – thus using the predefined File Share Witness server (FSW) and Witness directory that you specified in New-DatabaseAvailabilityGroup.
For some reason my FSW cluster resource would just not go online with an error message 0x8007052e: "unknown user name or bad password".
- I confirmed all connectivity, permissions and firewall settings on my FSW and everything looked fine.
- Deleted and recreated the FSW manually – still no go.
Trying to avoid unnecessary time wasting I decided to just remove the cluster completely and start again (luckily PowerShell makes this very easy):
- Removed the nodes from the cluster: Remove-DatabaseAvailabilityGroupServer for both nodes.
- Removed the DAG configuration in Exchange: Remove-DatabaseAvailabilityGroup
- Checked the cluster to ensure the cluster is removed.
- Removed the Cluster Name Object.
- Pre-staged new CNO and reran New-DatabaseAvailabilityGroup and Add-DatabaseAvailabilityGroupServer
- Happy days! The FSW cluster resource came online.
Moral of the story: Sometimes it’s better and faster to start again than to troubleshoot for hours on end. I might have been able to get the FSW online with a little digging in the cluster logs, I have feeling that the CNO had some problem in AD, but with minimal deployment time I decided to reconfigure and luckily it worked out with minimal troubleshooting this time around.
The rest of the deployment went without a hitch, I’ll be migrating mailboxes soon and hopefully I don’t pick up any other anomalies along the way (if I do I’ll definitely add it as a blog post :-) ).
Hopefully someone will find the information above helpful when they deploy on Windows Server 2012!
Until next time.
Michael
Comments
Anonymous
January 01, 2003
The comment has been removedAnonymous
January 01, 2003
Hi Bing, Honestly, we haven't received any official statement from the Product Group and we also probably won't get any statement until Windows Server 2012 R2 RTM's. MichaelAnonymous
January 01, 2003
Hi Bob, This blog entry is about Exchange Server 2010 SP3 on Windows Server 2012. Cheers, MichaelAnonymous
January 01, 2003
Thanks Jeremy! I fixed it.Anonymous
March 03, 2013
How can you go from 2007 to 2013? We're still waiting on CU1?Anonymous
May 02, 2013
The comment has been removedAnonymous
August 26, 2013
there is a comma missing in the PS script "Web-Http-Tracing Web-Digest-Auth"Anonymous
September 10, 2013
I have followed the above to the letter but still cannot connect to the FSWAnonymous
September 30, 2013
Hi Michael, Can exchange 2010 run on Windows 2012 R2? BinhAnonymous
November 19, 2013
The comment has been removedAnonymous
November 27, 2013
Hi Michelle, Sorry for the late reply, only noticed the comment today. I've never experienced the above issue when importing the AD modules, but I would remove the ad management tools and reinstall them via server manager or powershell. What version of PowerShell are you using to import the module? MichaelAnonymous
March 16, 2014
Hi Micheal,
We are having exchange server 2010 on 2008 with DAG, we need to move it to 2012 server, Since we are using DAG, Can you tell us complete un-installation process of one server if its DAG.
JamesAnonymous
April 01, 2014
thankkuuuAnonymous
April 01, 2014
thankkuuuAnonymous
May 31, 2014
Awesome guide, Really helpful. But I like feature installation with Server Manger GUI method. I found one complete guide here.
Installing Exchange Server 2010 SP3 Prerequisites on Windows Server 2012Anonymous
July 29, 2015
Awesome! Thanks!Anonymous
August 19, 2015
Hi Michael,
Was this using the standard or enterprise version of server 2012? I want to try getting exchange 2010 working in a DAG on server 2012 standard edition as I believe this comes with clustering now, so you don't need enterprise edition.
Thanks,
DavidAnonymous
December 18, 2015
Good post. Thanks Michael.