Назад | Перейти на главную страницу

Рекомендации по миграции почтовых ящиков IMAP тысяч пользователей с помощью инструмента imapsync

Я собираюсь перенести почтовые ящики IMAP с Exchange 2013 на Cyrus с более чем 10 тысячами пользователей. Я планирую использовать imapsync как инструмент для этого.

[root@centos65]# imapsync --version
1.644

Я тестирую с 5 пользователями и в общей сложности 134 письма (большинство из них - обычный текст + одно вложение размером 9 МБ).

Сначала я попробовал с помощью следующей команды:

while read user pwd1 pwd2
do
    /usr/bin/imapsync \
    --host1 exchange_svr \
    --password1 "$pwd1" --user1 $user@domain \
    --authmech1 "PLAIN" \
    --host2 cyrus_svr --user2  $user@domain \
    --ssl1 --subscribeall \
    --authmech2 "PLAIN" \
    --password2 "$pwd2"
done < input

Время окончания 1min 57sec.

Использование некоторых опций в надежде на ускорение:

  ...
  /usr/bin/imapsync \
--nofoldersizes --nofoldersizesatend --buffersize 49152000 --usecache --idatefromheader \ ## <-- add these options
--host1 exchange_svr \
  ...

Время окончания 1min 49sec, не намного быстрее.

Мой входной файл:

user1@example.com   pwd1   pwd2
user2@example.com   pwd1   pwd2
user3@example.com   pwd1   pwd2
user4@example.com   pwd1   pwd2
user5@example.com   pwd1   pwd2

Я протестировал запуск нескольких скриптов, каждый из которых будет работать с некоторыми папками (используя --exclude или --include), но не очень быстро (на самом деле это заняло более 2 минут).

Есть ли у вас какие-нибудь передовые методы работы с этим инструментом с таким большим количеством пользователей / почтовых ящиков? Есть какие-нибудь предложения по улучшению?

В документации imapsync есть часто задаваемые вопросы о массовой миграции: http://imapsync.lamiral.info/FAQ.d/FAQ.Massive.txt

В. Мне нужно перенести 500 тыс. Пользователей, используя 400 ТБ дискового пространства. Как мне продолжить?

В. Как определить узкое место в моем текущем процессе imapsync?