Last week I took a look at the routes available when moving to Exchange 2007 from previous Exchange installations. My lab setup is relatively simple consisting of one Domain Controller and one Exchange 2003 server. In this case a Single Forest transition is performed which is relatively simple. The four steps into this transition are:

  1. Build a new server and install Exchange 2007.
  2. Add that server to the existing Exchange organisation.
  3. Migrate mailboxes to the Exchange 2007 server.
  4. Decommission the Exchange 2003 server.

Eager to get on with it, I made a clean installation of Windows Server 2003 (Standard x64) and ensured it was up to date by installing SP2 and any other Windows updates that were available. I want to use this Exchange server in a mailbox role (amongst others), so I installed Internet Information Services, COM+ access, World Wide Web Publishing Service, and hot fixes for KB918980, KB904639, and KB904639 as required by the Exchange 2007 system requirements.

I used the best practices analyser tool to check for Exchange 2007 readiness. Running this tool, connecting to my domain and using the Exchange 2007 Readiness Check — I was prompted to prepare my Active Directory Schema for Exchange 2007. To do this, open up a command window, browse to the Exchange 2007 directory and then run /PrepareSchema. Remember to do this as a domain admin.

Starting up the Exchange installer, you could be prompted to install .NET Framework 2 and Windows PowerShell. As my host machine is a fresh deployment I had had to install both of these; clicking on the relevant links will take you to a direct download. After installing these, I moved on to the Exchange installation which is step 4 on the installer’s menu.

There are two installation options, typical or custom.

The typical option will install:

  • Hub Transport server role
  • Client Access server role
  • Mailbox server role
  • Exchange Management Tools

Choosing the Custom option will allow installation of these server roles, as well as:

  • Unified Messaging role
  • Edge Transport role
  • Clustered Mailbox roles

I went for the custom role as I want to install a Unified Messaging role on top of the typical ones.

Moving on, after server role selection, we need to define mail flow settings. To enable the server to interact with Exchange 2000 or 2003 servers a routing group connector is required. Clicking on Browse will show your existing Exchange servers; select one in the routing group that you want the new Exchange 2007 server to interact with. In my case I only had one option here.

The setup program now checks the system’s readiness for each role. In my case I had to install a .NET Framework 2 Hot fix and Media Encoder version 9 (for the Unified messaging role). Again direct links are provided in the setup program which is a nice touch. The readiness checks connect to the Internet and look for any updates before analysing the server-this way, known issues can be avoided before installation by insisting that the hot fixes are installed before you can move on. The Mailbox role check warned that if Outlook Web Access (OWA) is in use, then the free/busy folder on this server should be replicated with all others in the organisation after setup.

Once all checks show green (or at least yellow in the case of the Mailbox role) click on Install and go have a coffee. Mine took about 90 minutes to complete, but it was running on a virtual machine alongside two other virtual machines and a host of other apps in the background.

Now that installation is complete it’s a good idea to enter the product key. Open up the Exchange Management Console, select the server from Server Configuration, and then select Enter Product Key from the Actions menu. Once that’s done it’s time to move a mailbox and test OWA. Although the server did not request a restart, I quickly rebooted the machine; I tend to do this as a matter of habit after making major changes to a server.

Moving a mailbox is very straightforward. From within the Exchange Management Console, open up the Recipient Configuration branch and select Mailbox. A list of mailboxes in the Exchange organisation will be shown. Right-click on the mailbox to be moved to the new server and select Move Mailbox. From the Move Mailbox wizard, select the new server as the destination and check the Storage Group and Mailbox Database are set correctly. Continue selecting the preferred action in the event that corrupted messages are found in the mailbox. I opted to skip the move if this were the case. For scheduling, I moved the mailbox immediately. I’m glad to say that mailbox was migrated (or should I say transitioned) to the new server without any errors. To my surprise I was able to log on to the mailbox via OWA immediately.

All things considered, the transition to Exchange 2007 has been much less painful than I had first expected it to be. Obviously my lab environment is rather small and quite simple when compared to larger enterprise deployments but the underlying process would be much the same for any Single Forest domain. The most time-consuming part of the migration was installing the required packages and hot fixes-this burden was greatly reduced by the readiness checks which collected up to date information on known issues and their resolutions.

My conclusion? So far so good — I still have to find the time to create SSL certificates for the new server and enable Outlook Anywhere (RCP/HTTP) before I can decommission the existing Exchange 2003 box. If the initial deployment of Exchange 2007 is anything to go by, then I don’t expect to run into any major issues along the way.