Since Exchange 2007 was released and carrying on with Exchange 2010 part of the installation process is running setup commands /pl, /p, /ps, and /pd (more information here). Even during service pack upgrades some of the setup commands are needed. During each setup command an ExBPA pre-check is ran before making any changes to the infrastructure to ensure the environment is ready for the new version of Exchange. A common problem that I have noticed over the years is that when pre-check fail, for some reason or another, the administrators scramble to determine what is causing the failure. Since most of the time these commands are run after hours, now the administrator has to troubleshot this problem before the end of the maintenance window or face the wrath of management to explain why the environment wasn’t upgraded. Well wouldn’t it be nice just to run the ExBPA pre-check before scheduling the upgrade process? Well here are the steps how to.
So first things first, let’s take a look at the setup logs from an Exchange server that has been upgraded to Exchange 2007 SP3 and the steps the setup process used to determine if the infrastructure was prepared for Exchange 2007 SP3.
1. Navigate to C:Exchagne Setup LogsPreReqs and find the latest XML file (These files are very usage for troubleshooting Exchange setup problems are well).
2. If I open the file using internet explorer I would see that ExBPA used the parameters Mailbox, PrecheckUpgrade, and Prereqs
3. The other important part of this output is the master input file, which is the XML filed that was used by ExBPA
4. I can validate these XML files by navigating to the setup foldersetupserverrolescommonen. The master input file is the exbpa.config.xml file
Exchange 2010 pretty much works the same as Exchange 2007. Below is information on a server that is running Exchange 2010 SP1
1. Navigate to C:ExchangeSetupLogsPreRegs and find the latest XML file. You might see on the Exchange 2010 server a couple XML file. In my case, each XML file contained a different subset of parameter that ExBPA ran during the prereq check.
5. If I open the file using internet explorer I would see that ExBPA used the parameters ClientAccess, Bridgehead, PrecheckInstall, and Prereqs
2.
3. I can validate the master XML files by navigating to the setup foldersetupserverrolescommon. Again the mater file is exbpa.config.xml
Now that I know the location of the files lets walk through how to run the pre-checks from an Exchange server.
1. Copy the upgrade folder to an Exchange server (For example if you are upgrading to Exchange 2007 SP3 copy the SP3 installation folder to one of your Exchange servers)
2. Open up PowerShell and navigate to <Location of the SP3 folder>Setupserverrolescommon (we navigate to this location because we are coming to run the command line version of ExBPA)
3. Run this command from PowerShell:
exbpacmd –cfg “<location of the SP3 folder>setupserverrolescommonenexbpa.config.xml” –r PrecheckInstall –dat c:
(Now you can run any of the XML files that you deem necessary, here are a couple more examples
– [PS] D:sp3setupserverrolescommon>exbpacmd -cfg “D:sp3setupserverrolescommonenexbpa.config.xml” -r global -dat C:
– [PS] D:sp3setupserverrolescommon>exbpacmd -cfg “D:sp3setupserverrolescommonenexbpa.config.xml” -r Prereqs -dat C:)
Note: in large environments these commands can take a long time to run
4. The export file will be created on the c:
5. Once you have the export file can you can open the file from an ExBPA console or using Internet Explorer.
IE:
ExBPA:
These are common errors and will not prevent you from upgrading to the next Service Pack
Exchange 2010 is pretty much the same as Exchange 2007. In this example we are going to check to see if an Exchange 2007 environment is ready for Exchange 2010 SP1.
6. Copy the upgrade file to an Exchange server
7. Open up PowerShell and navigate to <Location of the SP1 folder>Setupserverrolescommon (we navigate to this location because we are coming to run the command line version of ExBPA)
8. Run this command from PowerShell:
exbpacmd –cfg “<location of the SP1 folder>essetupserverrolescommonenexbpa.config.xml” –r PrecheckInstall –dat c:
(Now you can run any of the XML files that you deem necessary, here are a couple more examples
– [PS] D:essp1setupserverrolescommon>exbpacmd -cfg “D:sp1essetupserverrolescommonenexbpa.config.xml” -r global -dat C:
– [PS] D:sp1essetupserverrolescommon>exbpacmd -cfg “D:sp1essetupserverrolescommonenexbpa.config.xml” -r Prereqs -dat C:)
Note: in large environments these commands can take a long time to run
9. The export file will be created on the c:. As you can tell there is a big size difference between the 2007 output = 6MB and the 2010 Output= 2KB
10. Once you have the export file can you can open the file from an ExBPA console or using Internet Explorer.
IE:
ExBPA:
There is no error reported