Table of Contents

Overview

After Exchange 2010, the public folders mechanism was re-engineered to use mailbox infrastructure. As a result, Exchange 2010 public folders and Exchange 2016 public folders cannot exist within the same Exchange organization simultaneously. Migrating public folders from Exchange 2010 to Exchange 2016 is currently a one-time cutover process.

During the migration of subscriptions with public folders from Exchange 2010 to Exchange 2016 in Odin Automation, the public folders will remain on their Exchange 2010 servers.

The procedure described in this KB article helps to perform a one-time migration of public folders from Exchange 2010 servers to Exchange 2016 servers.

The migration procedure consists of several steps:

  1. Preparing Odin Automation. In this step, all subscriptions must be migrated from Exchange 2010 to Exchange 2016; most of the Exchange 2010 Odin Automation packages should be uninstalled from the Exchange 2010 servers (as a result, the provisioning of new Exchange 2010 subscriptions will be impossible). The provisioning of new Exchange 2016 subscriptions with non-zero limits on "Public Folders" resources and the creation of new public folders will still be available in this step. Existing public folders will also be accessible to end users.

  2. Generating the public folder-to-mailbox mapping file and turning off the provisioning of public folders. In this step, the current Odin Automation configuration will be analyzed, and the public folder-to-mailbox mapping file will be generated. The creation of public folders and the provisioning of new subscriptions with public folders will be blocked. Existing public folders will still be accessible to end users after this step.

  3. Creating public folder mailboxes. In this step, public folder mailboxes will be created on Exchange 2016 Mailbox servers. Existing public folders will still be available to end users at this step.

  4. Migrating public folders. In this step, public folders will be migrated from public folder databases to public folder mailboxes. During public folder migration, public folders will be unavailable to end users.

  5. Removing Public Folder Databases. In this step, public folder databases of Exchange 2010 will be removed.

  6. Reconfiguring Odin Automation. In this step, Odin Automation will be reconfigured. Public folder mailboxes will be registered in Odin Automation as stores of Exchange 2016 Mailbox servers. Existing public folders will be reassigned to public folders mailboxes.

  7. Turning on the provisioning of public folders. In this step, all the remaining Exchange 2010 Odin Automation packages should be removed from Exchange 2010 servers. After this step, the creation of new public folders and the provisioning of new subscriptions with public folders will be unblocked in Odin Automation; new public folders will be created in Exchange 2016 public folder mailboxes.

Public folder provisioning downtime: step 2-7.

Public folder access downtime: step 4.

Preparing Odin Automation

Before starting public folder migration, perform the following steps:

  1. Migrate all subscriptions from Exchange 2010 to Exchange 2016 according to the Odin Automation Hosted Exchange Guide. If some Exchange 2010 subscriptions are not needed, remove them.

  2. Turn off Exchange 2010 branding on all brands.

  3. Uninstall the following Odin Automation packages from your Exchange 2010 servers:

    • Exchange2010POP3
    • Exchange2010IMAP4
    • Exchange2010Protocols
    • Exchange2010Autodiscover
    • Exchange2010SMTP
    • Exchange2010SMTPAuh
    • Exchange2010OAB
  4. After you uninstall the Odin Automation packages, some services on the Exchange 2010 servers will be stopped. Start them manually.

    On Client Access servers:

    • Microsoft Exchange POP3
    • Microsoft Exchange IMAP4
    • World Wide Web Publishing Service

    On Hub servers:

    • Microsoft Exchange Transport
  5. In Odin Automation, unregister all mailbox stores attached to the remaining Exchange2010Mailstore applications.

After these steps, only Exchange2010Mailstore must remain on Exchange 2010 servers running public folder databases which are used for provisioning public folders.

Generating the Public Folder-to-Mailbox Mapping File and Turning Off the Provisioning of Public Folders

To generate the public folder-to-mailbox mapping file and turn off the provisioning of public folders, execute the pfMigration_GeneratePublicFolderToMailboxMap.py Python script on your Odin Automation management node. The script will verify your Odin Automation configuration, generate the public folder-to-mailbox mapping file, and turn off the provisioning of public folders.

Syntax:

python pfMigration_GeneratePublicFolderToMailboxMap.py --file=<OUT_CSV_FILE> [--mbxsize=<PF_MAILBOX_SIZE>] [--addomain=<AD_DOMAIN_NAME>] [--test]

Parameters:

  • file (required) - The path of the output file to be generated. If only the filename is specified, the output file will be generated in the current directory.

  • mbxsize (optional) - The size (in Gigabytes) of any of the public folder mailboxes which will be created later (default value: 100).

  • addomain (required if your Odin Automation installation has several Active Directory domains with Exchange, and optional otherwise) - The name of the Active Directory domain in which the target Exchange 2010 and Exchange 2016 instances are deployed.

First of all, execute the script in test mode with the --test flag. The script will perform all operations, but the provisioning of public folders will not be turned off. After executing the script in the test mode, сheck the output of the script and the content of the generated public folder-to-mailbox mapping file. If no errors are found, execute the script without the --test flag to generate the public folder-to-mailbox mapping file and turn off the provisioning of public folders.

Creating Public Folder Mailboxes

Before starting the migration of public folders from public folder databases to public folder mailboxes, the public folder mailboxes must be created in Exchange 2016 by executing the pfMigration_CreatePFMailboxes.ps1 PowerShell script in Exchange Management Shell on any Exchange 2016 server.

Syntax:

pfMigration_CreatePFMailboxes.ps1 -CSVFile <IN_CSV_FILE> -Database <DATABASE> -AuthoritativeDomain <DEFAULT_DOMAIN> [-EstimatedNumberOfConcurrentUsers <NUMBER_OF_CONCURENT_USERS>] [-PFMailboxSize <PF_MAILBOX_SIZE>]

