Этот раздел описывает расширенную архитектуру промышленной среды Webitel, рассчитанную на ~1 млн. звонков и ~200 тыс. чатов в день.
1. Общая схема архитектуры
2. Требования к среде развертывания
Архитектура Webitel рассчитана на работу в средах с изолированными и гарантированными ресурсами. Использование бюджетных VPS/VDS (Virtual Private/Dedicated Server) с разделённым процессорным временем (Shared CPU) не рекомендуется из-за рисков появления “шумных соседей” (noisy neighbors) и высоких сетевых задержек, что критично для качества работы VoIP-компонентов (FreeSWITCH, RTP, OpenSIPS).
Поддерживаемые платформы:
-
On-Premise (локальные серверы):
-
Физические серверы (Bare Metal);
-
Корпоративные гипервизоры (VMware, KVM, Xen, Proxmox VE).
-
-
Облачные провайдеры (Cloud Providers):
-
AWS (Amazon EC2);
-
Google Cloud (Compute Engine);
-
Microsoft Azure (Virtual Machines);
-
DigitalOcean (Droplets);
-
Hetzner (Cloud / Dedicated).
-
ВАЖНО! При выборе тарифных планов у облачных провайдеров (особенно DigitalOcean и Hetzner) настоятельно рекомендуется выбирать виртуальные машины категории:
-
Dedicated vCPU, или
-
Compute-Optimized,
для компонентов, отвечающих за обработку медиа и голоса.
3. Описание общей инфраструктуры
Для промышленной среды с нагрузкой 400–500 одновременных звонков (~1 млн звонков в день) и от 200 тыс. чатов в день необходимо подготовить 7 виртуальных машин (пункты 1–6 в таблице ниже).
Требования к развертыванию:
-
Установить только операционную систему и оставить доступ в Интернет для загрузки и установки дополнительного ПО.
-
После завершения установки доступ в Интернет может быть отключён.
-
Виртуальные машины 1–6 должны работать в едином VLAN, без фильтрации трафика по портам (разрешить всё).
-
Разработчикам необходимо предоставить SSH-доступ с правами root на время установки и тестирования приложений.
-
Резервирование должно происходить средствами виртуальных машин.
4. Спецификация серверов
|
Object |
Software |
Resources (min) |
Connectivity |
Description |
|---|---|---|---|---|
|
Debian 12 Linux 64bit - базовая серверная установка с SSH подключением; Установим самостоятельно: Nginx; SSL; Webitel Services |
|
in-out: 80/tcp, 443/tcp |
Обязательно наличие SSL сертификатов с доверенным CA для обеспечения защищенного подключения по HTTPS протоколу и работы телефонии в браузере. Возможно масштабирование. |
|
Debian 12 Linux 64bit - базовая серверная установка с SSH подключением; Установим самостоятельно: Linux; PostgreSQL 15; Grafana |
|
|
Сервер баз данных PostgreSQL с настроенной Streaming Replication. |
|
Debian 12 Linux 64bit - базовая серверная установка с SSH подключением; Установим самостоятельно: Linux; Redis Server; Consul; RabbitMQ; Webitel Storage |
|
|
Сервер регистрации приложений, сервис обмена сообщениями и хранилище записей разговоров. Записи разговоров хранятся в S3 хранилище |
|
Debian 12 Linux 64bit - базовая серверная установка с SSH подключением; Установим самостоятельно: OpenSIPS 3.4, Rtpengine; |
|
5060/tcp, 5060/udp, 5061/tcp in-out: 10000-50000/udp |
Сервер телефонии. Возможно масштабирование. |
|
Debian 12 Linux 64bit - базовая серверная установка с SSH подключением; Установим самостоятельно: FreeSWITCH; Webitel FlowManager; |
|
|
Сервер построения голосовых приложений. При увеличении нагрузки необходимо продублировать сервер. Возможно масштабирование. |
|
Debian 11 Linux 64bit - базовая серверная установка с SSH подключением; Установим самостоятельно: Homer + PostgreSQL, Grafana; |
|
|
Grafana для аналитики. Сбор логов и журналов звонков. |
|
Microsoft Windows 11/ Linux 64bit Google Chrome / Microsoft Edge (последняя либо предпоследняя версии) |
|
Подключение к ИС не менее 2 Мб/c на пользователя, с задержками не более 15-20 мс. |
Рабочее место сотрудников |
|
|
|
Подключение к ИС не менее 5 Мб/c на аппарат, с задержками не более 15-20 мс. in-out: 5060/udp, 10000-20000/udp |
Аппаратный телефон с поддержкой протокола SIP 2.0 |
|
|
|
|
Интеграции с внешними системами |
|
10. PSTN |
|
|
|
Телефонная сеть общего пользования (Public Switched Telephone Network) — всеобщая абонентская сеть связи, для доступа к которой используются телефонные аппараты, АТС и оборудование передачи данных. |
5. Требования к сетевым параметрам
|
|
Скорость подключения |
Задержка (Ping) |
Джитер (Jitter) |
Потери пакетов |
|---|---|---|---|---|
|
WebRTC |
|
|
|
|