Архитектура Dion Standard — вариант развертывания системы DION для локальной (on-premises) установки в контуре предприятия.
В настоящем документе представлена топология системы Dion Standard, а также приведены системные требования к инфраструктуре, необходимые для успешного развертывания и функционирования платформы.
Топология Dion Standard представляет собой среду, где все компоненты системы (docker-контейнеры) размещаются на отдельных физических серверах или виртуальных машинах. Такой подход обеспечивает высокую производительность и отказоустойчивость.

Dion может быть развернут как на физических, так и на виртуальных серверах.
| Для точного подсчета системных требований исходя из планируемых нагрузок используйте калькулятор сайзинга или обратитесь к команде Dion. |
Серверы приложений apps, media, sip, record, video, chats, turn при необходимости можно горизонтально масштабировать или совмещать между собой.
| # | Имя сервера | CPU | RAM GB | HDD GB | Внутренний IP | Внешний IP | Расположение | Назначение |
|---|---|---|---|---|---|---|---|---|
| 1 | setup-vm |
2 |
4 |
200 |
1 |
|
внутренний контур | сервер установки и администрирования |
| 2 | infra-ha-01 |
2 |
4 |
50 |
1 |
|
внутренний контур | сервер баз данных |
| 3 | infra-ha-02 |
2 |
4 |
50 |
1 |
|
внутренний контур | сервер баз данных |
| 4 | infra-ha-03 |
2 |
4 |
50 |
1 |
|
внутренний контур | сервер баз данных |
| 5 | infra-ha-04 |
2 |
4 |
50 |
1 |
|
внутренний контур | сервер баз данных |
| 6 | lb-vm-01 |
2 |
4 |
50 |
1 + 1 vip |
|
внутренний контур | балансировщик нагрузки WEB |
| 7 | lb-vm-02 |
2 |
4 |
50 |
1 |
|
внутренний контур | балансировщик нагрузки WEB |
| 8 | lbi-vm-01 |
2 |
4 |
50 |
1 + 2 vip |
|
внутренний контур | балансировщик нагрузки баз данных |
| 9 | lbi-vm-02 |
2 |
4 |
50 |
1 |
|
внутренний контур | балансировщик нагрузки баз данных |
| 10 | apps-vm-01 |
2 |
8 |
100 |
1 |
|
внутренний контур | сервер приложений |
| 11 | apps-vm-02 |
2 |
8 |
100 |
1 |
|
внутренний контур | сервер приложений |
| 12 | media-vm-01 |
2 |
4 |
50 |
1 |
|
внутренний контур | сервер конференций |
| 13 | media-vm-02 |
2 |
4 |
50 |
1 |
|
внутренний контур | сервер конференций |
| 14 | sip-vm-01 |
2 |
4 |
50 |
1 |
|
внутренний контур | sip-сервер |
| 15 | sip-vm-02 |
2 |
4 |
50 |
1 |
|
внутренний контур | sip-сервер |
| 16 | siptranslator-vm-01 |
2 |
4 |
50 |
1 |
|
внутренний контур | sip-сервер |
| 17 | siptranslator-vm-02 |
2 |
4 |
50 |
1 |
|
внутренний контур | sip-сервер |
| 18 | siptranscoder-vm-01 |
2 |
4 |
50 |
1 |
|
внутренний контур | sip-сервер |
| 19 | siptranscoder-vm-02 |
2 |
4 |
50 |
1 |
|
внутренний контур | sip-сервер |
| 20 | turn-vm-01 |
2 |
4 |
50 |
1 |
1 (NAT) |
DMZ | TURN-сервер |
| 21 | turn-vm-02 |
2 |
4 |
50 |
1 |
1 (NAT) |
DMZ | TURN-сервер |
| 22 | record-vm-01 |
2 |
4 |
50 |
1 |
|
внутренний контур | сервер записи |
| 23 | record-vm-02 |
2 |
4 |
50 |
1 |
|
внутренний контур | сервер записи |
| 24 | video-vm-01 |
2 |
4 |
50 |
1 |
|
внутренний контур | сервер видеопортала |
| 25 | video-vm-02 |
2 |
4 |
50 |
1 |
|
внутренний контур | сервер видеопортала |
| 26 | chats-vm-01 |
2 |
4 |
50 |
1 |
|
внутренний контур | сервер чатов |
| 27 | chats-vm-02 |
2 |
4 |
50 |
1 |
|
внутренний контур | сервер чатов |
| 28 | log-vm-01 |
2 |
4 |
50 |
1 |
|
внутренний контур | сервер сбора логов |
| 29 | mon-vm-01 |
2 |
4 |
50 |
1 |
|
внутренний контур | сервер мониторинга |
В данном примере роли apps, media, sip, record, video, chats, turn совмещены на виртуальных машинах apps-vm.
Роли lb, lbi совмещены на виртуальных машинах lb-vm.
Роли monitoring, logs совмещены на виртуальной машине mon-vm.
| # | Имя сервера | CPU | RAM GB | HDD GB | Внутренний IP | Внешний IP | Расположение | Назначение |
|---|---|---|---|---|---|---|---|---|
| 1 | setup-vm |
2 |
4 |
200 |
1 |
|
внутренний контур | сервер установки и администрирования |
| 2 | infra-ha-01 |
2 |
4 |
50 |
1 |
|
внутренний контур | сервер баз данных |
| 3 | infra-ha-02 |
2 |
4 |
50 |
1 |
|
внутренний контур | сервер баз данных |
| 4 | infra-ha-03 |
2 |
4 |
50 |
1 |
|
внутренний контур | сервер баз данных |
| 5 | infra-ha-04 |
2 |
4 |
50 |
1 |
|
внутренний контур | сервер баз данных |
| 6 | lb-vm-01 |
2 |
4 |
50 |
1 + 3 vip |
|
внутренний контур | балансировщик нагрузки WEB |
| 7 | lb-vm-02 |
2 |
4 |
50 |
1 |
|
внутренний контур | балансировщик нагрузки WEB |
| 8 | apps-vm-01 |
4 |
16 |
100 |
1 |
|
внутренний контур | сервер приложений |
| 9 | apps-vm-02 |
4 |
16 |
100 |
1 |
|
внутренний контур | сервер приложений |
| 10 | mon-vm-01 |
2 |
4 |
50 |
1 |
|
внутренний контур | сервер мониторинга |
Рекомендуется использовать диски SSD.
Количество участников (слушателей) в конференции ограничивается только пропускной способностью канала из расчета от 500 кбит/с до 3 Мбит/с на пользователя в зависимости от контента.
В дальнейшем при необходимости можно добавить ресурсы по мере использования.
Для работы серверов Dion необходимо обеспечить полное сетевое взаимодействие между серверами Dion во внутреннем контуре.
Рекомендуется использовать отдельный VLAN для серверов, расположенных в одном ЦОД (кроме серверов TURN, расположенных в DMZ). Сетевые задержки между серверами во внутреннем контуре не должны превышать 10 мс.
Ниже приведена таблица сетевых доступов за пределами внутреннего контура:
| Сервис | Источник | Назначение | Порт | Протокол | Примечания | |||
|---|---|---|---|---|---|---|---|---|
| WEB | Пользовательская подсеть (для пользователей внутри сети). | Dion lb-vm Virtual IP | 443 | TCP | Работа клиентского приложения и web-клиента. | |||
| WEB | Внешние пользователи | DMZ Reverse Proxy | 443 | TCP | WEB интерфейс DION. | |||
| WEB | DMZ Reverse Proxy | Dion lb-vm Virtual IP | 443 | TCP | Взаимодействие внешнего прокси с балансировщиком DION. | |||
| SIP | SIP Initiation ATC | sip-vm | 5060 |
TCP\SIP UDP\SIP |
Работа SIP-вызовов. | |||
| SIP | SIP Transport Terminals | sip-vm | 55000 - 61500 | UDP\RTP | Работа SIP-вызовов. | |||
| TURN | Внешние пользователи | Dion TURN внешний IP | 3478 | UDP |
Обмен медиатрафиком для:
|
|||
| MEDIA | Внутренние пользователи | Медиа серверы | 49152 - 65535 | UDP | Обмен медиатрафиком для внутренних пользователей. | |||
| MEDIA | Медиа серверы | Внутренние пользователи | 49152 - 65535 | UDP | Обмен медиатрафиком для внутренних пользователей. | |||
| MEDIA | turn-vm | media-vm | 49152 – 65535 | UDP\SRTP |
Обмен медиатрафиком для:
|
|||
| MEDIA | media-vm | turn-vm | 49152 – 65535 | UDP\SRTP |
Обмен медиатрафиком для:
|
|||
| LOGS | log-vm | turn-vm | 9200 | TCP | Сбор логов. | |||
| MONITOR | monitor-vm | turn-vm |
9100 9110 9641 |
TCP | Мониторинг системы. | |||
| SSH | setup-vm | turn-vm | 22 | TCP | Развертывание системы. | |||
| WEB | turn-vm | setup-vm |
80 |
TCP |
Развертывание системы. Локальный registry. | |||
| WEB | setup-vm | registry.onprem.dion.vc | 443 | TCP | Развертывание системы. | |||
| WEB | все серверы Dion | репозиторий операционной системы |
443 |
TCP |
Установка пакетов и зависимостей. | |||
| WEB | все серверы Dion | репозиторий Docker |
443 |
TCP |
Установка Docker из репозитория. Требуется только для deb ОС (Ubuntu, Debian). | |||
| PUSH | chat-vm |
80.85.252.1 80.85.252.4 185.247.192.101 185.247.192.104 185.228.50.78 185.228.50.79 185.65.148.105 185.65.148.145 |
443 | TCP | Интеграция с облаком dion.vc, работа push-уведомлений. | |||
| DNS | Все серверы Dion | Внутренний DNS сервер | 53 | UDP | Работа DNS-сервисов. | |||
| SMTP | apps-vm | Почтовый сервер | 25 | TCP | Интеграция с почтовой системой (опционально). | |||
| SSO | apps-vm | Провайдер аутентификации (SAML SSO) |
443 | TCP | Интеграция SSO (опционально). | |||
| LDAP | apps-vm | LDAP сервер (контроллер домена AD) |
389 | TCP | Интеграция SSO (опционально). | |||
| MONITOR | apps-vm | turn-vm |
4443 |
TCP |
Проверка состояния TURN-серверов. | |||
Для взаимодействия Dion All-In-One с внешними пользователями можно использовать обратный прокси (Reverse Proxy) для WEB трафика.
| Обратный прокси не входит в поставку ПО Dion. |
Требования:
Для работы Dion требуется создать DNS-записи. Список записей предоставлен на странице Таблица DNS записей.
| ВНИМАНИЕ: Использование файла hosts вместо DNS-сервера не поддерживается. |
Для работы Dion требуется SSL-сертификат. Требования к сертификату описаны на странице Требования к SSL сертификату
Dion состоит из контейнеров Docker и может работать на любой операционной системе, в которой установлен Docker.
Список операционных систем, на которых был протестирован Dion, опубликован на странице Операционные системы.
Список поддерживаемых клиентов доступен на странице Поддерживаемые клиенты.