Мультисерверная установка Zimbra Collaboration Suite

Существует негласное правило, согласно которому не рекомендуется создавать более 5–6 тысяч почтовых ящиков на одном сервере с Zimbra Collaboration Suite. Превышение этого диапазона чревато значительным ухудшением качества работы сервера и снижением его доступности для пользователей. Но что делать, если у вас в ведении находится крупное предприятие или SaaS-провайдер, продающий доступ к Zimbra Collaboration Suite как услугу, и вам требуется обеспечить электронной почтой 10, 20, 30 и более тысяч человек? Специально для таких случаев в Zimbra существует поддержка мультисерверной установки, при которой почтовые ящики находятся на разных серверах и позволяют сохранять высокую доступность электронной почты даже при больших нагрузках.

image
Разумеется, мультисерверная установка Zimbra Collaboration Suite значительно отличается от обычной установки на одиночный сервер, процесс которой подробно описан в одной из предыдущих статей. В первую очередь рекомендуется определиться с архитектурой той серверной инфраструктуры, на которую будет устанавливаться Zimbra Collaboration Suite. Наиболее оптимальной в работе будет вот такая конфигурация серверной инфраструктуры. Отметим, что количество серверов для хранения почтовых ящиков может быть любым и количество их, как уже отмечалось, рассчитывается исходя из 5–6 тысяч активных почтовых ящиков на сервер, если доступ к ним будет осуществляться исключительно через веб-клиент, и 3–4 тысячи почтовых ящиков на сервер, если пользователи будут работать с десктопными клиентами и синхронизировать почту с мобильными устройствами.

tusfyxl007udcolq_tlpcz7kvhw.jpeg
Один из примеров построения мультисерверной инфраструктуры для Zimbra Collaboration Suite

Zimbra LDAP


Перед началом непосредственной установки убедитесь, что на всех серверах выставлено одинаковое системное время. В первую очередь для мультисерверной инсталляции Zimbra нам необходимо установить и настроить сервер с Zimbra LDAP. При желании Zimbra LDAP можно установить на несколько серверов, один из которых будет выполнять роль основного сервера LDAP, а остальные будут являться вспомогательными серверами LDAP, принимающими на себя часть нагрузки и за счет этого повышающими быстродействие основного сервера. Наличие вспомогательных серверов LDAP также повышает безопасность и отказоустойчивость инфраструктуры с Zimbra.

Во время установки Zimbra на основной сервер LDAP, инсталлятор предложит вам выбрать компоненты для установки. В данном случае нам необходим только zimbra-ldap:

Select the packages to install
 
Install zimbra-ldap [Y] y
Install zimbra-logger [Y] n
Install zimbra-mta [Y] n
Install zimbra-dnscache [Y] n
Install zimbra-snmp [Y] n
Install zimbra-store [Y] n
Install zimbra-apache [Y] n
Install zimbra-spell [Y] n
 
Checking required space for zimbra-core
 
Installing:
  zimbra-core
  zimbra-ldap
 
The system will be modified. Continue? [N] y


Нажимаем Y и после завершения модификации системы откроется текстовое меню, в котором нас интересует пункт Common configuration. Перейдя в него, видим список основных настроек:

Common Configuration:
 1) Hostname:                                            ldap-1.zimbra.com
 2) Ldap master host:                                 zimbra.com
 3) Ldap port:                                             389
 4) Ldap Admin password:                           set
 5) Secure interprocess communications:      Yes
 6) TimeZone:                                            (GMT-08.00) Pacific Time (US & Canada)
 7) IP Mode:                                               ipv4
 8) Default SSL digest:                               sha256


Выбрав пункт 4, вы можете увидеть сгенерированный случайным образом при установке пароль доступа к Zimbra LDAP и при желании изменить его. Также следует изменить часовой пояс на тот, в котором вы в данный момент находитесь. Рекомендуем запомнить или записать куда-то пароль администратора LDAP, а также порт доступа и доменное имя сервера LDAP. Эта информация потребуется вам при настройке серверов с почтовыми ящиками и MTA.

После этого вновь возвращаемся в главное меню и выбираем второй пункт под названием zimbra-ldap. Здесь нас интересуют случайным образом сгенерированные пароли доступа к LDAP root, LDAP replication, LDAP Postfix, LDAP Amavis и LDAP Nginx, которые можно изменить на самостоятельно придуманные. Рекомендуем запомнить или записать пароли от LDAP replication, LDAP Postfix, LDAP Amavis, и LDAP Nginx, так как они пригодятся при дальнейшей настройке серверов с MTA и вспомогательных серверов LDAP. После этого остается лишь применить изменения и согласиться на запись всех настроек в файл. Настройка сервера LDAP завершена.

LDAP Replica


