Переносим Zimbra (Open Source Edition) с одной машины на другую.

Переносим Zimbra (Open Source Edition) с одной машины на другую.

На самом деле, вместо того, чтобы переводить вот это на русский я должен был дописать вот это на английском. Но вследствие некоторого творческого кризиса получилось вот что:

Переносим Zimbra (Open Source Edition) с одной машины на другую.

 

С подобной проблемой, когда почтовый сервер нужно срочно перенести на новую машину, сталкивался каждый админ, будь то Zimbra, Exchange или Lotus Notes. Как правило, это связано с тем, что переполнен или барахлит диск, не хватает оперативной памяти или просто процессор не тянет. Когда подобная проблема становится актуальной, у меня лично заранее начинает болеть голова в ожидании бессонной субботней ночи. С Zimbra все намного проще, даже с бесплатной версией.

 

 

Часть первая – приготовление нового сервера

Наша задача на этом этапе в том, чтобы все нужные rpm/dpkg базы были правильно настроены. ВАЖНО: не пытайтесь заапгрейдить Zimbra и перенести сервер одновременно. Если хотите сделать апгрейд Zimbra, то сделайте его до или после перехода на новую машину! Также важно, чтобы ОС на новой машине была такая же, что и на старой. Не пытайтесь перенести сервер с CentOS на Ubuntu или наоборот! Впрочем, не ручаюсь за то, что это не получится... можете попробовать... Апгрейд самой ОС - другое дело. Перенос сервера с RHEL 4 на RHEL 5 или с CentOS 4 на CentOS 5 не должен вызвать никаких проблем. Единственное, что нужно учесть, это то, что если перенос Zimbra сопряжен с апгрейдом ОС, то важно , чтобы на новый сервер вы установили ту версию Zimbra, которая предназначена для вашей НОВОЙ ОС.

Итак, скачиваем ту же версию Zimbra которая установлена на старом сервере, и на новом сервере запускаем инсталлятор с опцией -s

 

root@mail.myserver.ru$ ./install.sh -s

 

Опция -s говорит инсталлятору, что нужно только установить софт, но не нужно конфигурировать систему. Проверяем совпадает ли UID/GID пользователя zimbra на новом сервере с UID/GID пользователя zimbra на старом сервере. Если нет, то исправляем их на новом сервере. После того, как Zimbra установлена и UID/GID пользователя исправлены, удаляем /opt/zimbra

 

root@mail.myserver.ru$ .rm -rf /opt/zimbra

 

Теперь отключаем новый сервер от сети (нет, не штепсель из розетки :) и ставим те же сетевые настройки, что и на старом сервере. ВНИМАНИЕ: не удаляйте инсталляционный пакет Zimbra с нового сервера на этом шаге, он нам еще понадобится!

 

Часть Вторая – Резервное копирование

В Zimbra Network Edition (коммерческая лицензия) есть специальная утилита для резервного копирования zmbackup. Хотя использовать эту утилиту в данном случае было бы проще всего, мы обойдемся без нее, чтобы не обижать большинство админов, у которых установлена бесплатная версия.

Берем внешний диск и монтируем его, например на /mnt/migration. Копируем /opt/zimbra (rsync) в /mnt/migration. Перед тем, как делать rsync желательно отключить всех активных пользователей, чтобы не потерять новую почту, которая придет во время переноса данных, проще всего, остановить сервер (/opt/zimbra/bin/zmcontrol stop) и отключить его от сети. После того, как rsync закончен, у нас есть полная копия всех данных. Как говорится, если у вас паранойя, то это не значит, что за вами следят, поэтому «на всякий пожарный», копируем (опять же rsync) все данные еще на один диск, который будет запасным и прячем его :)

 

Часть третья - перенос данных на новый сервер

На этом этапе старый сервер должен быть отключен от сети, и мы подсоединяем к сети новый сервер. Подсоединяем и монтируем внешний диск, на который мы скопировали данные, к новому серверу. После этого, копируем все данные с диска на новый сервер

root@mail.myserver.ru$ rsync -avr /mnt/migration/zimbra /opt

 

когда данные скопировались, размонтируем и отсоединяем внешний диск.

 

Финал – запускаем новый сервер

На этом этапе все данные на месте. Осталось исправить права доступа и еще раз запустить инсталлятор. Чтобы исправить права, зайдите в /opt/zimbra/libexec/ и запустите zmfixperms.

 

root@mail.myserver.ru$ ./zmfixperms



После этого повторно запустите инесталлятор Zimbra. Инсталлятор определит, что Zimbra уже установлена и спросит, хотите ли вы заапгрейдить систему, ответьте «Yes».

Вобщем, самый длительный шаг во всем процессе – копирование данных. В остальном, все пройдет довольно быстро.