Migration from Exchange Server to Office 365

I. Pre-migration activities

Before you install and configure CodeTwo Office 365 Migration, make sure that your environment (both the source and target server) is prepared for migration.

Below you will find the list of key points to be considered:
 

Step 1: (Optional) Add a custom domain to target Office 365

If you want to migrate to your own (custom) domain, you need to make sure that it's registered and verified in your target Office 365. If necessary, add your custom domain to the target Office 365 tenant and verify it.

Skip this step if you already have your own domain registered in the target Office 365 or you would like to migrate to the initial domain (e.g. yourcompany.onmicrosoft.com) that was assigned to you by Microsoft when you created your target Office 365 tenant.

Learn more about adding custom domains to Office 365

Step 2: (Optional) Recreate source Office 365 users in target Office 365

The program is able to automatically create mailbox-enabled accounts in the target Office 365, under the previously added custom domain. Our software will allow you to configure various options (e.g. assign an SMTP address pattern for the target mailboxes) when you configure your migration job. Learn more

If necessary, you can manually recreate all source users in the target Office 365 beforehand. All these target accounts have to be mailbox-enabled.

Important

If you choose either to manually create the mailboxes or allow the program to prepare them for you, be advised that the account data (such as permissions) will not be migrated. However, if you set the program to automatically create new mailbox-enabled user in the target environment, there is an option to copy main AD attributes from the source user account. Learn more 

Learn more about creating new Office 365 users

Learn more about importing multiple users to Office 365 via CSV files
 

Step 3: Make sure that the account used to connect to the source server belongs to the appropriate AD group or has the necessary roles assigned, and that it has its mailbox configured correctly

If you use Exchange Server 2003:

  • Check if the selected account belongs to the Domain Admins group.
  • Ensure that this account has a valid, non-hidden mailbox on the source Exchange server.

If you use Exchange Server 2007:

  • Check if the selected account belongs to the Exchange Organization Administrators group.
  • Ensure that this account has a valid, non-hidden mailbox on the source Exchange server.

If you use Exchange Server 2010 without SP1:

  • Check if the selected account belongs to the Organization Management group.
  • Ensure that this account has a valid, non-hidden mailbox on the source Exchange server.

If you use Exchange Server 2010 with SP1 installed or later version of Exchange Server:

  1. Check if the source admin account has the following management roles assigned:
    • ApplicationImpersonation
    • View-Only Configuration
    The program will check if these roles are assigned to the admin account during the Configuration step of the Source server connection wizard. However, before you even start the program, you can manually:
    • check which roles are assigned to a specific user. To do that, run the Exchange Management Shell on the target server and enter the following cmdlet: Get-ManagementRoleAssignment -RoleAssignee “UserName”, where instead of UserName you need to enter a valid Name or Alias of your mailbox-enabled AD user; or
    • check which users are assigned a specific role. To do that, run the Exchange Management Shell on the target server and enter the following cmdlet: Get-ManagementRoleAssignment –Role “RoleName”, where instead of RoleName you need to enter a specific role, e.g. ApplicationImpersonation.

    If any required roles are missing, you can either assign them manually, following the steps described in this KB article, or let the program assign them for you in the Configuration step of the connection wizard.

  2. Ensure that the UPN has been defined for this account
  3. Ensure that this account has a valid, non-hidden mailbox on the source Exchange server.

Info

UPN (User Principal Name) is the name of a system user in an email address format. Learn more.

Step 4: Verify that the admin account used to connect to the target Office 365 tenant has the necessary roles assigned

  1. Check if the target admin account has the following management roles assigned:
    • ApplicationImpersonation
    • View-Only Configuration
    • View-Only Recipients
    • Public Folders*
    • User management administrator/Global administrator*

      Important

      Please note that the Public Folders role is only required if you plan to migrate public folders. Moreover, the User management administrator/Global administrator role is required to create new users and mailboxes. Therefore, it's not required to assign it to the admin account if you are migrating data to the mailboxes that already exist on the target server.

    If these roles are missing, you can either assign them manually, following the steps described in this KB article, or let the program assign them for you during the Configuration step of the Target server connection wizard.

  2. Ensure that the UPN has been defined for this account
  3. Ensure that this account has a valid, non-hidden mailbox on the source Exchange server.

Step 5: Make sure the target Office 365 administrator's email address corresponds to the right domain

