17.05.2013 10:01, [email protected]:
Здравствуйте.
Если есть у кого время для помощи, буду рад.
Кратко опишу то, что "строю".
Эдакий mail-cluster...
Есть 2 ноды с настроенной почтовой системой, на одной из них должен
быть арбитр. При выходе из строя ноды с арбитром, запускается арбитр
на другой ноде. Арбитр так-же управляет зоной в DNS, и исключает
неработающий сервер, или включает, если тот синхронизировался с работающим
и готов обслуживать.
Учетные записи будут храниться в MySQL, и синхронизироваться средствами
MySQL сервера - репликацией Master-Master.
В чистом мускуле нет надёжного мультимастера, будете брать перкону?
Дублирование входящей почты на другую ноду - можно настроить в
алиасах.
На нодах хранилище писем будет Maildir.
Удаление файлов писем - C этим первая сложность.
Если пользователь забрал с одного сервера письмо, файл удаляет
dovecot (как я понимаю, при помощи аудита можно отловить факт
удаления файла и скриптом "прибить" файл-дубль на втором сервере).
2-й вариант - написать скрипт, который будет слушать лог dovecot'a,
и по окончанию pop3 сессии, включать rsync maildir'a пользователя.
Вторая сложность - в арбитре. как построить алгоритм "готовности"
ноды, (факт синхронности ящиков). Может есть какие-нибудь готовые
решения?
Может есть другие, уже готовые решения?
cyrus-imapd умеет murder. Это сводит к нулю всю необходимость
синхронизации почты.
--
Sphinx of black quartz, judge my vow.