Сайзинг
Требования к ресурсам#
Серверные мощности нод по типам#
| роль сервера | типовые требования к оборудованию |
|---|---|
service | 4 vCPU, 4 GB RAM, свободных 20 GB HDD |
analyzer | 8 vCPU, 12 GB RAM, свободных 40 GB HDD |
balancer | 4 vCPU, 4 GB RAM, свободных 20 GB HDD |
worker | 8 vCPU, 8 GB RAM, свободных 40 GB HDD (от 5000 IOPS) |
Для
worker-нод значение8 GB RAMследует рассматривать как типовой минимальный ориентир. При обработке отдельных задач детекции сервисыsmartcpdиamdмогут давать кратковременные пики потребления памяти. Если наworker-нодах наблюдаются признаки давления на память, рост задержек или активныйswap-in, рекомендуется увеличивать объем RAM и снижать плотность нагрузки на ноду. Подробности по диагностике swap и memory pressure описаны в Troubleshooting.
Количество нод по типам#
service: 1 для обычной, 2 для отказоустойчивой установкиbalancer: 1 для обычной, 2 для отказоустойчивой установкиanalyzer: для обычной установки достаточно 1; для отказоустойчивой схемы рекомендуется отдельная нода, при необходимости 2 для failoverworker: горизонтально масштабируется в зависимости от нагрузки: одна нода (c вышеуказанными требованиями) на 25 CPS (calls per second) или 300 одновременных вызовов; для типовой HA-схемы требуется минимум 2worker-ноды
База данных#
- 500 MB на
1.000.000попыток дозвона.
Попытка дозвона - это каждая попытка дозвониться до абонента, не зависимо от того было соединение или нет.
Время хранения данных в БД настраивается при установке, по-умолчанию 6 месяцев.
Метрики#
- 25 MB на
1 000 000попыток дозвона.
Попытка дозвона - это каждая попытка дозвониться до абонента, не зависимо от того было соединение или нет.
Время хранения метрик запрашивается при установке, по-умолчанию 6 месяцев.
Redis#
- 500 MB RAM на каждый
1 000 000отвеченных вызовов в сутки.
Каждые сутки бОльшая часть счетчиков сбрасывается, поэтому пик потребления приходится на конец суток.
Прочие требования к ресурсам#
Для отказоустойчивой инсталляции также требуется распределенное отказоустойчивое хранилище данных.
Минимально обязательные директории shared storage:
metrics_data— размер определяется по правилам раздела Метрикиconfig-server_data—5 MB+ суммарный размер используемых роликов для пробития тишины
Подробности по назначению этих каталогов описаны в разделе Отказоустойчивое распределенное хранилище данных.
Типовые конфигурации для установки#
Минимальная конфигурация 25 CPS + масштабирование горизонтально#
| host | swarm manager | roles | resources |
|---|---|---|---|
| host1 | + | service, balancer, analyzer | 8 vCPU, 12 GB RAM, 80 GB HDD |
| host2 | - | worker (25 CPS) | 8 vCPU, 8 GB RAM, 40 GB HDD |
| … | - | worker (+25 CPS) | 8 vCPU, 8 GB RAM, 40 GB HDD |
Минимально отказоустойчивое решение 50 CPS + масштабирование горизонтально#
| host | swarm manager | roles | resources |
|---|---|---|---|
| host1 | + | service, balancer | 4 vCPU, 8 GB RAM, 40 GB HDD |
| host2 | + | service, balancer, analyzer | 8 vCPU, 12 GB RAM, 80 GB HDD |
| host3 | + | worker (25 CPS) | 8 vCPU, 8 GB RAM, 40 GB HDD |
| host4 | worker (25 CPS) | 8 vCPU, 8 GB RAM, 40 GB HDD | |
| … | - | worker (+25 CPS) | 8 vCPU, 8 GB RAM, 40 GB HDD |
- распределенное отказоустойчивое хранилище данных
Это типовая компактная HA-схема:
- 2
service-ноды одновременно несут рольbalancer - третий
managerразмещается на одном изworker analyzerразмещается на второйservice-ноде
Рекомендуемое отказоустойчивое решение 50 CPS + масштабирование горизонтально#
| host | swarm manager | roles | resources |
|---|---|---|---|
| host1 | + | service, balancer | 4 vCPU, 8 GB RAM, 40 GB HDD |
| host2 | + | service, balancer | 4 vCPU, 8 GB RAM, 40 GB HDD |
| host3 | + | worker (25 CPS) | 8 vCPU, 8 GB RAM, 40 GB HDD |
| host4 | worker (25 CPS) | 8 vCPU, 8 GB RAM, 40 GB HDD | |
| host5 | - | analyzer | 8 vCPU, 12 GB RAM, 40 GB HDD |
| … | - | worker (+25 CPS) | 8 vCPU, 8 GB RAM, 40 GB HDD |
- распределенное отказоустойчивое хранилище данных
Это рекомендуемая HA-схема для продуктивной эксплуатации:
analyzerвынесен на отдельную ноду- это снижает риск влияния аналитической нагрузки на сервисный контур
- такая схема лучше соответствует архитектурной HA-модели SmartCPD
Высоконагруженное отказоустойчивое решение 100 CPS + масштабирование горизонтально#
| host | swarm manager | roles | resources |
|---|---|---|---|
| host1 | + | service | 4 vCPU, 4 GB RAM, 20 GB HDD |
| host2 | + | service | 4 vCPU, 4 GB RAM, 20 GB HDD |
| host3 | + | balancer | 4 vCPU, 4 GB RAM, 20 GB HDD |
| host4 | - | balancer | 4 vCPU, 4 GB RAM, 20 GB HDD |
| host5 | - | analyzer | 8 vCPU, 12 GB RAM, 40 GB HDD |
| host6 | - | worker (25 CPS) | 8 vCPU, 8 GB RAM, 40 GB HDD |
| host7 | - | worker (25 CPS) | 8 vCPU, 8 GB RAM, 40 GB HDD |
| host8 | - | worker (25 CPS) | 8 vCPU, 8 GB RAM, 40 GB HDD |
| host9 | - | worker (25 CPS) | 8 vCPU, 8 GB RAM, 40 GB HDD |
| … | - | worker (+25 CPS) | 8 vCPU, 8 GB RAM, 40 GB HDD |
- распределенное отказоустойчивое хранилище данных
В этой схеме:
- отдельный резервный
balancerявляется лучшим кандидатом на роль третьегоmanager analyzerвынесен на отдельную ноду- дополнительные
managerсверх базовой трехузловой quorum-модели не требуются