Project

General

Profile

Рекомендации по аппаратному обеспечению

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

  • кол-во менеджеров, работающих с веб-интерфейсом
  • кол-во звонков в секунду
  • ASR и ACD
  • кол-во звонков с перекодировкой кодеков
  • кол-во SIP пользователей, регистрирующихся на системе
  • кол-во звонков с обработкой или перекодировкой факсов
  • кол-во звонков с ДВО
  • кол-во цен на направления
  • итп

Довольно сложно учесть все факторы, но ниже мы попытаемся учесть основные факторы.

CPU

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

VoIP:

ASR (%) ACD (минут) перекодировка кодеков (% звонков) аудиозапись (% звонков) Захват звонков (% звонков) CPU Passmark бенчмарк кол-во одновременных звонков версия Smartswitch
40 2 15 0 0 Xeon E5-2697 v2 @ 2.70GHz 17812 2200
4 3 15 0 0 Xeon E3-1230 v2 @ 3.30GHz 8890 750
20 2 20 25 0 Pentium(R) Dual-Core E5300 @ 2.60GHz 1553 120
5 4 0 0 0 Pentium(R) Dual-Core E5300 @ 2.60GHz 1553 150
10 3 10 50 0 Pentium(R) Dual-Core E5300 @ 2.60GHz 1553 150
45 1 10 90 10 Pentium(R) Dual-Core E5300 @ 2.60GHz 1553 100 7.11.37091
1 3 0 20 20 Xeon(R) CPU E5-1650 v3 @ 3.50GHz 13601 700 7.11.42301

Под аудиозаписью подразумевается запись в sln формате, и перекодирование в mp3 в моменты простоя (напр. ночью).

SMPP:

доля успешных (%) CPU Passmark бенчмарк кол-во сообщений в секунду
100 Pentium(R) Dual-Core E5300 @ 2.60GHz 1553 100

Используя общедоступные данные Passmask бенчмарка возможно вычислить максимальную нагрузку, которую сможет выдержать ваш CPU.

Например, по таблице выше, установлено, что CPU Intel(R) Xeon(R) E5-2697 v2 @ 2.70GHz способен обрабатывать 2200 звонков с ASR 40%, ACD 2 минуты, 15% звонков с перекодировкой кодеков.
Требуется установить сколько звонков сможет поддерживать ваш CPU при таких же параметрах трафика.

Зайдите на http://www.cpubenchmark.net/cpu_list.php
Введите название вашего CPU.
Бенчмарк PassMark показывает для Xeon E5-2697 17812.
Согласно бенчмарка PassMark для вашего CPU пропорционально посчитайте, сколько сможет обработать ваш CPU.

Например, ваш CPU Intel(R) Core(TM) i3 550 @ 3.20GHz.
Его PassMark 2846.
Следовательно, ваш CPU сможет обработать 2846 * 2200 / 17812 = 350 звонков с ASR 40%, ACD 2 минуты, 15% звонков с перекодировкой кодеков.

Внимание! Если на сервере будет не только обработка трафика, а и активная работа с веб-интерфейсом (формирование отчетов, итп), следует заложить 20% мощности сервера на эти задачи.
Также следует заложить 10-20% мощности на пиковые нагрузки. Например, вы подсчитали мощность для среднего ASR 40% в течение дня, а в течение 10-20 минут в день может быть кратковременно ASR 5%. Очевидно, что если не будет заложен запас, то в эти моменты пиковой нагрузки будут проблемы с качеством.

NIC

Рекомендум 1Gbit Intel для всех конфигураций больше 10 одновременных звонков, как наименее проблемный чип.
Если речь идет о 10 звонках - то любой чип подойдет.

Объем RAM

общее кол-во звонков RAM
50 4G
100 8G
250 16G
500 32G
1000 64G

Хранение данных.

От выбора системы хранения данных зависит то, как комплекс будет функционировать в целом.

RAID зеркало.

Для односерверных инсталляций мы настроятельно рекомендуем устанавливать зеркало RAID из 2 жестких дисков.
Зеркало может быть программное, аппаратное либо полу-программное.
Это защитит ваши данные от потери в случае выхода из строя жесткого диска.

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

В порядке убывания производительности:

  • программный RAID на NVME
  • программный RAID на SSD
  • аппаратный RAID на HDD
  • полу-программный RAID на HDD
  • программный RAID на HDD

Обратите внимание, что при нагрузке более 200 одновременных звонков (а с записью разговоров более 100) и одновременно интенсивной работе с веб-интерфейсом (загрузка цен, генерация отчетов, итп) на одном сервере, программный и полупрограммный RAID на HDD может быть недостаточно производительным.
Это может вызывать запаздывание биллинга звонков и "медлительность" веб-интерфейса.
В этом случае рекомендуем:
1) разнести систему и базу CDR по разным жестким дискам (см. раздел Жесткие диски ниже)
2) использовать более производительное аппаратное обеспечение (см. выше)
3) если после выполнения п.1-2 нагрузка все равно слишком большая - разнести систему на 2 сервера. Один будет заниматься телефонией, второй - биллингом и веб-интерфейсом.
Подробнее о возможных схемах кластеризации см. в разделе Кластеризация.