Assuming that your custom domain has already been added to the target Office 365 (see Step 1 above) or that you use a default target *.onmicrosoft.com domain, double-check that your target admin's email address is correct and corresponds to the domain you will be migrating to. To do that, perform the following actions:
  • Log in to the target administrator's Office 365 account.

  • Go to Office 365 admin center.

  • Choose Users > Active users from the menu on the left and the table with all organization users will display.

  • Select the administrator's account and check in the User name / Email section if the address corresponds to the right domain.

  • If not, click Edit, locate the drop-down menu that contains all available domains within your organization and select the domain you will be migrating to. Save the changes.

Step 6: Assign licenses on Office 365

Make sure that Office 365 licenses are assigned to all user accounts that will be used as the target mailboxes. Alternatively, during the mailboxes’ matching step you can set the program to create the mailboxes and assign the licenses automatically.

Learn more about assigning licenses
 

Step 7: Installation of components required to install CodeTwo Office 365 Migration (the installation wizard will guide you through this process)

  • MAPI CDO (MAPI Client and Collaboration Data Objects, required on any system except for systems with coexisting MS Outlook x86 older than version 2016)
  • .NET 4.0 (required on any system, might be already installed)
    Learn more
  • PowerShell 2.0 (or higher, must be installed on Windows Server 2008)
    • Download Windows Management Framework Core (WinRM 2.0 and Windows PowerShell 2.0) for Windows Server 2008
    • Newer Windows releases (Windows 7 or higher, Windows Server 2008 R2 or higher) already have PowerShell 2.0 (or higher) built-in.
    • Small Business Server 2008 (SBS2008) users might stumble upon a problem with installing PowerShell. See our Knowledge Base article on that.

Step 8: Installation of CodeTwo Office 365 Migration

The program needs to be installed and activated on a machine within the source server domain.

Warning

Make sure you meet the system requirements prior to installing the software.

II. Migration process

The steps below will guide through the correct configuration of CodeTwo Office 365 Migration:
 

Step 1: Connect to the source server

Important

Make sure that the software user who runs the migration is a local administrator.

When you start the program, you will see the Dashboard tab. Click Create a new migration job link on the How to start card. Select the source server type: Exchange Server. The Create Exchange migration job wizard will open. Set the name of the job and click Next to proceed to the Source mailboxes step. If this is your first migration job, you will need to configure connection to the on-premises Exchange Server that will be used as the source of your migration. Click Add new source connection in the Source server drop-down menu and a wizard will open. First, choose a protocol which you want to use to connect to the source Exchange Server: MAPI or EWS.

Important

You need to choose the MAPI protocol if you connect to Exchange 2010 without SP1, 2007 and 2003. Otherwise, you should use EWS.

If you migrate via the MAPI protocol, you need to go through the steps below:

  • Server connection – here you can allow the program to automatically recognize the Exchange server located within your network or select it manually from the picker.
  • Service account – in this step, the program creates a service responsible for accessing mailboxes selected for migration. As the service works under the administrator's MAPI profile, enter the administrator's email address and password. By default, the currently logged administrator's email address is filled in automatically. However, you can change it by clicking Browse and selecting another user's email address from the picker.
  • Configuration – this process configures your source server connection based on the entered settings.

If you want to configure connection to the source Exchange Server via EWS, you need to complete these three steps:

  • Server connection – here you can allow the program to automatically recognize the Exchange Server located within your network or select it manually from the picker.
  • Admin account – in this step, you need to provide the UPN and password of a user who can access the source Exchange. This account must be assigned appropriate management roles, as specified in I Pre-migration activities, Step 3. By default, the currently logged administrator's email address is filled in automatically. However, you can change it by clicking Browse and selecting another user's email address from the picker.
  • Configuration – this process configures the source Exchange server connection and checks whether the account provided in the previous step has the necessary roles assigned. If not, the program will attempt to assign them automatically. In such a case, you may be asked to provide the credentials of another account that belongs to the Organization Management role group. This account will not be used to connect to the source server, but only to assign the missing roles.

If all data has been correctly entered, your source server mailboxes will be visible in the program.

If any errors appear, see Troubleshooting

Step 2: Select mailboxes you want to migrate and define target connection

After successfully configuring the source connection, you will get back to the migration job wizard.

