Я собираюсь перенести почтовые ящики 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
Время завершения составляет 1 мин 57 сек
.
Использование некоторых параметров в надежде на ускорение:
...
/usr/bin/imapsync \
--nofoldersizes --nofoldersizesatend --buffersize 49152000 --usecache --idatefromheader \ ## <-- add these options
--host1 exchange_svr \
...
Время завершения составляет 1мин 49сек
, не намного быстрее.
Мой входной файл:
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
Я тестировал запуск нескольких сценариев. каждый скрипт будет работать с некоторыми папками (используя - исключить
или - включить
), но не очень быстро (фактически это заняло более 2 минут).
Есть ли у вас какие-нибудь рекомендации по работе с этим инструментом с таким количеством пользователей / почтовых ящиков? Есть какие-нибудь предложения по улучшению?
В документации по imapsync есть часто задаваемые вопросы о массовой миграции: http://imapsync.lamiral.info/FAQ.d/FAQ.Massive.txt
Q. Мне приходится мигрировать 500k пользователей, используя 400 ТБ дискового пространства. Как мне действовать?
Q. Как определить, что является узким местом в моем текущем процессе imapsync?
.