Google Apps Migration for Microsoft® Exchange Administration Guide • Google Apps for Business • Google Apps for Education
Administration Guide (PDF) 2 Google Apps Migration for Microsoft ® Exchange Administration Guide
Copyright, Trademarks, and Legal Google Inc. 1600 Amphitheatre Parkway Mountain View, CA 94043 www.google.com Part number: GAMME_2.2_6 June 8, 2011 © Copyright 2010 Google Inc. All rights reserved. Google and the Google logo are trademarks, registered trademarks, or service marks of Google Inc. All other trademarks are the property of their respective owners. Use of any Google solution is governed by the license agreement included in your original contract.
Google Apps Migration for Microsoft ® Exchange Administration Guide
Contents Chapter 1: Introduction....................................................................................... 7 About this guide..................................................................................................... 7 How to get support ................................................................................................ 8 Disclaimer for third-party product configurations ................................................... 8 Chapter 1: Overview............................
Step 2 .................................................................................................................. 44 Step 3 .................................................................................................................. 46 Step 4 .................................................................................................................. 53 Monitor migration.................................................................................................
Introduction Chapter 1 About this guide This guide is provided to help administrators understand and implement Google Apps Migration for Microsoft® Exchange, a utility that lets you migrate email, calendar, and contact data from into Google Apps from: • Microsoft® Exchange • Any IMAP-compliant server • PST files • Another Google Apps Account What’s in this guide This guide contains the following information: • An overview of the features and functionality • An explanation of the architecture an
Where to find the latest information about the utility You can find information about the latest version of the utility, including new features and fixed issues, and a link to the latest documentation at the following address: https://www.google.com/support/a/bin/answer.py?hl=en&answer=162794 How to provide comments about this guide Google values your feedback. If you have comments about this guide or suggestions for its improvement, please send an email message to: enterprise-apps-doc-feedback@google.
Overview Chapter 1 Features Google Apps Migration for Microsoft® Exchange is a server-side tool that migrates your company’s email, calendar and contact data from Microsoft Exchange, IMAP server, or PST file to Google Apps. With the tool, migrations are: • Scalable: set up a small migration in 3 steps, with expanded control as required for large migrations. • Server-Level: migrate hundreds of users at the same time.
• Ability to migrate to Exchange Servers using either your administrator credentials or via an Outlook profile. The latter helps you migrate from Hosted Exchange by running the tool from outside the hosting service. • Ability to get an estimate of how many emails, calendar events and contacts you will be migrating for a set of users before running the migration. This is very useful in planning the migration.
Google Apps Migration for Microsoft® Exchange offers a single solution for migrating your data from Microsoft® Exchange, IMAP mail servers, and PST files. The following table provides an overview of the similarities and differences between Google Apps Migration for Microsoft® Exchange and other solutions provided by Google.
Solutions Data Mail Google Apps Sync for Microsoft Outlook® (Microsoft® Exchange 2003, 2007, and 2010) • Migration managed by individual users • Migration implemented via Microsoft Outlook® client • Migrates directly from your Microsoft® Exchange Server to Google Apps • Migrates mail for one user Google Apps Migration for Microsoft Outlook® (Microsoft® Exchange 2003, 2007, and 2010) Calendar and Contacts • Migration managed by individual users • Migration implemented via a migration wizard •
Architecture Google Apps Migration for Microsoft® Exchange is run on one or more client machines in your network, with a single instance of the utility on each client. If you run more than one instance of the utility, then those multiple instances run in parallel. Each instance of the utility migrates a specific list of users. The utility is multi threaded, with a thread opened for each user that’s being migrated.
For more information about configuring Google Apps, see “Configure Google Apps” on page 25. Mail Server Google Apps Migration for Microsoft® Exchange requires one administrative account on your Microsoft® Exchange Server that has read/write permission for each user’s mailbox. The Microsoft® Exchange permission Receive As is sufficient for this task. For other mail servers, see your mail server administration documentation. For IMAP migration, you don’t need an administrator’s account or password.
Architecture and Deployment Scenarios Chapter 2 Architecture The following diagram illustrates how Google Apps Migration for Microsoft® Exchange gets users’ data and migrates it to Google Apps. Microsoft® Exchange Server IMAP Server 3 2 Google Apps Migration for Microsoft® Exchange Microsoft Outlook® PST Files 5 Google Apps 4 1 List of Users to Migrate 1. The utility reads the list of users you want to migrate. You create the list of users ahead of time.
4. The utility transforms email data to MIME. (Microsoft Outlook® is required only if you are migrating from Microsoft® Exchange Server or PST files.) 5. The utility makes a WinHTTP connection to Google Apps. Using 2-legged OAuth, the utility logs in to the users’ Google Apps accounts, and writes the transformed message-store data to each user’s account. Email is processed at a maximum rate of one message per second per user, assuming that no latency is introduced by mail server or network performance.
Once you have data from your pilot test, you can plan the migration of the rest of your users, including the hardware resources you’ll need, and the amount of time you’ll need to devote to the process. Topology A single instance of Google Apps Migration for Microsoft® Exchange runs on an intermediary client machine between your source server and Google Apps. You can migrate the data from one or more servers, and you can deploy one or more clients for each server.
Multiple Servers, Each With Single Client Source Server Google Apps Migration for Microsoft® Exchange Client Machine Source Server Google Apps Google Apps Migration for Microsoft® Exchange Client Machine Multiple Servers, Each With Multiple Clients Google Apps Migration for Microsoft® Exchange Source Server Client Machine Google Apps Migration for Microsoft® Exchange Client Machine Google Apps Migration for Microsoft® Exchange Source Server Client Machine Google Apps Migration for Microsoft® Exchan
Parallel Processing Each client machine simultaneously processes the number of users based on the user restriction you specify. The utility defaults to 25. The amount of data processed at any one time depends on the number of users you have configured for each client machine, and the number of client machines you are using. Google Apps Migration for Microsoft® Exchange is capable of processing, and Google Apps can receive, message data at the rate of 1 message per user per second.
Google Apps Migration for Microsoft ® Exchange Administration Guide
Preparing for Your Migration Chapter 3 21
What to expect after a Google Apps pilot deployment If you have gone through the experience of a Google Apps pilot deployment, and you implemented dual delivery for your pilot users, Google Apps removes duplicate messages resulting from the following scenarios: • Dual delivery through your Microsoft® Exchange Server • Dual delivery through an edge appliance or service • Dual delivery through Google Apps Note: You have the option to configure Google Apps Migration for Microsoft® Exchange to migrate onl
Decide on a time frame You need to decide on when the migration will begin, over what period of time you will migrate data, and what access your users will have to your existing email server infrastructure before, during, and after the migration. The following scenario is one example of how to stage a migration with minimal disruption to your enterprise. Time frame Activity Thursday to Friday Provision users. Friday end of business Start receiving mail in Google Apps.
• eLearning videos • Quick reference sheets • Helpdesk training and resources • User Help Center • Google Apps professional training Have users prepare exclusion folders if necessary When you configure your migration, you can elect to exclude specific top-level folders. A toplevel folder is any folder at the same level as the Inbox folder.
Migrate your shared contacts to Google Apps Before you migrate your users, you should migrate your shared contacts to Google Apps so that your users have immediate access to your full address list as soon as they’re migrated.
Create lists of the users you want to migrate Google Apps Migration for Microsoft® Exchange relies on a list of users so that it knows whose data to migrate. For each group of users you want to migrate, you need to provide a CSV file of user names. If you plan to use multiple client machines, you need a separate list for each client, and each list must contain a unique set of users. We recommend each list contain 500-1000 users.
• If you are migrating from Microsoft® Exchange Server, we strongly recommend that the user names in Google Apps match the existing user names in your mail server. This method lets you create user lists with just one name or SMTP address per line, and is consequently less error prone. • Each instance of the utility has to reference a unique list of users in order to avoid corrupting the status information for each user’s data.
PST Migration You can use the utility to migrate PST files. If you want to migrate PST files, you need to set up a folder structure to accommodate those files. Note: Google Apps Migration for Microsoft Exchange cannot migrate password-protected PST files. Disable password protection for PST files before you attempt to migrate, or migration will fail. You need one top-level folder. Within that top-level folder, you need an individual folder for each user whose PST files you want to migrate.
Set up access to your Microsoft® Exchange or IMAP Server Microsoft® Exchange Server Google Apps Migration for Microsoft® Exchange supports the following version of Microsoft® Exchange Server: • Microsoft® Exchange 2003 • Microsoft® Exchange 2007. • Microsoft® Exchange 2010. If you are using Microsoft® Exchange 2007, we recommend that you upgrade to Service Pack 3.
Prepare your Microsoft® Windows client machines Each client machine that runs the migration utility needs to have the following minimum configuration: • Microsoft® Windows: Windows XP SP3, Windows Vista Business SP1 or later, Windows Server 2003 SP 2 or later Note: We have seen increased performance in terms of the number of simultaneous threads you can run with Microsoft® Windows Server 2003 and up. Current testing indicates that 25 simultaneous threads is an optimal number with this configuration.
Mail . Mail data Migrated to Google Apps Email messages Notes All email in top-level folders is migrated. A top-level folder is any folder that resides at the same level as your Inbox folder. You have the option to exclude specific toplevel folders from migration. Email state (read vs. unread) Folders and nested subfolders Folders map to labels in Google Mail. (Labels in Gmail) You can elect to omit top-level folders from migration. If you omit a folder, its subfolders are also omitted.
Mail data Migrated to Google Apps POP/IMAP account Notes IMAP or POP account settings don’t import from your Microsoft® Exchange profile. You can add an account to your Google Apps profile after migration. (Microsoft® Exchange only) Pop messages (Microsoft® Exchange only) Shared mailboxes (Microsoft® Exchange only) Category definitions Categories aren’t available in Google Mail. (Microsoft® Exchange only) Category assignments Categories aren’t available in Google Mail.
Calendar data in Microsoft® Exchange Migrated to Google Apps Notes Optional attendees Calendar attachments Rich content in event descriptions (images, links, bold, italic) Category definitions Categories aren’t available in Google Calendar.
Personal Contacts Personal contact data in Microsoft® Exchange Migrated to Google Apps Notes All personal contacts Includes all fields (File As, images, notes, etc.). Multiple contact folders Separate contacts folders don’t to Google Apps. Instead, all contacts from all folders are migrated, and then appear together in Google Apps under My Contacts. You can reorganize them using Google groups. Personal distribution lists Mailing lists don’t migrate to Google Apps.
Global Contacts Global contact data Migrated to Google Apps Notes Domain contacts You need to migrate domain contacts separately, using a utility like Google Apps Directory Sync. For more information, see “Migrate your shared contacts to Google Apps” on page 25. Out-of-domain contacts You need to migrate out-of-domain contacts separately, using a utility like Google Apps Directory Sync. For more information, see “Migrate your shared contacts to Google Apps” on page 25.
Google Apps Migration for Microsoft ® Exchange Administration Guide
Migration Chapter 4 To start your migration, simply run the utility on each client machine. When you run the utility, the migration wizard opens and prompts you for connection, authentication, and configuration information. To run Google Apps Migration for Microsoft Exchange: Click Start > All Programs > Google Apps Migration > Google Apps Migration. If during your configuration you click Cancel before clicking Save or Migrate in Step 4, then the information you entered is lost.
Review Before you begin your migration, make sure you’ve addressed the following: • “Provision your users in Google Apps” on page 24 • “Configure Google Apps” on page 25 • “Set up access to your Microsoft® Exchange or IMAP Server” on page 29 • “Prepare your Microsoft® Windows client machines” on page 30 For additional information about all the preparations you need to make before you migrate your data, see “Preparing for Your Migration” on page 21.
Step 1 In this first step, you can choose a Server Type of either Exchange or IMAP. The options for this step change based on which type of server you choose.
1. Provide the following information: Setting Use my most recent migration settings Description Select this option to use the settings from your most recent configuration file. If this is your first migration and you have not saved any previous settings, this option has no effect. Once you have selected this option and saved your migration settings, the next time you run the utility, your settings are loaded and the wizard opens to the Review Dialog step.
Setting Description • Outlook Admin profile Select the Outlook administrator profile you want to use to log in to your hosted Exchange Server. Specify a folder with PST files Use this option to migrate data in PST files. • Folder with PST files Browse to the folder that contains the PST files you want to migrate. 2. Click Next.
1. Provide the following information: Setting Use my most recent migration settings Description Select this option to use the settings from your most recent configuration file. If this is your first migration and you have not saved any previous settings, this option has no effect. Once you have selected this option and saved your migration settings, the next time you run the utility, your settings are loaded and the wizard opens to the Review Dialog step.
Setting Description IMAP Port Enter the connection port on the IMAP server. IMAP Path Prefix Enter the IMAP folders' path prefix that is common to all folders. This usually is the IMAP namespace for the folder names. For example, if the IMAP folder listing for a user is: INBOX INBOX.Sent INBOX.Drafts ... and so on, then INBOX is the path prefix. For another example, if the IMAP folder listing is: user.user1.INBOX user.user1.Sent user.user1.Drafts ... and so on, then the path prefix is user.user1.
Step 2 1. Provide the following information: Setting Google Apps Domain name Description Enter the name of the Google Apps domain to which you are migrating email. For example: electric-automotive.com Google Apps Two-legged OAuth • Consumer key Enter the consumer key for your Google Apps domain. You can find the key in the Google Apps control panel in the following location: Advanced Tools tab > Authentication > Manage OAuth domain key > OAuth consumer key.
Setting • Consumer secret Description Enter the consumer secret for your Google Apps domain. You can find the value in the Google Apps control panel in the following location: Advanced Tools tab > Authentication > Manage OAuth domain key > OAuth consumer secret. For more information, see “Configure Google Apps” on page 25. Select a file with the list of users to migrate Click Browse to locate the CSV file with the names of the users you want to migrate.
Step 3 The options in this step change depending on whether you chose Exchange or IMAP.
1. Provide the following information: Setting Select the data you wish to migrate Description If you are migrating from an Exchange Server, you have the option to import email, calendar, and contacts. Select the check box for each type of data you want to migrate. When select Email messages, everything in your Inbox folder (including subfolders) and in other top-level folders (and their subfolders) is migrated, with the exception of messages in your Deleted Items and Junk E-Mail folders.
Setting Restrict migration to ___ users at a time Description Select this option to enter the number users you want to migrate at one time on this client. A separate thread is opened for each user. If you do not select this option and specify a number, the utility defaults to 25 users. If you are using Microsoft® Windows Server 2003 or later, we have found that 25-50 users is an optimal setting, depending on the machine’s configuration. The utility processes one message per second per user.
Step 3: IMAP migration Migration 49
1. Provide the following information: Setting Migrate only email sent or received on or after Description Select this option if you want to set a beginning date for your migration. When you set this option, only messages sent or received on this date and afterward are migrated. If you select this option, enter a date (MM/DD/ YYYY), or click the arrow to select a date. The date is effective as of 12:00:00:01 AM GMT (1/100 of a second after midnight on that date).
Setting Do not migrate mail from these top-level folders Description Select this option to exclude specific top-level folders from migration. Any folder at the same level as the inbox is considered a top-level folder. Enter a comma-separated list of folder names. If you enter subfolder names, those are ignored by the utility. For information about preparing exclusion folders, see “Have users prepare exclusion folders if necessary” on page 24.
2. Click Next.
Step 4 The information displayed in these screens is a little different depending on whether you chose Exchange or IMAP in Step 1. The same procedures apply to both, however.
Step 4: IMAP migration 1. Review your migration settings. If you want to change a value, click edit. 2. Select Migrate all data to overwrite any previous migrations. Leave the check box clear if you want to migrate only data that was not previously migrated. 3. Select Save settings to save your settings in a configuration file. The next time you run the utility, you can elect to use these settings in Step 1. 4.
6. When you are satisfied with your settings, click Start. If you are migrating from an Exchange Server, you’ll see the following dialog box. Enter the user name and password for the Microsoft® Exchange administrator account you are using to open your users’ mail stores. This is the same user name you entered in Step 1. Select the check box for Remember my password if you would like to bypass this step in future migrations.
Monitor migration When your migration starts, you can monitor the progress in the following screens. Estimate If you selected Estimate in the Review screen, then the utility performs an estimate before it performs the migration. When the estimate has finished, click Migrate to start the migration. Click Detailed estimation report for more detailed information. If you want to migrate data when the estimation has finished, click Migrate.
Migrate If you selected Migrate in the Review screen, or clicked Migrate in the Estimation screen, you can monitor your migration here: As the migration progresses, the Output screen is updated with information about which user is being migrated, which data is being migrated, and when each segment of data has been migrated successfully. Click the Log file link to open the log file for the current migration.
What to expect during migration With Exchange, contacts are migrated first, followed by calendar data, and then email. Your users can work with their Google Apps accounts during migration. If a user in the list is not also provisioned in Google Apps, the migration moves on to the next user. If the migration encounters a mail store it cannot open, it moves on to the next user in the list. If the migration encounters an error with a particular item, for example a message, it moves on to the next item.
Groups/Distribution Lists • The e-mail migration tools do not migrate your organizations distribution lists / groups into Google Apps. • The e-mail migration tools do migrate e-mails sent to groups or distribution lists. You will need to ensure these groups are provisioned into Google Apps before users start to use Google Apps to ensure properly e-mail flow when users reply to messages sent to these groups.
Contacts • When migrating contacts, if you remigrate and choose “Migrate all data (overwriting previously migrated data)” duplicate contacts will be created in Google Apps. If this occurs, the user can use the “Find Duplicates” option in Google Apps contacts to merge duplicate contacts. • The contact migration tool will migrate new contacts created since your last migration, but does not migrate contacts that have been modified since the last migration.
Running a migration from the command line You can also run ExchangeMigration.exe from the command line. Below is a list of the arguments you can use, the parameters required by those arguments, along with an example. Each argument is preceded by a double dash (--). All parameters must be enclosed in double quotes. Note: When you run the utility from the command line, you are still presented with the Microsoft® Windows dialog box asking for the Microsoft® Exchange administrator user name and password.
For this argument... --pst_base_folder Supply this parameter Directory that contains PST files for migration. Migrates all PST files within this folder. If you use this argument, do not use: --source_server --exchange_profile_name Example: --pst_base_folder="C:\pst" --source_server Microsoft® Exchange Server IP address or fully qualified domain name.
For this argument... --google_consumer_key Supply this parameter The consumer key for the Google Apps domain to which you are migrating data. Example: --google_consumer_key=”example.com” --google_consumer_secret The consumer secret for the Google Apps domain to which you are migrating data. Example: --google_consumer_secret=”[domain consumer secret]” --force_restart No parameter required. Reruns the migration from the beginning rather than from the last point of failure.
For this argument... --num_threads Supply this parameter Number of threads. Sets maximum number of threads for multi-threaded performance. Example: --num_threads=25 --email_migration_start_date Date in YYYY-MM-DD format. All messages before this date are excluded from migration. Example: --email_migration_start_date=”2010-01-01” --email_migration_end_date Date in YYYY-MM-DD format. All messages after this date are excluded from migration.
For this argument... --imap_security Supply this parameter The one-digit code for the security option you want to use: • 0 (no security) • 1 (SSL) • 2 (STARTTLS) Example: --imap_security=1 --imap_port The port number for the IMAP server. Example: --imap_port=143 --imap_path_prefix The path where user folders are stored on an IMAP server.
PST Migration .\ExchangeMigration.exe --nouse_gui --exchange_admin_login="Administrator" --source_server="ExchangeServer" --google_domain="domain.com" --filename="C:\pst\users.csv" --pst_base_folder="C:\pst" --google_consumer_key="domain.com" --google_consumer_secret="************************" Hosted Microsoft® Exchange Server .\ExchangeMigration.
Troubleshooting and FAQ Chapter 5 Troubleshooting You can find the latest troubleshooting information at: https://www.google.com/support/a/bin/answer.py?hl=en&answer=173653 FAQ Can I run the utility on the Microsoft® Exchange Server? This scenario is not recommended. See http://support.microsoft.com/kb/266418 for more information. Does the utility work in a hosted Microsoft® Exchange environment? Yes.
Can I run multiple instances of the utility on separate virtual machines on a single physical client machine? You can, but this scenario is not recommended. If the client machine is robust enough to run multiple virtual machines, then we recommend that you take advantage of the strength of that machine and run one instance of the client and increase the number of users that are processed simultaneously.
How to cleanly remigrate a user’s calendar. You may need to remigrate a user’s calendar if there are changes to the user’s calendar after initial migration. To completely remigrate a user’s calendar, follow these steps: 1. Delete the user’s calendar within Calendar Setting on the Google Apps account to remove all existing appointments to that calendar. 2. Configure the Migration tool to migrate the Calendar and select the option “Migrate all data (overwriting previously migrated data)”.
Google Apps Migration for Microsoft ® Exchange Administration Guide
Interpreting Log Files Chapter 6 Google Apps Migration for Microsoft® Exchange produces two log files: • Status, which contains a summary of the overall status of a completed migration run • Trace, which contains detailed information about the migration as it progresses through the data for each user Log files are located on each client machine in the following location: • Windows Vista: C:\Users\user-name\AppData\Local\Google\Google Apps Migration\Tracing\ExchangeMigration • Windows XP: C:\Documen
A Status file has content similar to the following:
Migrated Count:5 Success Count:4 Fail Count:1 Fail Message Index:3,> > > The file contains summary information for each user who was processed during that migration run, and information about each type of data you elected to migrate (Contact, Calendar, Email).
OS Version: 5.1.2600 OS Service Pack: 3.0 OS Suite/Product: 256/1 Processor arch: 0/6/3846 Process Id: 8108 These opening entries provide information about the location and version of the Exchange Migration EXE, the Exchange Migration product version, operating-system information about the computer on which the utility is running, and the process ID for this particular migration run. Subsequent entries in the Trace log begin with the same general information as the following example: 2010-07-19T16:53:58.
• Migration Configuration: Beginning of the list of configuration details • ExchangeProfileName: Name of the Exchange profile used for the migration • SourceServer: IP address or fully qualified domain name of the source server • SourceAdmin: Administrator account on the source server • GoogleDomain: Google Apps domain to which data was migrated • GoogleConsumerKey: Consumer key for Google Apps domain to which data was migrated • ForceRestart: Whether migration runs from last stopping point, or
Enable logging To enable Information, Verbose, or Performance logging in the Trace log file: Edit the Tracing registry key and its accompanying Level DWORD Value: • Registry key: HKEY_CURRENT_USER\Software\Google\Google Apps Migration\Tracing • DWORD Value: Level • Level Value data: Change the default value of 7 to: • f (Information) • ff (Verbose) • 4F (Performance) Interpreting log file information The log messages provide an ongoing account of how each segment of the migration has progressed.
Index A about guide audience 7 contents 7 send comments 8 architecture data flow 15 overview 13 C client machines, Microsoft® Windows system requirements 14, 30 command line 61 config file, location 40, 42 consumer key enter for migration 44 consumer secret enter for migration 44 contacts, migrate shared 25 current documentation 8 D data flow 15 deployment calculate number of client machines 19 calculate users per client 19 multiple servers, multiple clients each 18 multiple servers, one client each 18 run
starting 37 via command line 61 what is/is not migrated 30 what not to do 58 what to expect 58 N notifying users 23 O OAuth, enable client access 13 overview architecture 13 migration 14 preparation 13 lists of users to migrate, Microsoft® Exchange Server 26 migration list 26 notifying 23 pilot test group 16 provision in Google Apps 24 W what is/is not migrated 30 what to expect during migration 58 P pilot users 22 preparation access to IMAP server 29 access to Microsoft® Exchange Server 29 configure Goog