Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Данная модель предусматривает постоянную репликацию данных с основного на резервный сервер. В случае выхода из строя основного сервера позволяет за считаные минуты переключить все переключиться на резервный.

Gliffy Diagram
macroIdff0dd1b9-c8d1-4299-b2a5-65e5f593cf8d
displayNameWarm standby
nameWarm standby
pagePin2

Table of Contents

Подготовка

Сеть

  1. На серверах будут назначены частный частные IP адрес адреса для коммуникации между собой.
  2. Если сервис не предусматривает выход в интернетИнтернет, тогда дополнительный частный IP должен быть назначен на основную ноду.
  3. Если сервис работает в сети интернетИнтернет, тогда публичный IP может быть назначен на маршрутизаторе с DNAT на основную ноду.
  4. Альтернативный вариант - назначение публичного IP адреса непосредственно на основной ноде.
  5. Взаимодействие клиентом клиента с сервером должно происходить по записи в DNS, которая ссылается на общий для серверов публичный или частный IP.

База данных

Webitel использует PostgreSQL 14. На обеих обоих серверах необходимо установить PostgreSQL 14 со всеми компонентами, как указано в документации. На резервном сервере необходимо настроить потоковую репликацию (Streaming Replication) данных. Описание вы можете найти в официальной документации либо в нашем файле по установке.

Теперь все данные созданные на основном сервере моментально будут переноситься и на резервный.

Медиафайлы

По умолчанию Webitel хранит записи разговоров на файловой системе в /opt/storage

Способы обеспечения доступности данных:

  1. Подключение NAS-сервера. В данном случае сетевую файловую систему NAS-сервера необходимо подмонтировать как /opt/storage на оба сервера.
  2. Подключение S3 хранилища. Все записи разговоров будут храниться на распределенной сетевой файловой системе и одинаково доступны для обеих обоих серверов.
  3. Периодичная Периодическая синхронизация данных. С помощью rsync настроить синхронизацию данных /opt/storage с основного сервера на резервный.

Сервисы

Установка всех сервисов webitel на оба сервера. На резервном сервере все сервисы необходимо остановить. Также, важно после выполнения лицензирования пользователей на основном сервере, перенести содержимое /usr/local/webitel на резервный.

Переключение

Сеть

Переключить основной публичный или частный IP адрес на резервный сервер.

База данных

Перевести PostgreSQL 14 из режима работы реплики в режим основного сервера (pg_ctl _promote).

Сервисы

Запустить все сервисы webitel на резервном сервере.