Развертывание кластеров
В данном разделе описывается процесс развертывания кластеров следующих типов: |
-
Active/Active/DBStandBy+ExternalFS
-
Active/Active/DBStandBy+InternalClusterFS(DRBD)
-
Active/Active/ExternalDB+InternalClusterFS(DRBD)
Предполагается, что необходимые серверы уже были установлены перед этапом развертывания кластеров |
Для развертывания кластеров необходимо выполнить следующую последовательность действий:
-
запустить процесс сборки кластера, выполнив следующий скрипт:
sudo iva-cli cluster configure \ --head-node-1-ip <HEAD_NODE_1_IP> \ --head-node-1-secondary-ip <HEAD_NODE_1_SECONDARY_IP> \ --head-node-2-ip <HEAD_NODE_2_IP> \ --head-node-2-secondary-ip <HEAD_NODE_2_SECONDARY_IP> \ --arbiter-node-ip <ARBITER_NODE_IP> \ --arbiter-node-secondary-ip <ARBITER_NODE_SECONDARY_IP> \ --media-node-ip <MEDIA_NODE_IP> \ --database-ip <DATABASE_IP> \ --filestorage-ip <FILESTORAGE_IP> \ --public-ip <PUBLIC_IP> \ --filestorage-device <FILESTORAGE_DEVICE>, --external-filestorage-device <FILESTORAGE_DEVICE> \ --filestorage-domain <FILESTORAGE_DOMAIN>, --external-filestorage-domain <FILESTORAGE_DOMAIN> \ --filestorage-username <FILESTORAGE_USERNAME>, --external-filestorage-username <FILESTORAGE_USERNAME> \ --filestorage-password <FILESTORAGE_PASSWORD>, --external-filestorage-password <FILESTORAGE_PASSWORD> \ --external-database-host <EXTERNAL_DATABASE_HOST> \ --external-database-port <EXTERNAL_DATABASE_PORT> \ --external-database-name <EXTERNAL_DATABASE_NAME> \ --external-database-username <EXTERNAL_DATABASE_USERNAME> \ --external-database-password <EXTERNAL_DATABASE_PASSWORD> \ --disable-local-media-service \ --db-resource-start-timeout <DB_RESOURCE_START_TIMEOUT>
где:
-
<HEAD_NODE_1_IP> — IP-адрес первого головного сервера (обязательный параметр)
-
<HEAD_NODE_1_SECONDARY_IP> — второй IP-адрес первого головного сервера (опциональный параметр, указывается в случае частичного / полного резервирования сети)
-
<HEAD_NODE_2_IP> — IP-адрес второго головного сервера (обязательный параметр)
-
<HEAD_NODE_2_SECONDARY_IP> — второй IP-адрес второго головного сервера (опциональный параметр, указывается в случае частичного / полного резервирования сети)
-
<ARBITER_NODE_IP> — IP-адрес сервера арбитра (опциональный параметр, указывается при использовании арбитра)
-
<ARBITER_NODE_SECONDARY_IP> — второй IP-адрес сервера арбитра (опциональный параметр, указывается в случае частичного / полного резервирования сети)
-
<MEDIA_NODE_IP> — IP-адрес медиасервера (опциональный параметр, рекомендуется добавлять медиасервера к кластеру головных серверов)
-
<DATABASE_IP> — плавающий IP-адрес, по которому будет доступна текущая база данных master (опциональный параметр, указывается при использовании локальной базы данных на головных серверах)
-
<FILESTORAGE_IP> — плавающий IP-адрес внутреннего файлового хранилища (обязательный параметр)
-
<PUBLIC_IP> — плавающий IP-адрес, по которому доступен web-интерфейс и SIP- / H.323-сигнализация (обязательный параметр)
-
<FILESTORAGE_DEVICE> — путь до локального файлового хранилища или URI до внешнего файлового хранилища (обязательный параметр)
Адреса файловых хранилищ указываются в следующем формате:
-
при использовании NFS: nfs://<IP-адрес>:/path_to_share или <IP‑адрес>:/path_to_share
-
при использовании CIFS / SMB: //<IP-адрес>/share_name
-
-
<FILESTORAGE_DOMAIN> — доменное имя внешнего файлового хранилища (опциональный параметр, указывается если есть доменное имя внешнего файлового хранилища)
-
<FILESTORAGE_USERNAME> — имя пользователя, используемое для аутентификации на внешнем файловом хранилище (опциональный параметр, указывается если требуется аутентификация на внешнем файловом хранилище)
-
<FILESTORAGE_PASSWORD> — пароль пользователя, используемый для аутентификации на внешнем файловом хранилище (опциональный параметр, указывается если требуется аутентификация на внешнем файловом хранилище)
-
<EXTERNAL_DATABASE_HOST> — IP-адрес внешнего сервера базы данных (опциональный параметр, указывается при использовании внешнего сервера базы данных)
-
<EXTERNAL_DATABASE_PORT> — порт внешнего сервера базы данных (опциональный параметр, указывается при использовании внешнего сервера базы данных)
-
<EXTERNAL_DATABASE_NAME> — название внешней базы данных (опциональный параметр, указывается при использовании внешнего сервера базы данных)
-
<EXTERNAL_DATABASE_USERNAME> — имя пользователя для доступа к внешней базе данных (опциональный параметр, указывается при использовании внешнего сервера базы данных)
-
<EXTERNAL_DATABASE_PASSWORD> — пароль пользователя для доступа к внешней базе данных (опциональный параметр, указывается при использовании внешнего сервера базы данных)
-
disable-local-media-service — ключ, выключающий медиасервисы на головных серверах (опциональный параметр, рекомендуется отключать медиасервисы на головных серверах)
-
<DB_RESOURCE_START_TIMEOUT> — таймаут для включения ресурса ivcs-db (опциональный параметр, по умолчанию 120 секунд)
Если к кластеру подключается одновременно несколько медиасерверов, то данные медиасерверы необходимо указывать подряд без добавления порядкового номера, например:
--media-node-ip 10.10.10.10 \ --media-node-ip 10.10.10.11 \ --media-node-ip 10.10.10.12
При использовании внешнего сервера базы данных необходимо в обязательном порядке указывать следующие ключи:
--external-database-host <EXTERNAL_DATABASE_HOST> \ --external-database-port <EXTERNAL_DATABASE_PORT> \ --external-database-name <EXTERNAL_DATABASE_NAME> \ --external-database-username <EXTERNAL_DATABASE_USERNAME> \ --external-database-password <EXTERNAL_DATABASE_PASSWORD> \
Ключи, прописанные в одной строке, являются взаимозаменяемыми:
--filestorage-device <FILESTORAGE_DEVICE>, --external-filestorage-device <FILESTORAGE_DEVICE> \ --filestorage-domain <FILESTORAGE_DOMAIN>, --external-filestorage-domain <FILESTORAGE_DOMAIN> \ --filestorage-username <FILESTORAGE_USERNAME>, --external-filestorage-username <FILESTORAGE_USERNAME> \ --filestorage-password <FILESTORAGE_PASSWORD>, --external-filestorage-password <FILESTORAGE_PASSWORD> \
После последнего ключа не ставится символ обратный слеш (\) В качестве внешней СУБД поддерживается PostgreSQL версии 9.6 и выше (включая PostgreSQL Pro) Сервер арбитр — отдельно стоящий головной сервер, используемый для предотвращения split-brain головных серверов, в случае пропадания сетевой связности между головными серверами.
Для установки арбитра необходимо использовать iso-образ головного сервера Платформы IVA MCU (в зависимости от типа операционной системы)
Команда iva-cli cluster configure является идемпотентной (может выполняться много раз без последствий для сервера) и приводит кластер в указанное состояние
-
-
сохранить изменения выполнив команду:
sudo iva-cli live save-changes
Если программное обеспечение компании IVA Technologies установлено на серверы с ОС Astra Linux, то команду sudo iva-cli live save-changes выполнять не требуется
-
после завершения настройки на всех серверах выполнить команду:
sudo iva-cli configurator lock
Если команда sudo iva-cli configurator lock не была запущена, то она автоматически выполнится через 1 час после завершения настройки