Установите дополнительные модули
Если установщик нужно открыть на сервере установки
1. Скачайте файл установки с rep-box.webinar.ru
sudo su
wget https://rep-box.webinar.ru/installer/mts-link-installer_v3.9.193
где v3.9.193 соответствует последней версии релиза. Версии релиза и доступные релизы вы можете узнать на ресурсе https://rep-box.webinar.ru/releases.json
2. Сделайте файл исполняемым
chmod +x ./mts-link-installer
3. На сервере установки выполните команду:
./mts-link-installer
После запуска установщик автоматически выберет IP-адрес локальной машины, поднимет WebUI на порту 9443 и выведет URL с токеном.
4. Перейдите по ссылке из консоли.
Если установщик нужно открыть с другой машины
Предпочтительный вариант — SSH-туннель.
1. На локальной машине администратора выполните проброс порта
ssh -L 19443:<IP-адрес сервера установки>:9443 installer@<IP-адрес сервера установки>
В этом случае откройте порт 9443/TCP только для доверенной административной сети.
2. Затем на локальной машине откройте [http://127.0.0.1:19443](http://127.0.0.1:19443)
SSH-сессия с пробросом порта должна оставаться открытой во время работы в браузере. Завершение туннеля закрывает доступ к Web UI, но не обязательно останавливает сам процесс инсталлятора.
Если в выводе установщика есть ссылка с токеном вида [http://127.0.0.1:9443/?token=](http://127.0.0.1:9443/?token=)<token>, замените порт на локальный [http://127.0.0.1:19443/?token=](http://127.0.0.1:19443/?token=)<token>
Если установщик нужно явно опубликовать в сеть
sudo ./mts-link-installer --webui-bind 0.0.0.0 --webui-port 9443
--webui-bind и --webui-port нужны только для ручного переопределения автоматически выбранного IP-адреса и порта.
Открывайте порт WebUI только для доверенной административной сети.
Используйте прямую публикацию только во внутренней доверенной административной сети. Ограничьте 9443/TCP по source IP и не публикуйте Web UI во внешнюю сеть.
Чтобы ограничить доступ к WebUI по IP-адресу или сетям, используйте --webui-trusted-networks. Значение задаётся через запятую, поддерживаются CIDR и одиночные IP.
sudo ./mts-link-installer --webui-bind 0.0.0.0 --webui-trusted-networks 10.60.0.0/16,192.168.1.10
Если --webui-trusted-networks не задан, WebUI доверяет всем источникам, как раньше. Токен доступа при этом всё равно обязателен.
Если SSH на сервере установки работает на нестандартном порту
ssh -p <ssh_port> -L 19443:127.0.0.1:9443 installer@<IP-адрес сервера установки>
Если используется SSH-ключ
ssh -i /path/to/private_key -L 19443:127.0.0.1:9443 installer@<IP-адрес сервера установки>
Запуск в устойчивой терминальной сессии
Чтобы процесс не завершился при разрыве административного SSH-подключения, рекомендуется использовать tmux или screen.
tmux new -s mts-installer
sudo ./mts-link-installer --webui-bind 127.0.0.1 --webui-port 9443
# Отсоединиться: Ctrl+B, затем D
# Вернуться:
tmux attach -t mts-installer
Проверка процесса:
ss -lntp | grep 9443
ps aux | grep '[m]ts-link-installer'
Для штатной остановки используйте Ctrl+C в терминале инсталлятора. Не завершайте процесс во время выполняющейся установки.
Важно
SSH-сессия с ключом -L должна оставаться открытой, пока администратор работает в веб-установщике
порт веб-установщика на сервере установки не нужно открывать на firewall для всех сетей
в браузере нужно открывать локальный адрес 127.0.0.1 и локальный порт из левой части -L
веб-установщик выводит ссылку с токеном, используйте этот токен в локальном URL через проброшенный порт.
В веб-установщике укажите файл с лицензионным ключом. Вы можете загрузить файл с компьютера администратора или указать абсолютный путь к файлу на сервере установки.

После добавления файла с лицензией установщик проверяет:
валидность файла лицензии
наличие лицензии Платформы
наличие хотя бы одного основного продукта
доступность репозитория
доступность сервера лицензирования.
После успешной проверки перейдите в раздел Продукты на вкладку Информация и проверьте версию релиза.

На вкладке Лицензия проверьте:
срок действия лицензии
почту администратора
пиковую нагрузку
количество пользователей.

Перейдите на вкладку Поставка.

1. Выберите тип инсталляции — all-in-one или распределенная.
Если у вас инсталляция all-in-one, выберите Область — Общий, Тип установки — Стандарт. В таком случае каждый продукт МТС Линк будет установлен на одну виртуальную машину.
Если у вас распределенная инсталляция, выберите:
область — общий, тип установки — распределенная, если необходимо нагрузку каждого продукта распределить по нескольким виртуальным машинам
область — по продуктам, тип установки — распределенная, если необходимо распределить определенные продукты по нескольким виртуальным машинам. Например, вы можете установить Чаты на одну виртуальную машину, а Встречи распределить по нескольким машинам.
Описание распределенной инсталляции представлено ниже.
2. Выберите режим установки — онлайн или оффлайн. Для онлайн-режима проверьте, что онлайн-ресурсы доступны. Описание офлайн-режима представлено ниже.
Пропустите этот шаг, если у вас all-in-one инсталляция.
1. Если у вас распределенная инсталляция и необходимо распределить определенные продукты по нескольким виртуальным машинам перейдите на вкладку Управление и измените тип установки для необходимых продуктов:
стандарт — продукт будет установлен на одну виртуальную машину
распределенная — продукт будет распределен по нескольким виртуальным машинам.

2. Перейдите в раздел Настройки на вкладку IP-адреса и распределите роли по виртуальным машинам в соответствии с проектным сайзингом. Укажите название виртуальной машины, ее IP-адрес и нажмите на кнопку Добавить ВМ.
Добавьте таким образом все машины.
3. Распределите роли по виртуальным машинам — выберите роль из выпадающего списка и нажмите на значок +.

Примечание: Вы можете импортировать распределение ролей по виртуальным машинам. Для этого выгрузите шаблон импорта, заполните его и импортируйте в установщик.

Пример заполненного шаблона:
{
"type": "mts-link-distributed-role-assignment",
"version": 1,
"exportedAt": "2026-08-06T16:18:04.920Z",
"vms": [
{
"ip": "10.10.10.1",
"name": "Haproxy",
"order": 1
},
{
"ip": "10.10.10.2",
"name": "Чаты",
"order": 2
},
{
"ip": "10.10.10.3",
"name": "Платформа",
"order": 3
},
{
"ip": "10.10.10.4",
"name": "Встречи API",
"order": 4
},
{
"ip": "10.10.10.5",
"name": "Встречи Media",
"order": 5
},
{
"ip": "10.10.10.6",
"name": "Встречи БД",
"order": 6
}
],
"roles": [
{
"field": "WebinarDBIP",
"product": "МТС Линк Встречи",
"label": "База данных",
"value": "10.10.10.6",
"order": 13
},
{
"field": "WebinarWebIP",
"product": "МТС Линк Встречи",
"label": "Веб-приложение",
"value": "10.10.10.4",
"order": 11
},
{
"field": "WebinarMediaIP",
"product": "МТС Линк Встречи",
"label": "Медиа-сервер",
"value": "10.10.10.5",
"order": 12
},
{
"field": "WebinarWebIP",
"product": "МТС Линк Встречи",
"label": "ИИ коннектор",
"value": "10.10.10.4",
"order": 11
},
{
"field": "ChatsDBIP",
"product": "МТС Линк Чаты",
"label": "База данных",
"value": "10.10.10.2",
"order": 4
},
{
"field": "ChatsAPIIP",
"product": "МТС Линк Чаты",
"label": "API сервисы",
"value": "10.10.10.2",
"order": 5
},
{
"field": "PlatformDBIP",
"product": "МТС Линк Платформа",
"label": "База данных",
"value": "10.10.10.3",
"order": 6
},
{
"field": "PlatformS3IP",
"product": "МТС Линк Платформа",
"label": "S3 хранилище",
"value": "10.10.10.3",
"order": 7
},
{
"field": "PlatformAPIIP",
"product": "МТС Линк Платформа",
"label": "API Gateway",
"value": "10.10.10.3",
"order": 8
},
{
"field": "PlatformHAProxyIP",
"product": "МТС Линк Платформа",
"label": "HAProxy балансировщик",
"value": "10.10.10.1",
"order": 2
}
]
} Пропустите этот шаг, если вы используете онлайн-режим установки (корпоративный репозиторий МТС Линк, содержащий роли Ansible, Docker-контейнеры и локальный регистри).
Если вы используете офлайн-режим установки:
1. На вкладке Поставка выберите Офлайн

2. Перейдите на вкладку Офлайн и выберите в поле Источник image вариант монтирования.
Если вы смонтировали img самостоятельно до запуска установщика, выберите Смонтирован и укажите каталог монтирования.
Если img не смонтирован до запуска установки, выберите Файл .img — установщик смонтирует его самостоятельно. Укажите в поле Файл image путь к image на сервере — /opt/installer/custom-registry.img.

При старте установки установщик:
▪ смонтирует custom-registry.img read-only в /mnt/custom-registry, если он еще не смонтирован
▪ загрузит registry:2 из /mnt/custom-registry/docker-image.registry2.tar, если такого образа нет локально
▪ запустит контейнер local-registry на порту 5000 с read-only volume: /mnt/custom-registry/registry-data:/var/lib/registry:ro
▪ проверит http://<registry-url>/v2/
▪ для remote/distributed установки добавит <registry-url> в Docker insecure-registries на целевых виртуальных машинах и перезапустит Docker
▪ передаст Ansible registry-переменные (registry_url, docker_registry, docker_registry_url, registry) со значением локального регистри
▪ укажет Ansible-роли из архивов внутри смонтированного image.
3. Если img смонтирован на одной из целевых виртуальных машин, выберите в поле Расположение — Локальный репо. Если смонтирован на не целевой машине, выберите На удаленной ВМ и укажите адрес локального регистри в виде, доступном с целевых виртуальных машин.
4. Затем нажмите Проверить. Инсталлятор проверит:
▪ путь указывает на image
▪ image смонтирован или может быть использован как /mnt/custom-registry
▪ внутри есть docker-compose.yml, docker-image.registry2.tar и registry-data
▪ для выбранных продуктов есть архивы ролей
▪ образы, найденные в ролях, есть в registry-data.
На вкладке Управление отображается список модулей из файла лицензии.

Если все корректно, перейдите к настройкам инсталляции.
Перейди в раздел Настройки на вкладку Домены.

Домены продуктов подставляются автоматически из файла лицензии и не требуют изменения. Укажите IP-адрес локального DNS-сервера. Если корпоративный DNS еще не готов, внесите временные записи в /etc/hosts на сервере установки и целевых виртуальных машинах, подробнее — см. раздел Настройте DNS-зону.
Перейдите на вкладку Сертификаты.

Если вы используете wildcard-сертификат, выберите Будет использован 1 сертификат для всех продуктов. Либо вы можете использовать отдельные сертификаты для продуктов.
Если используется wildcard-сертификат *.example.com, убедитесь, что он покрывает все домены на одном уровне зоны. Например, покрывает meetings.example.com, но не покрывает a.b.example.com.
Укажите абсолютные пути к сертификату и ключу на сервере установки или загрузите через кнопку Обзор.
После заполнения выполните проверку сертификатов, нажав на кнопку Проверить.
Пропустите этот шаг, если у вас распределенная инсталляция. Перейдите на вкладку IP-адреса.

IP-адреса целевых виртуальных машин определяются автоматически. Если необходимо внести изменения — укажите целевые IP-адреса для продуктов.
Для типовой поставки Встречи + Чаты + Платформа:
IP Встреч — IP-адрес виртуальной машины для Встреч
IP Чатов — IP-адрес виртуальной машины для Чатов
IP Платформы — обычно тот же IP-адрес, что и у Чатов.
Если Встречи публикуются за NAT, включите опцию Используется внешний IP и укажите внешний IP-адрес Встреч.
Важно
внутренний IP-адрес используется для SSH и установки
DNS должен резолвиться в тот IP-адрес, который соответствует выбранной схеме
если NAT настроен некорректно, установка может пройти, но пользователи не смогут подключаться к медиасервисам.
Установщик проверяет наличие базовых зависимостей на сервере установки и целевых виртуальных машинах. Если установщик обнаружит отсутствующие зависимости, отображается окно Необходимые пакеты.

Нажмите на кнопку Доставить пакеты, чтобы установщик установил недостающие пакеты через системный пакетный менеджер.
Чтобы пакеты установились, необходимо выполнение следующих условий:
у виртуальных машин есть доступ к репозиториям операционных систем или внутренним зеркалам заказчика. Если репозитории операционных систем закрыты от целевых виртуальных машин, установите эти пакеты заранее
у виртуальных машин есть доступ к rep-box.webinar.ru для получения Docker Compose
SSH-пользователь может выполнять sudo -n
установка пакетов согласована с администратором операционной системы.
на целевых виртуальных машинах есть доступ к /bin/bash.
Если доставка невозможна из-за политик заказчика, установите пакеты вручную.
Какие пакеты устанавливает Web UI
Для Debian и Astra Linux:
Ansible
утилита Rsync
python-is-python3
утилита Wget
утилита jq
python3-docker
утилита logrotate.
Для RedOS используется DNF:
Ansible
утилита Rsync
python3-docker
утилита Wget
утилита jq
утилита logrotate.
Также установщик устанавливает бинарный Docker Compose:
[https://rep-box.webinar.ru/contrib/docker-compose-Linux-x86_64/usr/local/bin/docker-compose](https://rep-box.webinar.ru/contrib/docker-compose-Linux-x86_64/usr/local/bin/docker-compose)
Перейдите на вкладку SSH и укажите:
пользователя SSH
порт SSH. По умолчанию — 22
тип аутентификации — ключ или пароль
путь к приватному ключу или пароль
кодовую фразу ключа при необходимости.

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

Почта администратора подтягивается из файла лицензии. Укажите пароль администратора, название инсталляции Чатов и качество видео. Пароль должен соответствовать политике безопасности заказчика и быть сохранен в корпоративном хранилище секретов.
Инсталлятор автоматически генерирует сервисные токены, JWT- и OAuth-ключи. В интерфейсе отображаются контрольные SHA256-отпечатки. В стандартном сценарии изменять их вручную не требуется.
Перейдите на вкладку Токены и нажмите на кнопку Сгенерировать ключи и секреты.

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

При выборе Табличный на странице с монитором отображается построчное выполнение стадий установки.

При выборе Блочный страница с со стадиями установки приобретает блочный вид.

Чтобы отобразить на мониторе установки IP-адреса виртуальных машин, роли и теги запуска Ansible, включите опции IP ВМ, Роли и Теги запуска.

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

После этого у завершенных ролей появится кнопка перезапуска.

Настройки безопасности параметров инсталляции
Перейдите в раздел Дополнительно и включите опцию Шифрование файлов инсталлятора.

После завершения работы установщика все файлы, созданные в директории /opt/installer/, собираются в зашифрованный архив, данные из которого может получить только установщик.
Режим детальных логов установки
Чтобы включить этот режим, перейдите в раздел Настройки на вкладку Опции и включите Режим детальных логов.

Настройка будет полезна в случае долгой установки роли или других компонентов. Используется при диагностике сложной ошибки или по запросу поддержки.
Использование прокси-сервера
Перейдите в раздел Дополнительно и включите опцию Прокси.
Далее перейдите в раздел Настройки на вкладку Опции и укажите настройки проксирования.

Если вы хотите использовать прокси-сервер, настроенный на одной из целевых виртуальных машин, включите опцию Proxy из окружения.
Если необходимо использовать корпоративный прокси-сервер вне инсталляции, укажите его IP-адрес и порт в поле Proxy URL.
Если в процессе установки для активации лицензии необходимо направлять запросы через отдельный прокси-сервер, укажите IP-адрес и порт сервера в поле Прокси для лицензий. Этот прокси-сервер будет прописан в настройках серверов лицензирования на виртуальной машине.
Настройки Docker
Перейдите в раздел Дополнительно и включите опцию Параметры докера.

Далее перейдите в раздел Настройки на вкладку Опции и укажите новые настройки Docker.
Если стандартная Docker-подсеть пересекается с вашими сетями и необходимо ее перенастроить, укажите подсеть в поле Docker сеть.
Если основное хранилище данных Docker находится не в /var/lib/docker, укажите другой каталог в поле Каталог Docker.
Настройки окружения
Перейдите в раздел Дополнительно и включите опцию Настройки окружения.

Далее перейдите в раздел Настройки на вкладку Опции и укажите необходимые пути для Ansible-playbook, Python и интерпретатора Python.

Настройки таймаутов
Перейдите в раздел Дополнительно и включите опцию Настройки таймаутов.

Далее перейдите в раздел Настройки на вкладку Опции.

Если виртуальные машины или сеть медленные или установлен антивирус и задачи не успевают завершиться:
При долгом скачивании или запуске контейнеров повысьте таймаут в поле Таймаут Compose HTTP.
При медленном Docker daemon или больших образах повысьте таймаут в поле Таймаут клиента Docker.
Управление каталогами данных
Перейдите в раздел Дополнительно и включите опцию Каталоги данных.

Далее перейдите в раздел Настройки на вкладку Опции.

Если у вас распределенная инсталляция или если используются внешние хранилища для больших каталогов, укажите каталоги для данных Kafka, Elastic и встроенного MinIO.
Чтобы подключить внешнее S3-хранилище, укажите:
1. Адрес сервера S3
2. Access Key ID
3. Secret Access Key
4. Регион
5. Бакет S3.
Настройка тегов запуска ролей
Перейдите в раздел Дополнительно и включите опцию Управление тегами запуска.

Далее перейдите в раздел Настройки на вкладку Опции и нажмите на кнопку Настройка тегов.
На странице можно указать теги запуска ролей, который будут отображаться в мониторе установки.

Проверки выполняются последовательно. После исправления ошибок или изменения настроек повторите соответствующую проверку.
Перейдите в раздел Проверки на вкладку Проверка DNS. Раздел показывает ожидаемые DNS-записи, IP-адреса и результаты проверки.

Проверка сопоставляет выбранные продукты, домены и IP-адреса с поддерживаемым сценарием. Для типовой поставки «Встречи + Чаты + Платформа» убедитесь, что домены wowza и webrtc разрешаются в IP-адреса виртуальных машин Встреч, а основной домен Встреч, mgw, message и домены Чатов — в IP-адреса виртуальных машин Чатов + Платформы. Ошибка о невозможности сопоставить dns_routing обычно означает, что домены или состав продуктов еще не заполнены либо не соответствуют ожидаемой схеме.
Проверьте, что все строки имеют статус OK.
Если статус unresolved — добавьте DNS-запись или временную запись в /etc/hosts.
Если статус mismatch — исправьте IP-адрес в DNS.
Перейдите на вкладку Проверка окружения.

На экране отображаются целевые узлы, назначение продуктов, недостающие пакеты и статус проверки. Нажмите на кнопку Запустить проверку.
Если установщик предлагает доставить пакеты, подтвердите установку только после согласования с администратором операционной системы и при наличии доступа к репозиториям.
Если недостающих зависимостей нет, перейдите на вкладку Проверка конфигурации.

Проверка конфигурации контролирует согласованность выбранных параметров. Проверка переменных подтверждает наличие обязательных значений для установки. Нажмите на кнопку Запустить проверку.
При ошибке вернитесь на вкладку Настройки, исправьте значение и повторите проверку. После изменения домена, IP, сертификата, SSH, состава продуктов, proxy, Docker-подсети или дополнительного модуля запустите все проверки заново.
Если все проверки пройдены, перейдите на вкладку Проверка переменных и нажмите на кнопку Проверить переменные.

Если все проверки пройдены, сохраните архив текущей конфигурации — перейдите в раздел Дополнительно.

Интерфейс поддерживает сохранение и скачивание, загрузку с сервера и загрузку файла.
Контрольная точка перед запуском установки:
состав продуктов соответствует лицензии и проекту
IP-адреса и домены подтверждены владельцами сети и DNS
домен Платформы имеет вид <префикс Встреч>-mgw.<зона>
сертификаты проверены и покрывают все FQDN
SSH и sudo работают на всех целевых виртуальных машинах
нет CRITICAL в проверках. Причины WARNING понятны и зафиксированы
Docker-подсеть не пересекается с сетями заказчика
достаточно места на дисках
архив конфигурации сохранён
окно работ согласовано, параллельные изменения остановлены.
Далее перейдите на вкладку План установки и нажмите на кнопку Сформировать план установки.

План показывает:
Совпадение IP Чатов и Платформы является нормальным для типовой стандартной схемы совместного размещения.
Важно
Не запускайте установку, если в плане присутствует неожиданный IP, продукт, который должен быть выключен, или отсутствует требуемый продукт. Исправьте конфигурацию и сформируйте план повторно.
Проверьте план до запуска.
После успешных проверок и подтверждения плана запустите установку — нажмите на кнопку Запустить.
Не закрывайте процесс инсталлятора, не перезагружайте целевые виртуальные машины, не перезапускайте Docker вручную и не запускайте вторую сессию инсталлятора.
Примечание: закрытие вкладки браузера не обязательно останавливает установку. Сначала восстановите SSH-туннель, повторно откройте быструю ссылку и проверьте монитор. Завершение процесса mts-link-installer останавливает бэкенд.
После запуска установки на экране отображаются:

Типовые стадии установки
Платформа | Подготовка системы, База данных, S3 хранилище, API Gateway, HAProxy балансировщик
Чаты | Подготовка системы, База данных, API сервисы
Встречи | Подготовка системы, Медиа-сообщения, База данных, Веб-приложение, Медиа-серверы, Пост-установка
Доски | Приложение Доски
Во вкладке Логи можно посмотреть последние строки лога по текущей роли.

После завершения установки сохраните план и лог установки.

По окончании установки в мониторе отображается сообщение «Все стадии завершены».
Нажмите на кнопку Проверка инсталляции, чтобы проверить состояние сервисов после установки.

Установщик отображает:

При возникновении неполадок с контейнерами и Kafka Connect обратитесь к архитектурной документации для их устранения.
Установленные продукты отображаются в разделе Продукты на вкладке Информация.

Нажмите на кнопку Перейти, чтобы авторизоваться в веб-версии продукта.
В веб-интерфейсе установщика перейдите в раздел Продукты на вкладку Управление и включите опцию ИИ коннектор.

Перейдите в раздел Настройки на вкладку Дополнительные продукты → ИИ коннектор.

Настройки заполняются только по согласованной схеме интеграции. Выберите источник подключения ASR-модели и к LLM-модели:
внешний сервис — любая модель на ваш выбор
своя модель — Подходит для работы в контуре компании при ограниченном доступе в интернет
модель вендора — open source-решение в составе дистрибутива МТС Линк. Подходит для работы в контуре компании при ограниченном доступе в интернет.
Укажите адреса и порты моделей, токены доступа и при необходимости включите авторизацию без ключа.
Нажмите на кнопку Запустить установку.
SIP-коннектор разворачивается на отдельных виртуальных машинах (см. Технические требования). Подключение SIP-коннектора доступно после установки модуля Встреч и Платформы.
Перед подключением подготовьте логин и пароль администратора Vinteo.
Чтобы подключить SIP-коннектор, в веб-интерфейсе установщика перейдите в раздел Продукты на вкладку Управление и включите опцию SIP-коннектор.

Перейдите в раздел Настройки на вкладку Дополнительные продукты → SIP-коннектор.
Заполните форму и нажмите на кнопку Запустить установку.
При установке Встреч автоматически устанавливается один основной конвертер записей звонков. Использование дополнительного конвертера позволяет сократить время подготовки видео файлов, сконвертированных из интерактивных записей мероприятий, для их последующего скачивания пользователем.
Дополнительный конвертер записи звонков разворачивается на отдельной виртуальной машине (см. Технические требования). Подключение дополнительного конвертера доступно после установки Встреч и Платформы.
Перед установкой дополнительного конвертера:
1. Проверьте, является ли уже установленная версия МТС Линк последней выпущенной. Если нет, то необходимо обновить на последнюю
2. Проверьте наличие доступа к репозиториям МТС Линк
3. Запросите у представителей МТС Линк новый файл с лицензионным ключом и добавьте его в установщик.
Чтобы подключить дополнительный конвертер, в веб-интерфейсе установщика перейдите в раздел Продукты на вкладку Управление и включите опцию Дополнительный конвертер.
Перейдите в раздел Настройки на вкладку Дополнительные продукты → Дополнительный конвертер.

Выберите количество конвертеров (количество виртуальных машин, выделенных под конвертеры).
Укажите IP-адреса виртуальных машин и нажмите Запустить установку.
Типовой цикл установки состоит из следующих этапов:
Ознакомьтесь с техническими требованиями и настройте окружение.
--cli --lic — проверьте лицензию/репозитории и создайте шаблон параметров.
Заполните шаблон параметров cli_params.toml.
--cli --preflight — выполните SSH/prereq/preflight-проверки и сохраните отметку успеха.
--cli --deliver-packages — при необходимости доставьте недостающие зависимости.
--cli --install — сформируйте план установки и запустите ее.
Подробнее каждый этап описан ниже.
После того, как окружение настроено, проверьте лицензию/репозитории и создайте шаблон параметров — подключитесь к виртуальной машине с установщиком и выполните команду:
./mts-link-installer --cli --lic <путь до файла лицензии> --mode install
где ./mts-link-installer — путь к исполняемому файлу установщика. По умолчанию шаблон параметров создается в директории /opt/installer/cli_params.toml. Вы можете указать другой путь до директории:
./mts-link-installer --cli --lic <путь до файла лицензии> --mode install --params /opt/installer/cli_params.toml
После проверки лицензии CLI выводит:
rep-box.webinar.ruЕсли лицензия или внешние сервисы недоступны, шаблон не считается готовым к установке: исправьте причину и повторите команду --cli --lic.
Перейдите в шаблон параметров, созданный на предыдущем шаге, и укажите параметры инсталляции.
В файле шаблона параметров перед каждой секцией есть комментарии с описанием, что заполнять. Отдельной секции описание находится рядом с параметрами, чтобы файл было удобно читать и править в консоли.
Основные секции:
[general] — режим, релиз, путь к лицензии, общий deployment
[run_products] — включение или выключение продуктов в текущем запуске, имеет приоритет над products.<uid>.enabled
[products.<uid>] — параметры продукта: режим, домен, IP-адрес стандартной виртуальной машины
[products.<uid>.roles] — IP-адреса ролей для distributed
[ssh] — SSH-пользователь, порт, ключ или пароль, sudo-пароль
[dns] — DNS customer forward
[ssl] — wildcard-сертификаты или сертификаты по продуктам
[admin] — пароль администратора после установки Встреч
[options] — proxy, docker subnet/data-root, таймауты
[offline] — custom-registry.img, если установка идет без доступа к внешнему registry/rep-box
[preflight] — служебная отметка успешного preflight-запроса; вручную не править.
В секции [ssh] поддерживается вход по ключу и по паролю:
[ssh]
auth_mode = 'key'
user = 'installer'
port = 22
key_file = '/home/installer/.ssh/id_ed25519'
key_passphrase = ''
password = ''
sudo_password = ''
Для парольного входа укажите auth_mode = 'password' и заполните password. Параметр sudo_password нужен, если пользователь не root и sudo требует пароль.
Сертификаты:
[ssl]
wildcard_enabled = true
[ssl.wildcard]
cert = '/opt/installer/certs/wildcard.crt'
key = '/opt/installer/certs/wildcard.key'
Если wildcard_enabled = false, заполните [ssl.platform], [ssl.chats], [ssl.webinar], [ssl.boards] для включенных продуктов.
Пример distributed-ролей:
[run_products]
platform = true
chats = true
webinar = true
boards = false
[products.platform.roles]
core = '10.60.50.66'
db = '10.60.50.66'
s3 = '10.60.50.66'
api = '10.60.50.66'
haproxy = '10.60.50.66'
[products.webinar.roles]
db = '10.60.50.35'
web = '10.60.50.35'
media = '10.60.50.35'
media_msg = '10.60.50.35'
Для офлайн-режима заполните секцию offline:
[offline]
enabled = true
image_path = '/opt/installer/custom-registry.img'
# Альтернатива registry_via_ssh: локальная компактная копия на каждой виртуальной машине из плана
registry_copy_to_hosts = true
# Абсолютный каталог на целевых виртуальных машинах; архив также передается в этот filesystem
registry_target_dir = '/data/mts-local-registry'
Параметры registry_copy_to_hosts и registry_via_ssh взаимоисключающие. В первом случае требуется только SSH с сервера установки к каждой виртуальной машине; Docker на виртуальной машине обращается к своему 127.0.0.1:5000.
Важно
img должен быть доступен на хосте, где запускается установщик. Роли берутся из tar.gz внутри image, Docker-образы — из локального registry storage внутри custom-registry.img.
После внесения изменений сохраните шаблон параметров.
Выполните preflight-запрос при помощи команды:
./mts-link-installer --cli --preflight
Вы также можете проверить отдельные продукты:
./mts-link-installer --cli --preflight webinar chats
Если критичных ошибок нет, в шаблоне параметров cli_params.toml сохраняется отметка успешной проверки для текущего session.toml. Preflight в CLI делает следующее:
проверяет SSH-доступ и sudo
проверяет недостающие пакеты на локальной машине и целевых виртуальных машинах
проверяет DNS, сертификаты, Docker/registry, порты и системные требования
собирает session.toml из cli_params.toml
сохраняет хеш-сумму в [preflight]. На следующем шаге --install сверяет хеш-сумму с текущими параметрами. Если файл изменился после проверки, установка не стартует и попросит повторить --preflight.
Важно: если после выполнения preflight-запроса менялись домены, IP-адреса, SSH, сертификаты, продукты или другие параметры, запустите preflight заново.
Этот шаг можно пропустить, если --preflight не сообщает о недостающих зависимостях. Если нужно поставить зависимости на локальный хост или целевые виртуальные машины, выполните команду:
./mts-link-installer --cli --deliver-packages
С явным файлом параметров:
./mts-link-installer --cli --deliver-packages --params /opt/installer/cli_params.toml
После выполнения команды установщик:
cli_params.tomlsession.toml (содержащий события текущей сессии и все параметры инсталляции)Для удаленных виртуальных машин используются поля [ssh].
Если после доставки установщик сообщает, что зависимость отсутствует, проверьте пакетный менеджер, DNS и доступность репозиториев на конкретной виртуальной машине.
Чтобы установить все продукты, указанные в шаблоне параметров, выполните команду:
./mts-link-installer --cli --install
Чтобы установить только выбранные продукты, укажите список продуктов:
./mts-link-installer --cli --install webinar chats
Если список продуктов не указан, будут установлены продукты, включенные в поля [run_products] параметров cli_params.toml.
Важно: --install не стартует без свежего успешного --preflight.
Если вы используете офлайн-режим, при старте установки инсталлятор:
монтирует custom-registry.img read-only в /mnt/custom-registry, если он еще не смонтирован
загружает registry:2 из /mnt/custom-registry/docker-image.registry2.tar, если такого образа нет локально
запускает контейнер local-registry на порту 5000 с read-only volume: /mnt/custom-registry/registry-data:/var/lib/registry:ro
проверяет http://<registry-url>/v2/
для remote/distributed установки добавляет <registry-url> в Docker insecure-registries на целевых виртуальных машинах и перезапускает Docker
передает Ansible registry-переменные (registry_url, docker_registry, docker_registry_url, registry) со значением локального registry
берёт Ansible-роли из архивов внутри смонтированного image.
Если вы используете rep-box.webinar.ru, установщик загружает Ansible-роли, распаковывает архивы и последовательно запускает стадии.
| Продукт | Стадии |
| Платформа | Подготовка системы, База данных, S3 хранилище, API Gateway, HAProxy балансировщик |
| Чаты | Подготовка системы, База данных, API сервисы |
| Встречи | Подготовка системы, Медиа-сообщения, База данных, Веб-приложение, Медиа-серверы, Пост-установка |
| Доски | Приложение Доски |
./mts-link-installer --cli --lic <путь до файла лицензии> --mode install
vi /opt/installer/cli_params.toml
./mts-link-installer --cli --preflight
./mts-link-installer --cli --deliver-packages
./mts-link-installer --cli --install
--restore-dns — отдельный сервисный режим для ситуации, когда после отката или удаления CoreDNS на сервере установки перестал работать системный DNS. Флаг не запускает Web UI, CLI-флоу или Ansible-установку: установщик восстанавливает DNS и завершает работу. Запустите режим от root при помощи команды:
sudo ./mts-link-installer --restore-dns
Команда:
находит Corefile
извлекает upstream DNS-серверы из директив forward или proxy
включает и перезапускает systemd-resolved, если сервис доступен
записывает drop-in /etc/systemd/resolved.conf.d/99-rollback-from-coredns.conf
восстанавливает /etc/resolv.conf как ссылку на runtime-файл systemd-resolved или как обычный файл с nameserver
делает резервные копии изменяемых файлов с timestamp
проверяет результат через системный резолвинг и доступные DNS-утилиты.
По умолчанию Corefile ищется в WORK_MAIN_DIR/coredns/Corefile, затем в типовых путях:
/opt/platform/coredns/Corefile/opt/coredns/Corefile/srv/coredns/Corefile/var/lib/coredns/Corefile/etc/coredns/Corefile/root/coredns/CorefileЕсли Corefile лежит в другом месте, укажите путь явно:
sudo ./mts-link-installer --restore-dns --restore-dns-corefile /path/to/Corefile
Допустима и позиционная форма:
sudo ./mts-link-installer --restore-dns /path/to/CorefileПосле установки основных модулей CLI предлагает установить дополнительные модули. Чтобы установить их:
введите в консоли yes
заполните шаблон параметров дополнительных модулей cli_params.toml
запустите установку дополнительных модулей.
./mts-link-installer --cli --install
1. Проверьте с рабочей станции пользователя и с серверного сегмента
curl -I https://meetings.example.com
curl -I https://meetings-webrtc.example.com
curl -I https://meetings-message.example.com
curl -I https://chats.example.com
curl -I https://chats-gateway.example.com
curl -I https://platform-gw.example.com
Для первичной диагностики маршрута допускается временно использовать curl -k, но окончательная проверка доверия сертификата выполняется без ключа -k.
2. Проверьте DNS
getent hosts meet.example.com
getent hosts meet-mgw.example.com
getent hosts meet-wowza.example.com
getent hosts meet-webrtc.example.com
getent hosts meet-message.example.com
getent hosts chats.example.com
getent hosts chats-gateway.example.com
getent hosts chats-storage.example.com
Для типовой двухсерверной схемы результаты getent должны соответствовать разделу Типовой резолв:
wowza и webrtc — IP-адреса виртуальных машин Встреч 3. Проверьте запущенные контейнеры на серверах
sudo docker ps
sudo docker-compose ps
Все ожидаемые контейнеры должны иметь рабочий статус. Контейнеры с постоянным Restarting, Exited или unhealthy требуют анализа логов до передачи системы в эксплуатацию.
4. Проверьте место на диске
df -h
sudo du -sh /opt/* 2>/dev/null
5. Проверьте в браузере:
открывается основной домен Встреч
открывается Чаты, Платформа и Доски в соответствии с поставкой
браузер не показывает предупреждения о сертификате
авторизация работает
пользователь может создать тестовую встречу
проверены микрофон, камера, демонстрация и медиа-подключение
в Чатах отправляется тестовое сообщение и работает переход к Встречам
медиа-подключение работает через 1030/TCP и 1030/UDP, если требуется
почтовые уведомления работают, если настроен SMTP-сервер
проверены SMTP, SSO/LDAP, SIP, AI и внешнее S3, если они входят в проект.