I am knee deep in an Exchange migration currently of about 850 users from an Exchange 2007 environment to an Exchange 2010 environment. The mailbox databases are connected to a SAN via fiber and from the testing I've done so far I figure I can get about 24GB of mailboxes moved a night.
I have about a million questions with regard to this migration but right now but I think the most important is the following:
Is there a standard best practice for moving mailboxes?
- Should I spread users out across all the mailbox databases?
- Should I fill them up to say 70GB one at a time?
- Move a chunk of users to a mailbox every night?
- What’s the best way to keep track of how full databases are, where users are, etc.
- Is there a good way to spread users out automatically or should I just do it by best judgment?
Obviously I’ve never done a move like this so I guess I’m just wondering how I should approach this. Thanks.
EDIT:
I just realized that I should post my database structure, I think it may help show what I'm doing. Here are some pieces I forgot to mention:
- I have a DAG set up for 3 Exchange mailbox servers. Two on-site and one off-site
- I have 28 databases cut up across the 2 on-site mailboxes (14 and 14) with the third as a fail over.
- Currently about 2 TB of mail to migrate so we have a little bit of breathing room on these servers
I'd certainly suggest moving chunks of users out of their core hours (at night, as you say). Make sure the mailbox quotas on the new store are big enough!
As for how you load databases, I'd suggest you think about downtime to restore, say, 70gb of data vs. the tolerance of people in that database. You might group people in terms of the tier of service they want, or department, whatever works best for you. All I'd suggest is that whatever you do, you should structure it somehow and you should be consistent.
I found an informative article going over the different types of Exchange mailbox distributions and information on how to balance them.
To paraphrase a lot of what is said, there are basically 5 ways to migrate Exchange to a new environment.
I believe it will be useful to use approach 5 because we designed our databases with resiliency in mind and so there is less of a need to worry about database failures. Another thing that will be beneficial using this approach is that there will be a somewhat uniform growth in database size since the databases are randomly populated. Database management in the future may be easier because of this as well.
I found this built in method of distributing mailboxes in Exchange 2010, which is exactly what I was looking for. So now I guess the question becomes when to migrate users instead of how.