The Source mailboxes step now allows you to include or exclude mailboxes by using multiple filters. You may, for example, include all users' mailboxes from a particular Organizational Unit or Active Directory group. By default, the program includes All users along with the Public Folders as it is a most common scenario. Choose the mailboxes you want to migrate and proceed to the next step (Target mailboxes).

Now, set up a new target server connection by choosing Add new target connection from the Target server drop-down menu. A simple wizard will open.

  • Admin account – provide email address and password of the Office 365 admin account. This account must be assigned appropriate roles, as specified in I Pre-migration activities, Step 4.  Click Next to move on to the Configuration step.
  • Configuration – this process configures the connection to the target Office 365 server and checks whether the account provided in the previous step has the necessary roles assigned. If not, the program will attempt to assign them automatically. In such a case, you may be asked to provide the credentials of another account that is assigned the Global administrator role. This account will not be used to connect to the Office 365 tenant, but only to assign the missing roles.

Once the configuration ends successfully, you will see green check marks. If any errors appear, see Troubleshooting.

After your connection is established, click Finish and proceed to the next step (Match mailboxes).

Step 3: Match target and source mailboxes

Matching the source with the target mailbox can be done in two ways: automatically via the built-in Automatch feature or manually. Either way, click the Match mailboxes button.

To match manually a single mailbox, click on Click to match target link in the Target user mailbox column and choose most appropriate option for this user. After selecting an option you may be asked to provide further details (e.g. password for newly created users). The available approaches are:

  • Create a new user - to create both Active Directory user and corresponding mailbox, using the defaults values that you can also change.
  • Choose an existing user from the list - to select an existing user in the target environment that does not have mailbox created yet.
  • Manually specify the mailbox address - this option should be used in the case you are unable to list the target environment.

However, when it comes to matching hundreds of mailboxes, the process may be extremely time-consuming. To automatically set the best available actions for desired users, simply select them on the list (you can use Ctrl+A shortcut to choose all entries) and eventually click Automatch. Select desired options and start the process.

What is more, you can define what type of Office 365 license is going to be assigned for particular users.

When you have matched all your mailboxes you can continue to configure additional options.

Step 4: Customize all necessary aspects of the migration job

You may configure the following additional options:

  • Scheduler - allows you to set the job to be automatically started in desired period of times, so you do not have to control it manually.
  • Time filter - is used to exclude items that are older or newer than a particular date.
  • Folder filter - may completely exclude specific folders from the migration process.
  • Advanced settings - provides an option to define how many mailboxes should be migrated at same time. This number should correspond to the amount of CPU cores.

Step 5: Start the migration

Move on to the JOBS tab and click Start on the toolbar to begin the migration. Once you start the migration, all items from the source mailboxes will be migrated to their corresponding target mailboxes.

Info

The migration processing time depends on several different factors, e.g. the number of mailboxes and items, the speed of internet connection, EWS throttling settings. We have published more details here

Step 6: Check if the number of migrated items in the target mailbox folder corresponds to its equivalent on the source server

If you notice any missing items in the target mailbox restart the migration by using the Rescan feature.

Important

Please be aware that the program does not migrate some specific folders at all. Those are i.e. Sync Issues or ones created while putting a mailbox on a litigation hold.

Info

If any problems appear during the migration process they will be indicated by the yellow or red triangle visible in the Migration Status column in the main window of the program. Details of the problems may be checked in the diagnostic files.

Step 7: Check if there are any new items in the source mailbox after migration

Once the migration is finished and you have noticed that some new items appeared in the migrated source mailbox, just restart the migration by using the Rescan feature. Please keep in mind that the Rescan feature uploads only new items, not the changed ones.

III. Post-migration cleanup

Once the migration is completed please follow the points below:

Step 1: MX records

Change MX records to enable mail flow to new servers. Please note that this process may take several hours.

Warning

If any new items appear in a source mailbox while the MX records are being changed, it is possible to migrate them after the records migration process is completed. It can be done via the Administration Panel of the program by choosing the Rescan feature.

Step 2: The previous domain

Disconnect the previous domain.

Info

If you have any problems with disconnecting your domain, please consult your Domain Provider.

IV. Troubleshooting

For troubleshooting information, refer to our Knowledge Base.

For additional resources, refer to Frequently Asked Questions or contact us.

Was this information useful?