Подключение стороннего балансировщика к кластеру
Подключение стороннего балансировщика
По умолчанию система использует HAProxy для балансировки нагрузки. Рекомендуется использовать его в качестве балансировщика нагрузки, так как именно с ним система проходит все этапы тестирования и по умолчанию используется при установке у клиентов. Однако, если необходимо использовать сторонний балансировщик, выполните настройку в соответствии с этой инструкцией.
Важно : При использовании сторонних балансировщиков испытания системы на совместимость не проводились. Мы не можем гарантировать стабильную и бесперебойную работу системы с другими решениями. Использование сторонних балансировщиков осуществляется под вашу ответственность.
Перед началом убедитесь, что ознакомились с разделом "Установка и настройка отказоустойчивой конфигурации". Этот раздел актуален для настройки любого балансировщика.
Требования к стороннему балансировщику
Проксирование сообщений : балансировщик должен корректно обрабатывать следующие типы соединений:
- FTP-соединения : порты 20–21 и 30000–30199.
- HTTP-соединения : порты 1631, 8010, 8080.
- WebSocket-соединения (при использовании TCP-конвертера): порты 7776, 7777.
Если стандартные порты изменены при установке
ПМ,ПринтМенеджер, укажите новые значения.Проверка доступности (healthcheck) :
- Балансировщик должен выполнять HTTP-запросы на адрес
/health/. - Если ответ имеет статус 200 , сервер считается исправным. Любой другой ответ означает неисправность.
- Настройте механизм оповещений о сбоях серверов, доступный в вашем балансировщике.
- Балансировщик должен выполнять HTTP-запросы на адрес
Параметры настройки :
- Используйте алгоритм Round Robin с включением Sticky Session .
- Настройки таймаутов:
- Таймаут сервера (timeout server) : 30 секунд.
- Таймаут клиента (timeout client) : 30 секунд.
- Таймаут соединения (timeout connection) : 5 секунд.
- Повторы (retries) : не требуются.
- Используйте сгенерированные SSL-сертификаты для балансировщика.
После подготовки настроек установите ваш балансировщик.
Установка и настройка ПринтМенеджеров
Перед установкой первого ПринтМенеджера
Выполните команды для экспорта переменных окружения:
export NFS_ADDR=<NFS_ADDR> export NFS_PATH=<NFS_FOLDER_PATH> export DATABASE_URL=postgres://<POSTGRES_LOGIN>:<POSTGRES_PASSWORD>@<DB_HOST>:<PORT>/<BASE_NAME>Или с указанием конкретной схемы базы данных:
export DATABASE_URL=postgres://<POSTGRES_LOGIN>:<POSTGRES_PASSWORD>@<DB_HOST>:<PORT>/<BASE_NAME>?currentSchema=<POSTGRES_SCHEMA>Если используется табличное пространство, то добавьте команду:
export DATABASE_TABLESPACE=<DATABASE_TABLESPACE>Укажите настройки Redis и других сервисов (эти команды обязательны):
export REDIS_ROLE=master export REDIS_SENTINEL_LIST=<IP_1>,<IP_2>,<IP_3> export REDIS_MASTER_IP=<IP_1> export PM_HOSTNAME=<IP_1> export DRIVER_OPTS_TYPE="nfs" export DRIVER_OPTS_O="addr=<NFS_ADDR>,nolock,soft,rw" export DRIVER_OPTS_DEVICE=":/scratch" export EXT_HOSTNAME=<IP_BALANCER> export REDIS_PASSWORD=<REDIS_PASSWORD> export CUPS_PASSWORD=<CUPS_PASSWORD> export FTPD_PASSWORD=<FTPD_PASSWORD> export WEBDAV_PASSWORD=<WEBDAV_PASSWORD>Где:
- <NFS_ADDR> : IP-адрес или доменное имя сервера NFS.
- <NFS_FOLDER_PATH> : путь к директории NFS.
- <POSTGRES_LOGIN>, <POSTGRES_PASSWORD>, <POSTGRES_SCHEMA> : данные для подключения к базе.
- <IP_1>, <IP_2>, <IP_3> : IP-адреса серверов ПринтМенеджера.
- <IP_BALANCER> : IP-адрес балансировщика.
Важно : Оставайтесь в этом же терминале до завершения установки, иначе переменные окружения будут потеряны.
Запустите установку первого ПринтМенеджера.
Установка второго и последующих ПринтМенеджеров
Повторите команды экспорта переменных окружения, изменив:
export REDIS_ROLE=slave export PM_HOSTNAME=<IP>Где <IP> — IP-адрес устанавливаемого сервера. Запустите установку.
Проверка корректности установки
- Проверьте систему по "Чек-листу для проверки корректной установки".
- Исключите проверки, связанные с настройкой HAProxy.
- Добавьте собственные проверки, актуальные для вашего балансировщика.