В случае, если выбирается аппаратный RAID контроллер без привязки к конкретной модели, мы рекомендуем следующих производителей (в порядке убывания приоритета):

  • Adaptec (лучший выбор)
  • 3ware
  • LSI

Для продукции этих производителей обычно есть драйвера (однако нужно дополнительно проверить поддержку конкретного устройства, см. "Поддержка со стороны операционной системы" ниже) и утилиты для контроля и пересборки RAID из-под работающей системы.
Если вы выберете RAID контроллер другого производителя, то возможны проблемы с доступностью утилит контроля (даже при наличии драйвера RAID - см. "Поддержка со стороны операционной системы").
Это может привести к невозможности пересборки RAID (при замене диска) из-под работающей системы и что может привести к необходимости делать пересборку из BIOS.
Это в свою очередь, приведет к приостановке сервиса на несколько часов, если один из дисков выйдет со строя и потребуется его заменить, что может быть недопустимо для вашего бизнеса.

По конкретной модели, на текущий момент самый лучший результат показал сравнительно дешевый RAID контроллер LSI MegaRAID SAS 9260-4i.
Бенчмарк dbench показал на зеркале из 2 SATA дисков 1200 Mbps, на зеркале из 2 SSD дисков - 1500 Mbps.
Что примерно в 2 раза в среднем превосходит показатели протестированных Adaptec.
Также, не было отмечено серьезных проблем с надежностью на нескольких серверах с данным контроллером.
Поэтому, если есть возможность, и вы не хотите экспериментировать с моделями контролеров, используйте именно этот контроллер.

Жесткие диски

Для улучшения производительности, желательно разнести систему и хранилище CDR (а также аудио записей и pcap файлов) по 2 разным жестким дискам.
При использовании RAID зеркала - по 2 разным зеркальным томам (2 тома по 2 диска).

Таким образом, генерация отчетов, аудио и pcap запись не будут влиять на качество работы телефонии.
При интенсивной аудиозаписи (больше 50 одновременных звонков) это обязательное условие качественной работы системы.

Типы жестких дисков.

В данный момент на рынке есть жесткие диски следующих типов (в порядке убывания производительности):
  • NVME
  • SSD
  • SAS HDD
  • SATA HDD

Рекомендуем отталкиваться от максимального требуемого размера дискового пространства и подбирать максимально производительные комбинации.
Например, если Вам требуется 3Тб дискового пространства, то возможны варианты в порядке убывания производительности:

1) 1 NVME на 3Tb
2) 1 NVME на 1Tb + 1 SSD на 2Tb
3) 1 NVME на 1Tb + 1 SATA HDD на 2Tb

итд

Также возможные комбинации зависят от кол-ва портов внутри сервера.
Требуется проанализировать экономическую составляющую комбинаций согласно текущих цен на рынке на покупку/аренду аппаратного обеспечения и затем выбрать оптимальную.

Объем жестких дисков

Объем жесткого диска расчитан на:

  • хранение всех CDR за последние 3 года при ASR больше 10%.
  • хранение аудио записей за последний 1 месяц
  • хранение pcap данных за последний 1 месяц
общее кол-во звонков Общий доступный объем
50 250G
100 500G
250
500
1000

Для кластерных конфигураций более 1000 одновременных звонков рекомендуется установить отдельный сервер для биллинга с аппаратным RAID зеркалом 3Т и более.

Поддержка со стороны операционной системы.

Аппаратное обеспечение в составе сервера может быть слишком новым либо специфичным и для него могут отсутствовать драйвера в FreeBSD, на базе которой мы устанавливаем Smartswitch.
Потому перед приобретением сервера проверьте, что номера чипов присутствуют в списке поддерживаемого оборудования.

Список поддерживаемого оборудования FreeBSD: http://www.freebsd.org/releases/12.2R/hardware.html

На что следует обратить внимание:
  • поддержка номера чипа сетевой карты
  • поддержка номера чипа RAID контроллера (если установлен в сервере)

Номер чипа можно узнать из детальной спецификации сервера, которую должен предоставить хостер либо продавец сервера.
Поиск в документе можно осуществлять по CTRL+F.

Если есть возможность, лучше предварительно установить бесплатно распространяемый образ Smartswitch (http://streamco.org/ru/products/smartswitch/download) для проверки совместимости.
Если удалось установить систему с образа и сервер пингуется - то сервер совместим для работы Smartswitch.

Что требуется нам знать, чтоб вычислить подходящий сервер под ваши задачи

Предоставьте предполагаемые пиковые параметры Вашего трафика, которые дадут максимальную нагрузку на оборудование:

1. Кол-во одновременных звонков (чем больше - тем выше нагрузка).
2. ASR ( %, чем меньше - тем выше нагрузка)
3. ACD (минуты, чем меньше - тем выше нагрузка)
4. Перекодировка кодеков ( % звонков, чем больше - тем выше нагрузка)
5. Аудиозапись ( % звонков, чем больше - тем выше нагрузка)
6. Захват pcap ( % звонков/SMS, чем больше - тем выше нагрузка)
7. Сколько времени требуется хранить CDR, аудиозаписи, pcap (чем дольше - тем больше требуется ёмкости дисков)

English translation

Also available in: PDF HTML TXT