Установка mint
В данном руководстве описана процедура установки и настройки модулей:
-
mint_mgmt
-
mint_media
-
mint_turn
Для установки дополнительных модулей необходимо пользоваться соответствующими руководствами.
Варианты установки
Установка системы MINT допускается как на физические, так и на виртуальные серверы. Существует множество факторов, которые необходимо учитывать при выборе серверного окружения для инсталляции MINT, такие как производительность, масштабируемость, доступность, надежность, стоимость и простота управления. Ниже представлены рекомендуемые варианты установки.
-
Установка на два сервера.
Предпочтительный вариант установки.
Использование такой схемы позволяет масштабировать каждый из модулей независимо друг от друга, добавляя дополнительные аппаратные ресурсы на сервер. Разные модули не конкурируют за одни и те же ресурсы сервера (CPU, RAM, I/O). Также данная схема удобнее в обслуживании, поскольку позволяет выполнять обновление отдельных модулей системы без остановки всего сервиса.
Данный вариант требует наличия двух внешних (публичных) IP-адресов.
Расположение модулей
Сервер 1 — mint_mgmt
Сервер 2 — mint_media, mint_turn
-
Все модули устанавливаются на один сервер.
Подходит для быстрого развертывания.
Рекомендуется для небольших установок (не более 50 одновременных участников в конференции), однако в данном варианте разные модули конкурируют за одни и те же аппаратные ресурсы (CPU, RAM, I/O).
Требования к инфраструктуре
Системные требования
Системные требования к серверам зависят от количества одновременных участников конференций.
При установке на один сервер
| На 10 участников | На 50 участников |
|---|---|
| Процессор — 6 vCPU | Процессор — 14 vCPU |
| Оперативная память — 4 ГБ | Оперативная память — 12 ГБ |
| Дисковое пространство — 80 ГБ | Дисковое пространство — 120 ГБ |
При установке на 2 сервера
| На 50 участников | |
|---|---|
| mint_mgmt | mint_media |
| Процессор — 6 vCPU | Процессор — 12 vCPU |
| Оперативная память — 8 ГБ | Оперативная память — 6 ГБ |
| Дисковое пространство — 80 ГБ | Дисковое пространство — 80 ГБ |
| На 100 участников | |
|---|---|
| mint_mgmt | mint_media |
| Процессор — 6 vCPU | Процессор — 22 vCPU |
| Оперативная память — 12 ГБ | Оперативная память — 8 ГБ |
| Дисковое пространство — 80 ГБ | Дисковое пространство — 80 ГБ |
Требования к процессору
- Производительность на поток (Single Thread Rating) — не менее 2000 PassMark
Например
Intel Xeon Gold 6126 или аналогичный, Intel Core i7-10700 или аналогичный.
Операционная система
Операционная система на базе Linux.
Рекомендуемые дистрибутивы:
-
Astra Linux — версия 1.7 и выше
-
RedOS — версия 7.3 и выше
-
ALT Linux — версия 9 и выше
-
Ubuntu — версия 20.04 и выше
-
CentOS — версия 7 и выше
-
Debian — версия 11 и выше
-
Fedora — версия 36 и выше
-
RHEL — версия 7 и выше
Обратите внимание
На операционной системе Astra Linux для корректной работы Docker Engine необходимо использовать ядро generic.
Примечание
На всех серверах, где установлены модули MINT, рекомендуется использовать один и тот же дистрибутив.
Необходимое программное обеспечение
-
Docker Engine версии 24 и выше
-
Пакет python3 версии 3.10 и выше
IP-адресация
-
При установке на 1 сервер:
-
1 внутренний (частный) IP-адрес — для взаимодействия модулей между собой
-
1 внешний (публичный) IP-адрес — для подключения пользователей или NAT
-
-
При установке на 2 сервера:
-
1 внутренний (частный) IP-адрес на каждый сервер — для взаимодействия модулей между собой
-
1 внешний (публичный) IP-адрес на каждый сервер — для подключения пользователей или NAT
-
Сетевое взаимодействие
-
На внешних (публичных) IP-адресах должны быть разрешены входящие подключения по указанным портам:
-
При установке на 2 сервера:
-
На сервер с mint_mgmt — TCP/80, TCP/443
-
На сервер с mint_media — TCP/80, TCP/443, UDP/10000
-
-
При установке на 1 сервер:
- TCP/80, TCP/443, UDP/10000
-
-
При установке на 2 сервера, на сервере mint_mgmt на внутреннем (частном) IP-адресе должны быть разрешены подключения на порты TCP/5222 и TCP/6222 со второго сервера.
Доменные имена и сертификаты
Для работы MINT необходимо:
- Два доменных имени — для mint_mgmt и mint_turn
- SSL-сертификат на каждый из доменов
При установке на 1 сервер
graph TD
A["mgmt.domain.ru<br/>turn.domain.ru"] --> B["внешний (публичный)<br/>IP-адрес сервера"]
При установке на 2 сервера
graph TB
A["mgmt.domain.ru"] --> C["внешний (публичный)<br/>IP-адрес сервера<br/>mint_mgmt"]
B["turn.domain.ru"] --> D["внешний (публичный)<br/>IP-адрес сервера<br/>mint_turn<br/>mint_media"]
Примечание
Если у вас нет сертификатов, вы можете воспользоваться встроенным механизмом автоматического получения сертификата Let's Encrypt. Процесс настройки описан далее.
Установка и настройка
Важно
Убедитесь, что на всех серверах, на которых будут установлены модули MINT, настроено корректное время и указан ваш часовой пояс. Также желательно на всех серверах настроить автоматическую синхронизацию времени с NTP-сервером.
Установка Docker Engine
Установите Docker Engine с помощью официального скрипта установки
Либо по инструкции на официальном сайте, предназначенной для вашего дистрибутива Linux. Инструкция по установке Docker Engine
Важно
Docker Engine должен быть установлен на всех серверах, где запускаются модули MINT.
Установка mint_mgmt
-
Загрузите архив с дистрибутивом. Скачать
-
Распакуйте загруженный архив в произвольную директорию, данная директория необходима только на время установки и не будет использоваться для работы ПО.
-
Запустите скрипт установки
setup_mgmt.pyиз директорииmint_mgmtи следуйте подсказкам установщика.
Примечание
Модуль mint_mgmt будет установлен в директорию /opt/mint/mgmt.
Дальнейшую настройку, а также запуск и остановку контейнеров необходимо выполнять в данной директории.
Настройка mint_mgmt
-
Установка собственного SSL-сертификата
Примечание
Пропустите данный пункт, если собираетесь использовать автоматический сертификат Let's Encrypt.
Разместите SSL-сертификат и ключ с именами
cert.crtиcert.keyв директорию/opt/mint/mgmt/configs/mint_web/keys.Важно
Для корректной работы MINT на мобильных устройствах необходимо использовать fullchain-сертификат с полной цепочкой сертификации внутри.
-
Настройка параметров
В директории
/opt/mint/mgmtв конфигурационном файле.envзаполните следующие параметры:DOMAIN— доменное имя, по которому будет доступен сервис
Для автоматической генерации сертификата Let's Encrypt укажите в параметрах:
-
ENABLE_LETSENCRYPT— значение true -
LETSENCRYPT_EMAIL— действующий адрес электронной почты (обязательно)
При использовании собственного сертификата не изменяйте данные параметры.
Важно
Указывайте корректное доменное имя: к нему, в том числе, будет привязана лицензия сервера.
При изменении доменного имени необходимо будет запросить новую лицензию.
Запуск mint_mgmt
Находясь в директории /opt/mint/mgmt, запустите контейнеры командами:
Проверьте, что все контейнеры успешно запустились:
Все контейнеры должны иметь статус “Up”.
Выполните первичную инициализацию базы данных:
Установка лицензии
В браузере перейдите по адресу, который вы указали в .env файле
в параметре DOMAIN.
Для входа используйте:
-
Логин: admin
-
Пароль: указан в параметре
MINT_ADMIN_PASSWORDв.envфайле
Примечание
Пароль учетной записи admin можно в дальнейшем изменить в системе управления.
На открывшейся странице нажмите Скачать идентификатор сервера.
Направьте скачанный файл .productId персональному менеджеру или в службу технической поддержки MINT. В ответ вам будет передан лицензионный файл.
После получения файла нажмите на кнопку Загрузить лицензионный файл и выберите файл лицензии.
Установка mint_media
Убедитесь, что на сервере установлен Docker Engine.
-
Загрузите архив с дистрибутивом. Скачать
-
Распакуйте загруженный архив в произвольную директорию, данная директория необходима только на время установки и не будет использоваться для работы ПО.
-
Запустите скрипт установки
setup_media.pyиз директорииmint_mediaи следуйте подсказкам установщика.
Примечание
Модуль mint_media будет установлен в директорию /opt/mint/media.
Дальнейшую настройку, а также запуск и остановку контейнеров необходимо выполнять в данной директории.
Важно
Если установка mint_media производится на один сервер с mint_mgmt и в операционной системе активен межсетевой экран UFW, необходимо разрешить сетевое взаимодействие между сетями Docker. Для этого выполните команду:
Настройка mint_media
В директории /opt/mint/media в конфигурационном файле .env заполните
следующие параметры:
-
DOMAIN— доменное имя, указанное в.envmint_mgmt -
XMPP_AUTH_PASSWORD— значениеXMPP_AUTH_PASSWORDиз.envфайла модуля mint_mgmt -
MGS_LOCAL_IP— внутренний (частный) IP-адрес сервера, где установлен модуль mint_mgmt -
DOCKER_HOST_ADDRESS— внутренний (частный) IP-адрес сервера, где установлен модуль mint_media -
PUBLIC_ADDRESS— внешний (публичный) IP-адрес сервера, где установлен модуль mint_media
Запуск mint_media
Находясь в директории /opt/mint/media, выполните команду:
Проверьте, что все контейнеры успешно запустились. Для этого выполните команду:
Все контейнеры должны иметь статус “Up”.
Установка mint_turn
Убедитесь, что на сервере установлен Docker Engine.
-
Загрузите архив с дистрибутивом. Скачать
-
Распакуйте загруженный архив в произвольную директорию, данная директория необходима только на время установки и не будет использоваться для работы ПО.
-
Запустите скрипт установки
setup_turn.pyиз директорииmint_turnи следуйте подсказкам установщика.
Примечание
Модуль mint_turn будет установлен в директорию /opt/mint/turn.
Дальнейшую настройку, а также запуск и остановку контейнеров необходимо выполнять в данной директории.
Настройка mint_turn
Перейдите в директорию /opt/mint/turn/, откройте файл .env и заполните параметры:
MGMT_DOMAIN— доменное имя сервера mint_mgmtTURN_DOMAIN— доменное имя сервера mint_turnTURN_SECRET— значение параметраTURN_SECRETиз.envсервера mint_mgmtTURN_EXTERNAL_IP— внешний (публичный) IP-адрес сервера, где установлен mint_turnTURN_LISTENING_IP— если на сетевом интерфейсе сервера, где установлен mint_turn, указан внутренний (частный) адрес и сервер находится за NAT, укажите внутренний (частный) адрес; если на сетевом интерфейсе сервера указан внешний (публичный) адрес, укажите внешний (публичный) адресTURN_RELAY_IP— внутренний (частный) адрес сервера, где установлен mint_turnTURN_LISTENING_PORT— если mint_turn на отдельном сервере, оставьте 443, если на одном сервере с mint_mgmt — укажите 4444
Откройте .env сервера mint_mgmt и заполните параметры:
ENABLE_TURN— trueTURN_DOMAIN— доменное имя сервера mint_turn
Настройка сертификата
Процесс настройки сертификата зависит от схемы установки. Выберите один из вариантов и выполните только те действия, которые указаны в выбранном варианте:
- Собственный сертификат
- Сертификат Let's Encrypt, mint_turn на отдельном сервере с mint_media
- Сертификат Let's Encrypt, mint_turn на одном сервере с mint_mgmt
Собственный сертификат
Разместите сертификат и ключ в директории /opt/mint/turn/configs/mint_turn/keys с именами:
-
fullchain.pem— сертификат -
key.pem— ключ
Сертификат Let's Encrypt, mint_turn на отдельном сервере с mint_media
В .env файле mint_turn укажите:
-
ENABLE_LETSENCRYPT— true -
LETSENCRYPT_EMAIL— действующий адрес электронной почты
Сертификат Let's Encrypt, mint_turn на одном сервере с mint_mgmt
-
В
.envфайле mint_turn укажите:CERT_WATCHER_ENABLED— true
-
В
docker-compose.ymlфайле mint_turn раскомментируйте строку: -
В
.envфайле mint_mgmt укажите:-
TURN_WITH_MGMT— true -
TURN_LISTENING_IP— внутренний (частный) адрес сервера
-
Обратите внимание
В данном варианте ENABLE_LETSENCRYPT на сервере mint_turn включать не нужно, однако он обязательно должен быть включен на сервере mint_mgmt.
Запуск mint_turn и перезапуск mint_mgmt
-
Перезапустите контейнеры mint_mgmt командами:
-
Запустите mint_turn командой:
Проверка работоспособности системы
Для проверки, что установка выполнена корректно, выполните следующие действия:
-
Авторизуйтесь в системе управления
-
Запланируйте конференцию
-
Войдите в конференцию минимум двумя участниками
-
Убедитесь, что все участники видят и слышат друг друга
Устранение неполадок
-
Система управления недоступна по доменному имени.
-
Убедитесь, что все контейнеры mint_mgmt запущены и работают.
-
Проверьте, что в файле
.envв полеDOMAIN=указан домен, по которому будет осуществляться вход в систему управления. Домен должен быть выдан на внешний IP-адрес сервера или, если установка производится внутри сети, на внутренний IP-адрес. В этом случае должен быть настроен внутренний DNS-сервер. -
Проверьте, что SSL-сертификат размещен в правильной директории, указанной в инструкции. Если вы в
.envфайле включили опцию получения сертификата от Let's Encrypt, убедитесь, что на сервере открыт порт TCP/80 и есть выход в интернет. В противном случае сертификат не будет получен, и ПО не запустится. -
Убедитесь, что DNS-запрос направляется на IP-адрес сервера mint_mgmt.
-
-
После входа в конференцию вторым участником появляется сообщение «к сожалению, что-то пошло не так».

Данное поведение свидетельствует о том, что к серверу mint_mgmt не подключен сервер mint_media.
-
Убедитесь, что контейнер mint_media запущен и работает.
-
Убедитесь, что данные
.envфайла mint_media корректно заполнены согласно инструкции. ЕслиXMPP_AUTH_PASSWORDне соответствует значению, указанному на mint_mgmt, сервер mint_media не сможет подключиться. Также подключение не произойдет, если указаны некорректные IP-адреса.
-
-
В конференции никого не видно и не слышно.
- Убедитесь, что на сервере, где установлены mint_turn и mint_media, открыты порты: TCP/443 и UDP/10000.