Preparing your infrastructure
Exchange Server 2007 is going to have stringent requirements for servers within your forest. For starters, Exchange 2007 cannot co-exist with an Exchange 5.5 server. If your forest contains any Exchange 5.5 servers, you won't even be able to install Exchange Server 2007.
I recently had a discussion with an Exchange Server administrator who is "stuck" using Exchange 5.5. His company is using a mission-critical application that piggybacks on top of Exchange 5.5. Unfortunately, the company that developed the application went out of business a few years ago, so there is no hope for an upgrade.
If phasing out Exchange 5.5 isn't an option for your company either, but you still want to deploy Exchange 2007, consider placing Exchange 2007 in a separate forest. Doing so will allow you to bring Exchange 2007 into your organization without having to phase out Exchange 5.5.
Keep in mind, though, that you won't be able to centrally manage all your Exchange servers in such a deployment. Also, you'll probably have to treat the Exchange 2007 organization like a foreign mail system linked to your organization.
Take a look at your domain controllers, too. Exchange 2007 will support the use of Windows 2000 domain controllers, but your global catalog server must be running Windows Server 2003, as well as the domain controller that acts as the schema master (presumably Longhorn Server would be another option).
Buying new hardware
If you are planning on eventually deploying Exchange Server 2007, you are going to need new hardware. I'm not saying you have to order a new server today, but you need to at least budget for new hardware as a part of your deployment plans.
Exchange 2007 will only work on 64-bit servers. Actually, Microsoft has created a 32-bit version of Exchange 2007, but it is intended solely for testing and training purposes, and will not be supported in a production environment.
A 64-bit operating system allows Exchange Server 2007 to overcome the memory constraints that Exchange 2003 faces today. The 32-bit version of Windows Server 2003 uses a 4 GB memory model. By default, 2 GB is reserved for kernel-mode processes; the other 2 GB is used for user-mode processes.
You can alter the memory allocation by using the infamous /3GB switch in your server's BOOT.INI file, but doing so tends to create low page table entries, which creates server instability. 64-bit versions of Windows use a much larger memory model, so the problems I just mentioned become a non-issue.
So why not just run Exchange Server 2003 on a 64-bit server? Well, it just won't work. Exchange Server 2003 is a 32-bit application. Normally, the WOW64 (Windows on Windows 64) layer will allow 32-bit applications to run on a 64-bit Windows operating system. The major underlying requirement though is that the 32-bit application must run completely in user mode. Exchange Server 2003 contains some kernel-mode code, and therefore cannot run on a 64-bit server.
The bottom line is that, unless Microsoft has something in the works that I don't yet know about, in-place upgrades from Exchange 2003 to Exchange 2007 are going to be impossible. You are going to need at least one new 64-bit server so that you can install Exchange 2007 on it, and then perform an Exchange 2003 to Exchange 2007 migration.
About the author: Brien M. Posey, MCSE, is a Microsoft Most Valuable Professional for his work with Exchange Server, and has previously received Microsoft's MVP award for Windows Server and Internet Information Server (IIS). Brien has served as CIO for a nationwide chain of hospitals and was once responsible for the Department of Information Management at Fort Knox. As a freelance technical writer, Brien has written for Microsoft, TechTarget, CNET, ZDNet, MSD2D, Relevant Technologies and other technology companies. You can visit Brien's personal Web site at http://www.brienposey.com.
Where do they think the money comes from for a small company to even consider this option? Enough is enough already.
"The bottom line is that, unless Microsoft has something in the works that I don't yet know about, in-place upgrades from Exchange 2003 to Exchange 2007 are going to be impossible. You are going to need at least one new 64-bit server so that you can install Exchange 2007 on it, and then perform an Exchange 2003 to Exchange 2007 migration."
In-place upgrade scenerios from Exchange 2000 or Exchange 2003 to Exchange 2007 are ruled out. An Exchange 2007 server will only run on Windows Server 2003/Longhorn Server x64 editions, and Windows Server 32-bit to 64-bit upgrades are not supported at this time.
You wrote: "So why not just run Exchange Server 2003 on a 64-bit server? Well, it just won't work."
That's not quite true. You cannot run Exchange Server 2003 on 64-bit Windows, but you can run 32-bit Windows on x64 servers. The kernel mode parts of Exchange Server 2003 should run fine on a 64-bit machine as long as it runs the x86-32 edition of Windows.
This is very painful for a small nonprofit organization. We have only 50 users and the performance reasons for going to 64-bit don't resonate with us at all. We just got a new server for our Exchange 2003 less than two years ago, and we can't afford to replace it for another three years. Having software assurance seems like waste of money if we can't upgrade the software because the upgrade requires new hardware that we can't buy.
If you've purchased a server in the last two years, you should really see if it's an EMT-64 (Intel) or x64(AMD) capable machine. I had the same scenario; I had a 1.5 year old server that I hadn't thought about being EMT-64 architecture. After researching I found that it was. It's a dual 2.8 GHz XEON with 4 GB RAM. I created a temporary mail server with Exchange 2003, moved my mailboxes there and then did a clean install of Windows Server 2003 x64 along with Exchange 2007. I migrated my users over to it and created the connectors and I'm up and running. I then pulled the temp server out of the organization and no more Exchange 2003. It was really straight forward.
Folks should really look at their hardware. Most servers in the last year or so will be EMT-64 or x64 capable whether it is an Intel processor or an AMD chip.
Regarding Stefan W.'s feedback:
"That's not quite true. You cannot run Exchange Server 2003 on 64-bit Windows, but you can run 32-bit Windows on x64 servers. The kernel mode parts of Exchange Server 2003 should run fine on a 64-bit machine as long as it runs the x86-32 edition of Windows."
I don't think Stefan quite understands what the article is referring to. I run 32-bit Windows on Intel and AMD 64-bit chips all the time. In fact my old Exchange 2003 server was doing just that. I guess the misunderstanding is the fact that if you run a 32-bit OS, the chip will in fact run 32-bits and work within the memory limitations of that. Load a 64-bit OS and the chip works within the parameters designed for it. But the fact remains, there is no direct upgrade from Exchange 2003 to 2007. It must be a migration.
Do you have comments on this tip? Let us know.
Please let others know how useful this tip was via the rating scale below. Do you have a useful Exchange Server or Microsoft Outlook tip, timesaver or workaround to share? Submit it to SearchExchange.com. If we publish it, we'll send you a nifty thank-you gift.
This was first published in September 2007