Parameters:

  • CSVFile (required) - The path of the input public folder-to-mailbox mapping file generated in one of the previous steps. If only the filename is specified, the input file will be searched in the current directory.

  • Database (required) - The name of the mailbox database where the new public folder mailboxes will be created.

  • AuthoritativeDomain (required) - Any domain with configured autodiscover. The autodiscover must point to the Exchange 2016 installation where the new public folder mailboxes will be located. This domain will be used to generate email addresses for hierarchy public folder mailboxes.

    You can use the following ways to obtain a domain with autodiscover for your Exchange 2016 installation:

    • Use the non-branded domain name of the Exchange 2016 autodiscover service, which was specified during the installation of the Exchange2016Autodiscover Odin Automation package. For instance, in Odin Automation control panel, select the necessary Exchange 2016 Mailbox server and navigate to the list of installed packages; go to the list of properties of Exchange2016Autodiscover; obtain the DNS prefix and Domain ID; navigate to the list of domains and find the domain using its Domain ID; finally, prepare the non-branded domain name of the Exchange 2016 autodiscover service by joining the DNS prefix and the domain name. To learn more about the package and its parameters, refer to http://download.automation.odin.com/oa/7.2/oapremium/portal/en/ms_exchange_hosting_guide/index.htm?fileName=93259.htm.

    • Use a branded domain name of the Exchange 2016 autodiscover service, which was specified for a brand. For instance, in Odin Automation control panel, select a brand where branding is configured for your Exchange 2016 installation; navigate to Exchange branding settings; here, you can obtain the branded domain name of the Exchange 2016 autodiscover service. To learn more about Exchange branding, refer to http://download.automation.odin.com/oa/7.2/oapremium/portal/en/ms_exchange_hosting_guide/index.htm?fileName=93265.htm.
  • EstimatedNumberOfConcurrentUsers (optional) - The estimated number of simultaneous user connections browsing the public folder hierarchy (default value: 2000).

  • PFMailboxSize (optional) - The size (in Gigabytes) of any of the public folder mailboxes which will be created by script (default value: 100).

Migrating Public Folders

To perform the migration of public folders from their public folder databases to the public folder mailboxes on the Exchange side, perform steps from the Microsoft TechNet article Migrate public folders from Exchange 2010 to Exchange 2016.

To perform the migration, execute the following steps from the How do I do this? section:

  1. Part 2: Prepare the Exchange 2010 server and public folders for the migration.

  2. Part 5: Start the public folder migration. In the CSVData parameter of the New-MigrationBatch command, use the CSV file with the public folder-to-public folder mailbox map generated in the step Generating the Public Folder-to-Mailbox Mapping File and Turning Off the Provisioning of Public Folders of the KB article. Use the Get-MigrationBatch command to check the migration status.

  3. Part 6: Locking the public folders for migration (downtime required).

  4. Step 7: Complete and finalize the public folder migration (downtime required).

  5. Part 8: Test and unlock the public folders. As Public Folder Mailbox Identity, use a public folder mailbox with the name PublicFolderHierarchy01. Skip item 4 from this step.

Removing Public Folder Databases

Remove all public folder databases from your Exchange 2010 Mailbox servers. To do this, perform the following on each Exchange 2010 Mailbox server:

  1. Make sure that there are not any public folders by executing the Get-PublicFolder command. If there are any, move or remove them.

  2. Obtain a list of existing public folder databases by executing the Get-PublicFolderDatabase command.

  3. Remove the public folder databases that you obtained by executing the Remove-PublicFolderDatabase -Identity "<PublicFolderDatabaseName>" command.

To obtain the detailed information about removing public folder databases, refer to the Microsoft TechNet article Remove Public Folder Databases.

Reconfiguring Odin Automation

After the migration of all public folder data to the public folder mailboxes on the Exchange side, the public folders must be reconfigured on the Odin Automation side by executing the pfMigration_UpdateOAConfiguration.py Python script on the Odin Automation management node. The script will verify the current Odin Automation configuration, read and verify data using the public folder-to-mailbox mapping file, register the public folder mailboxes in Odin Automation, and update subscriptions in Odin Automation.

Syntax:

python pfMigration_UpdateOAConfiguration.py --file=<IN_CSV_FILE> --hostid=<HOST_ID> [--mbxsize=<PF_MAILBOX_SIZE>] [--test]

Parameters:

  • file (required) - The path of the input public folder-to-mailbox mapping file generated in one of the previous steps. If only the filename is specified, the input file will be searched in the current directory.

  • hostid (required) - The identifier of the Odin Automation service node running the Exchange2016Mailstore application in which all public folder mailboxes will be registered.

  • mbxsize (optional) - The size (in Gigabytes) of any of the public folder mailboxes which were created in one of the previous steps (default value: 100).

First of all, execute the script in test mode with the --test flag. The script will perform all operations, but changes will not be applied in Odin Automation. After executing the script in the test mode, сheck the script output. If no errors are found, execute the script without the --test flag to perform the real reconfiguration of Odin Automation.

Turning on The Provisioning of Public Folders

To allow the provisioning of new public folders to public folder mailboxes, perform the following steps:

  1. Unregister all public folder stores attached to the Exchange2010Mailstore applications of the Exchange 2010 Mailbox servers.

  2. Uninstall the remaining Odin Automation packages Exchange2010Mailstore from the Exchange 2010 Mailbox servers.

  3. Turn on the Ready to provide parameter for the necessary newly-created public folder mailboxes in the Odin Automation control panel.

Internal content