Mailbox Migration Tools

Scalable online mailbox migration

Multithreaded mailbox migration engine

Sometimes the imsbackup and imsrestore or even movemailbox tools are not enough. In our experience the migration of thousands of mailboxes require more downtime and service disruptions then are available. For these situations we have developed a migration engine, which can migrate individual mailboxes, whole domains or even complete message stores.

The tool set is written in perl, uses SQLite for persistence and includes a Web UI for easy administration.

In the migration preparation steps the basic configuration screen is used to identify the directory server, the source message store and the destination message store.

The next step in preparation is the identification of the mailboxes to be migrated. These can be added individually (for testing purposes), by domain or through a reconciliation task, which identifies all the mailboxes in the source message store.

The migration itself is executed through a background running multithreaded process. The stop and start of this process is again controlled through the web interface. In addition the number of worker threads can be modified during the migration run.

The migration worker threads each identify an individual mailbox, set the mailuserstatus attribute for the given user to "hold", open a ssh tunnel between the source and destination message store servers and using imsbackup and imsrestore move the messages. After completion the worker thread checks the number of messages in the source and the destination message stores. If the migration succeeded the mailhost attribute is modified and the mailuserstatus released. The mailbox is moved from the ToDo list to the Completed list. Should it fail, the mailhost attribute stays pointing to the source message store and the mailuserstatus is released, but the mailbox task is moved from the ToDo list to the Failed list, where the migration logs can be investigated by an administrator.

Should you have a need for such a migration tool, please get in touch.