The Magician

This is an old revision of the document!


Создание динамического кластера CGP

Динамический кластер CGP с общим хранилищем

В данном примере я рассмотрю создание динамического кластера CommuniGate с общим хранилищем, совмещенная конфигурация (роли Frontend и Backend выполняют одни и те же серверы).

В данном материале подразумевается, что общее хранилище (в моем конкретном случае NFS + Ceph) уже настроено и на всех серверах доступна общая папка, в которой будут располагаться кластеризованные данные.

/storage

Более того: CGP вполне возмождно установить на серверы, которые являются непосредственно нодами Ceph.

Настройка

1. В первую очередь необходимо выполнить установку CGP на все серверы, которые будут участвовать в кластере.

2. Следующим загом согласно документации CGP должна выступать настройка каналов внутрикластерного взаимодействия, количество которых необходимо увеличить.

HTTPA -> Установки-> Услуги -> PWD
5* (число Бэкенд-Серверов) + 3*(число Фронтенд-Серверов)

https://doc.communigatepro.ru/russian/admin/cluster/Dynamic.html

3. Останавливаем ноды.

systemctl stop CommuniGate

4. Теперь необходимо создать директорию, в которой будут расположены общекластерные данные, она должна называться SharedDomains. Делаем её прямо на нашем общем Ceph-storage.

mkdir /storage/SharedDomains

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

5. Теперь каждому участнику кластера необходимо передать параметры запуска, содержащие флаг о том, что данный сервер будет состоять в кластере, а также информацию о созданной общей директории. Для передачи параметров необходимо на каждом сервере создать специальный файл Startup.sh в директории CommuniGate. Данный файл должен иметь права на запуск.

touch /var/CommuniGate/Startup.sh
chmod +x /var/CommuniGate/Startup.sh

Теперь укажем в файле параметры запуска следующим образом:

SUPPLPARAMS="--SharedBase /storage/SharedDomains --ClusterBackend"

:!: В CGP существует отдельный параметр для запуска серверов в режиме frontend: –ClusterFrontend. Несмотря на то, что наша конфигурация является совмещенной и серверы будут выполнять в том числе и роль фронтендов, данный параметр указыввать НЕ ТРЕБУЕТСЯ, т.к. он предназначен для выделенных frontend-серверов.

6. На следующем этапе мы можем запустить какой-то конкретный сервер. Он должен стать контроллером кластера.

Проверить, что сервер подцепил необходимые параметры запуска можно так:

systemctl status CommuniGate.service

В нормальном случае мы увидим:

● CommuniGate.service - CommuniGate Pro Communication Server
     Loaded: loaded (/usr/lib/systemd/system/CommuniGate.service; enabled; vendor preset: enabled)
     Active: active (running) since Mon 2026-08-24 13:56:26 MSK; 2 weeks 2 days ago
   Main PID: 1995264 (CGServer)
      Tasks: 69 (limit: 19161)
     Memory: 104.2M
        CPU: 30min 34.540s
     CGroup: /system.slice/CommuniGate.service
             └─ 1995264 /opt/CommuniGate/CGServer --SharedBase /storage/SharedDomains --ClusterBackend
создание_динамического_кластера_cgp.1789028909.txt.gz · Last modified: by jp