В том случае, если вы хотите настроить вспомогательные серверы LDAP, вам следует на основном сервере LDAP активировать их поддержку при помощи команды /opt/zimbra/libexec/zmldapenablereplica. В дальнейшем, при настройке вспомогательных серверов LDAP, основной сервер должен быть включен.

Установка и настройка вспомогательного сервера LDAP во много повторяет установку и настройку основного сервера. Основные отличия заключаются в процессе настройки после установки. Так, вам надо будет:

  1. Указать адрес основного LDAP-сервера в качестве LDAP Master host name,
  2. В поле для ввода порта указать номер порта, который открыт в основном сервере LDAP.
  3. Случайно сгенерированный пароль LDAP Admin заменить на тот, что установлен на основном сервере LDAP
  4. В подменю конфигурации LDAP выставить параметр No в поле Create Domain
  5. Ввести LDAP replication password, который был выставлен при настройке основного сервера.


После этого примените все изменения и сохраните настройки в файл.

Zimbra Mailbox


Процесс установки Zimbra на сервера, где располагаются почтовые ящики, повторяет процесс установки на сервер LDAP. Главное отличие заключается в выставленных флагах при выборе устанавливаемых компонентов. Нам потребуется следующий набор:

Select the packages to install

Install zimbra-ldap [Y] N
Install zimbra-logger [Y] Y
Install zimbra-mta [Y] N
Install zimbra-dnscache [Y] N
Install zimbra-snmp [Y] Y
Install zimbra-store [Y] Y
Install zimbra-apache [Y] Y
Install zimbra-spell [Y] Y

Checking required space for zimbra-core

Installing:
 zimbra-core
 zimbra-logger
 zimbra-snmp
 zimbra-store
 zimbra-apache
 zimbra-spell
 zimbra-convertd

The system will be modified. Continue [N] Y


После выражения своего согласия на установку, разрешаем модификацию системы, ждем окончания процесса установки и начинаем процесс настройки сервера. В первую очередь нам надо зайти в пункт Common Configuration и указать адрес сервера LDAP и пароль доступа к LDAP, кроме того рекомендуется проверить, выставлен правильный часовой пояс на сервере. Также, если вы забыли пароль доступа к LDAP, получить его можно введя команду zmlocalconfig -s zimbra_ldap_password на сервере LDAP.

После этого можно приступить к пункту Store Configuration. Тут нам потребуется задать пароль администратора сервера, а также задать доменное имя хранилища с соответствующим номером, чтобы в дальнейшем не возникло путаницы. Кроме того, следует выбрать тип подключения. Например, можно всегда использовать HTTP или HTTPS, включить принудительное использование HTTPS, либо использовать HTTPS только при аутентификации. После этого можно произвести еще ряд настроек на ваше усмотрение. По окончании настройки необходимо применить изменения и сохранить все настройки в файл.

Zimbra MTA


Помимо LDAP и почтовых хранилищ, на отдельный сервер нередко выносят Mail Transfer Agent. При установке Zimbra на него следует выбрать только пакеты zimbra-mta и zimbra-dnscache. После этого вновь соглашаемся на изменение системы и переходим к настройке сервера.

Select the packages to install

Install zimbra-ldap [Y] N
Install zimbra-logger [Y] N
Install zimbra-mta [Y] Y
Install zimbra-dnscache [Y] Y
Install zimbra-snmp [Y] N
Install zimbra-store [Y] N
Install zimbra-apache [Y] N
Install zimbra-spell [Y] N 

Checking required space for zimbra-core

Installing:
 zimbra-mta
 zimbra-dnscache

The system will be modified. Continue [N] Y


В первую очередь нам нужно в Common Configuration указать адрес LDAP-сервера, ввести пароль доступа к LDAP, а также установить корректный часовой пояс. После этого следует перейти в настройки MTA, где следует ввести адрес сервера аутентификации, который обычно совпадает с адресом почтового хранилища. После этого остается только ввести пароли для postfix и amavis, которые мы создавали при настройке основного сервера LDAP. После этого можно применить изменения и сохранить настройки в отдельный файл.

Отличной идеей будет после окончания установки задать пароли для доступа по SSH, чтобы иметь возможность удаленного управления серверами и очередностью Postfix. Также, если вы используете вспомогательные сервера LDAP, после окончания настройки, вам потребуется изменить значение ldap_url на MTA и Mailbox серверах, чтобы они корректно с ними работали. Для этого потребуется остановить работу Zimbra с помощью команды zmcontrol stop, а затем ввести команду вида zmlocalconfig -e ldap_url=«ldap://ldap-2.zimbra.com ldap://ldap-1.zimbra.com», где следует указать адреса сперва всех вспомогательных серверов, а в конце основного сервера LDAP. На сервере MTA после окончания настройки потребуется вновь запустить Zimbra и запустить /opt/zimbra/libexe/zmmtainit, чтобы перезаписать настройки Postfix.

© Habrahabr.ru