Настройка и использование FSGW (File Storage Gateway)#
Начиная с версии 1.024.00, в состав программного компонента Адаптер Exchange - Шлюз электронной почты (MAIL) включен компонент File Storage Gateway (FSGW), позволяющий объединять несколько S3-хранилищ в replica set.
FSGW выступает в роли прозрачного S3-шлюза, где Adapter Exchange обращается к FSGW как к обычному S3-хранилищу для чтения/записи/удаления файлов, а FSGW реплицирует это действие на все S3-хранилища, входящие в replica set.
FSGW позволяет создать отказоустойчивую систему с георезервированными S3-хранилищами, то есть в случае, если одно из S3-хранилищ недоступно, то FSGW отправит запрос на другие S3-хранилища.
Для использования FSGW необходимо произвести соответствующую настройку стендозависимых параметров, а после инсталляции дистрибутива на стенд - поменять в настройках почтовых ящиков URL S3-хранилища. Если не производить настройку параметров и не изменять настройки почтовых ящиков, то запросы на чтение / запись будут идти напрямую к S3-хранилищам, минуя FSGW.
Обратите внимание: в случае, если в проекте используется только одно S3-хранилище, всё равно нужно произвести настройку хотя бы одного replica set в стендозависимых параметрах.
Настройка стендозависимых параметров#
Перед тем, как объединять S3-хранилища в replica set, необходимо настроить параметры подключения для каждого S3-хранилища (см. Настройка S3-хранилищ).
Для настройки replica sets необходимо внести изменения в два конфигурационных файла: mail-files.conf и mail-fsgw.conf.
mail-files.conf#
В файле mail-files.conf указывается параметр mail_files.ose.configmap.data.s3.replica-sets, отвечающий за настройку replica sets и отображающий список replica sets. Данное поле обязательно и не должно быть пустым. В случае, если в проекте используется только одно S3-хранилище, всё равно нужно указать хотя бы один replica set - придумайте alias для replica set, а в качестве массива S3-хранилищ укажите alias единственного S3-хранилища.
Настройки каждого replica set отделяются точкой с запятой, каждый параметр в настройках отделяется запятой.
При инсталляции дистрибутива к значению параметра mail_files.ose.configmap.data.s3.replica-sets применяется функция split для парсинга параметров, поэтому между разделителями (; и ,) не должно быть пробелов, иначе пробел станет частью параметра.
Для каждого replica set указываются следующие 3 параметра строго в заданном порядке:
Параметр |
Описание |
|---|---|
Alias |
Можно задать любое значение. Запрещено использовать символ точки и двоеточия. Alias не должен совпадать с любым alias S3-хранилища, указанным в |
Массив значений alias S3-хранилищ, входящих в |
Значения alias должны браться из параметра |
|
Минимальное количество S3-хранилищ, в которые должен успешно сохраниться файл, чтобы общая операция сохранения файла в |
Пример объединения двух S3-хранилищ (vm-test-sy-docker-143 и vm-test-sy-docker-142) в replica set:
mail_files.ose.configmap.data.s3.replica-sets=fsgw-replica-set-1,vm-test-sy-docker-143:vm-test-sy-docker-142,1
mail-fsgw.conf#
В файле mail-fsgw.conf указываются следующие параметры, отвечающие за настройки подключения к S3-хранилищам в FSGW:
Параметр |
Описание |
|---|---|
|
Базовый URL-путь, запросы на который ожидает FSGW |
|
Максимальное количество параллельных запросов. Данный параметр опционален. Если данный параметр не указан, применится значение по умолчанию - |
|
Таймаут на установление соединения с S3-хранилищем, в мс. Данный параметр опционален. Если данный параметр не указан, применится значение по умолчанию - |
|
Таймаут на чтение из S3-хранилища, в мс. Данный параметр опционален. Если данный параметр не указан, применится значение по умолчанию - |
|
Таймаут на запись в S3-хранилище, в мс. Данный параметр опционален. Если данный параметр не указан, применится значение по умолчанию - |
Выбор replica set для почтового ящика в административной панели#
Так как FSGW является прозрачным S3-шлюзом, выбор replica set для почтового ящика выполняется аналогично выбору S3-хранилища (см. Настройка S3-хранилищ) - в настройках почтового ящика необходимо выбрать запись с alias replica set.
При отправке/получении писем с вложениями с данного почтового ящика, Adapter Exchange будет отправлять запрос к FSGW, который в свою очередь будет обращаться к S3-хранилищам, указанным в данном replica set.