Exchange 2010 Installation Fails with Event ID 5023 and 5003 MSExchangeTransport

This was really weird for me to see but I was installing Exchange 2010 Hub Transport and Mailbox Server Role on the same box today and I faced a setup failure a couple of times. Assuming that it would run correctly next time I uninstalled and reinstalled it too. But, it didn’t seem to help.

Here is what happened during install:

HT Sever role failed to install and when I reviewed the application logs I got some series of errors like below:

Log Name:      Application
Source:        MSExchangeTransport
Date:          5/21/2010 11:57:41 AM
Event ID:      5003
Task Category: Routing
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      Exchange2010.exchange.local
Description:
Microsoft Exchange couldn’t load configuration information for routing. The process will block and retry the operation in 10 seconds.

Log Name:      Application
Source:        MSExchangeTransport
Date:          5/21/2010 11:57:51 AM
Event ID:      5023
Task Category: Routing
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      Exchange2010.exchange.local
Description:
A transient configuration error was detected while the routing configuration was loading. Exception details: Unable to determine the local Active Directory site : Microsoft.Exchange.Transport.Categorizer.TransientRoutingException: Unable to determine the local Active Directory site
   at Microsoft.Exchange.Transport.Categorizer.AdSiteRelayMap.ValidateConfig(ExchangeTopology topology, ExEventLog eventLogger, DateTime timestamp)
   at Microsoft.Exchange.Transport.Categorizer.RoutingTables.ValidateConfig(RawRoutingConfigData rawConfigData)
   at Microsoft.Exchange.Transport.Categorizer.RoutingTables.PopulateTables(RawRoutingConfigData rawConfigData)

and ExchangeSetup.log showed some entries like below:

[05/21/2010 13:34:56.0667] [2] Service checkpoint has progressed. Previous checkpoint=’0′ – Current checkpoint=’1′.
[05/21/2010 13:34:56.0667] [2] Will wait ‘90000’ milliseconds for the service ‘MSExchangeTransport’ to reach status ‘Running’.
[05/21/2010 13:36:26.0839] [2] Service ‘MSExchangeTransport’ failed to reach status ‘Running’ on this server after waiting for ‘90000’ milliseconds.
[05/21/2010 13:36:26.0839] [2] The remaining time for service status change is ’00:13:05′.
[05/21/2010 13:36:26.0839] [2] [WARNING] Service checkpoint has not progressed. Previous checkpoint=’1′- Current checkpoint=’1′.
[05/21/2010 13:36:26.0839] [2] Previous service status query time is ‘5/21/2010 9:34:56 AM’.
[05/21/2010 13:36:26.0839] [2] Current service status query time is ‘5/21/2010 9:36:26 AM’.
[05/21/2010 13:36:26.0839] [2] Will wait ‘90000’ milliseconds for the service ‘MSExchangeTransport’ to reach status ‘Running’.
[05/21/2010 13:37:57.0012] [2] Service ‘MSExchangeTransport’ failed to reach status ‘Running’ on this server after waiting for ‘90000’ milliseconds.
[05/21/2010 13:37:57.0012] [2] The remaining time for service status change is ’00:11:35′.
[05/21/2010 13:37:57.0012] [2] Service ‘MSExchangeTransport’ failed to start. Check the event log for possible reasons for the service start failure.
[05/21/2010 13:37:57.0012] [2] [ERROR] Unexpected Error
[05/21/2010 13:37:57.0012] [2] [ERROR] Service ‘MSExchangeTransport’ failed to start. Check the event log for possible reasons for the service start failure.
[05/21/2010 13:37:57.0012] [2] Ending processing.
[05/21/2010 13:37:57.0012] [1] The following 1 error(s) occurred during task execution:
[05/21/2010 13:37:57.0012] [1] 0.  ErrorRecord: Service ‘MSExchangeTransport’ failed to start. Check the event log for possible reasons for the service start failure. 
After doing some research and reading on internet I found a resolution to this. The cause of the problem is that the msExchServerSite attribute on the server object does not get updated automatically and the Microsoft Exchange Service Fails to start. Just because the service fails to start in the way it is expected to setup thinks that it did not complete and stops installing everything else.

Fix to this problem:

Is not really a very convenient way in fact so I would call it a work around instead of a FIX.

1. I used SMS Trace utility to monitor the progress of setup. This is shipped with SCCM Resource Kit and indeed is a great utility to monitor .log files in real time.

2. Opened ExchangeSetup.log file and continued monitoring it. Before the setup could reach the stage where above entries are logged in the setup log I opened ADSIEDIT and did following:

a. Browsed to location: CN=USA,CN=Sites,CN=Configuration,DC=exchange,DC=local

b. Copied the distinguishedName value of the site and pasted it in a notepad.

c. Again browsed to location: CN=Servers,CN=Exchange Administrative Group (FYDIBOHF23SPDLT),CN=Administrative Groups,CN=Exchange,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=exchange,DC=local

d. Kept refreshing this location until my Exchange 2010 HT server name papered there. The moment it appeared I did the below steps real quick.

e. Opened Properties and located attribute: msExchServerSite

f. Double clicked on the attribute and pasted the value that I copied from site distinguishedName.

After investigating it further the problem turned out to be with AD. You must have the replication working correctly indeed but also the AD sites should also have correct configuration. Site configuration must contain correct subnets associated with it as well at least one GC in the site where you are installing the Exchange 2010 HT server role.