We have already written about how Zimbra Collaboration Suite Open-Source Edition scales
easily and easily . You can add new mail storages without stopping the infrastructure on which Zimbra is deployed. This feature is highly valued by SaaS providers who provide their customers with commercial access to the Zimbra Collaboration Suite. However, such a scaling process is not without a number of drawbacks. The fact is that when creating a new account in the free version of Zimbra, it is tightly connected to the mail storage on which it was created, and transferring it to another server using the built-in tools of Zimbra OSE turns out to be an insecure and rather laborious process. However, mailbox migration is not always associated with horizontal scaling. For example, SaaS-providers can use the transfer of accounts to more productive servers in cases where their customers change their tariff plan. Also, the transfer of accounts may be necessary for large organizations in the restructuring.

A powerful tool for transferring email accounts between servers is Zextras PowerStore, which is part of the
Zextras Suite modular
suite . Thanks to the
doMailboxMove command , this extension allows you to quickly and conveniently transfer not only individual accounts, but also entire domains to other mail storages. Let's see how it works and in what cases its application will give the maximum effect.
')
For example, let's take a company that started out with a small office space, but later expanded to an average enterprise with several hundred employees. At the very beginning, the company introduced the Zimbra Collaboration Suite Open-Source Edition. A free and fairly low-end collaboration solution was ideal for a start-up company. However, after the number of employees in the enterprise multiply increased, the server stopped coping with the load and began to work more slowly. In order to solve this problem, management has allocated money for the purchase of a new mail storage to accommodate part of the accounts on it. However, by itself, the connection of the second storage did nothing, because all the created accounts remained on the old server, which simply could not cope with their number.
Zimbra Collaboration Suite is designed so that the main role in its speed is played by the speed of reading and writing media, and therefore increasing the computing capacity of the server will not double the performance of Zimbra. In other words, two servers with 4-core processors and 32 gigabytes of RAM will demonstrate much better performance than a single server with an 8-core processor and 64 gigabytes of RAM.
In order to resolve this issue, the system administrator used the solution from Zextras. With the help of a command like
zxsuite powerstore doMailboxMove mail2.company.com accounts user@company.com data, account administrator transfers one by one to the new storage the last hundred accounts created. After the completion of this process, the load on the old server was significantly reduced and the work in Zimbra again became comfortable and pleasant for users.
Imagine another situation: a small company uses the services of a SaaS provider to access Zimbra as multi-leased. At the same time, the company has its own tariff, access to account administration, and so on. However, the company soon won a large tender and dramatically increased staff. At the same time, accordingly, the role of the joint work system increases. The possibilities of using the address book, organizing instant communication between employees, as well as coordinating actions using calendars and diaries are extremely important when implementing large projects. At the same time, given the lack of time, it is not possible to switch to Zimbra’s own infrastructure. In this regard, the management decides to enter into a new contract with its SaaS provider, which will have a stricter SLA and, accordingly, a higher cost of services.
The SaaS provider, in turn, has several repositories that are used to serve customers who have connected different tariff plans. In addition to SLA, servers for cheaper rates can be equipped with slower HDDs, relatively rarely reserved, and also not be able to synchronize account data with mobile devices. A major difference is also the period during which the SaaS provider stores customer data after the end of the subscription to its services. Therefore, after signing the contract, the system administrator of the SaaS provider needs to transfer the data of all company accounts to a new, more fault-tolerant and productive mail storage, which will guarantee the client a high SLA.
In order to complete the transfer of mailboxes, the administrator will take some time, and it is rather difficult to predict how long the mailbox transfer process will take. In order to meet the 15-minute technical break, the administrator decides to complete the transfer of mailboxes in two stages. In the framework of the first stage, it will copy all user data to the new server, and within the second stage it will transfer the accounts themselves. In order to execute the first stage, it runs the
zxsuite powerstore command doMailboxMove secureserver.saas.com domains company.ru stages data . Due to this, all account data from the domain of the company will be safely transferred to a new secure server. Copying them takes place incrementally, so during the final transfer of accounts to the new server, only the data that appeared after the first copy will be copied. At the time of the technical break, it is enough for the system administrator to enter the
zxsuite powerstore doMailboxMove secureserver.saas.com domains company.ru methods data, account notifications admin@saas.com . Thanks to her, the process of transferring a domain to a new server will be completed completely. Also immediately after the end of the execution of this command, an alert will be sent to the administrator’s mail about its completion, and it will be possible to inform the client about the successful transition to a more productive and reliable server.
However, you should not forget that backup copies of transferred mailboxes remain on the old server. The SaaS provider is not interested in storing them on the old server and therefore the administrator decides to delete them. He does this with the
zxsuite powerstore doPurgeMailboxes ignore_retention true command . Thanks to this command, all backup copies of the mailboxes transferred to the new server will instantly be deleted from the old server.
Thus, as we could see, Zextras PowerStore gives the Zimbra administrator almost unlimited mailbox management capabilities, allowing not only to achieve horizontal scaling, but even to solve some business problems. In addition, moving mailboxes between repositories can be used to enhance the security of the Zimbra email repository update process, but this topic deserves a separate article.