Just upgraded my companies mail server to Exchange 2010. It’s not a large affair, has about 10 mailboxes, 7GB store. The user estate is more forgiving than most, and half of them on holiday, so I had a bit of leeway.
It was previously running Exchange 2007 on a hyper-V VMs on a Dell quad-core server with 10GB of RAM and a handful of other VMs running.
First task was to setup a 2008R2 VM and install Ex2010, both of which completed without incident. Nice to not need to install a gazillion pre-requisites, as it is with Exchange 07 and 2008 vanilla.
At this point I notice performance issues. My Exchange 07 box had 4GB of RAM assigned to it, the Ex10 2GB (all I had left). Interactively the performance was dire, as was web access.
Changing both boxes to 3GB helped slightly – well, it made performance on both boxes poor. Moral of the story Exchange 200x, even for the most basic applications, needs 4GB of RAM to be acceptable.
Once most things were settled, I decided to go hell-for-leather and retire my Ex07 box. This was possibly the trickiest element of all!
Move mailboxes completed without incident, the 3GB mailbox taking just over two hours.
The Exchange uninstall would crash upon starting; it seems stopping all the services is necessary.
To uninstall the server I needed to remove the public folder store. Try as I might, I couldn’t – after deleting all PFs I could, and taken replicas off, various powershell scripts, still no joy.
So, the hackers tool of last resort? ADSIEdit
I opened the path shown and deleted the reference to the Public Folder. Success! I shut down Ex07 and gave Ex10 the memory it needed. Much better performance!
After some sanity checking and building of internet connectors, I change the NAT and Firewalls rules to swing new email to the Ex10 server.
All Email was bounced with an error message of
“Client host x.y.z.a UnknownDNSName”
I think this was caused by the fact I used OpenDNS.
Turning off the “Enable Forefront DNSBL checking” cured this, and (so far) no noticeable increase in spam
ActiveSync and Outlook anywhere took a bit of work to bring to life. The excellent https://www.testexchangeconnectivity.com/ helped me out with the Outlook Anywhere config errors. Didn’t help with ActiveSync, but sometimes, just sometimes, event log tells you exactly what’s wrong:
After adding the permissions, my iPhone buzzed into life automatically.
Overall, clearly NOT a migration approach suitable for a large scale exchange implementation with high availability requirements, but it was fairly smooth, and to my mind more reminiscent of a Exchange 2000 to 2003 upgrade than “step changes” we saw from 03 to 07 or 5.5 to 2000