Требования к ТО
Технические требования для работы Платформы Радар рассчитываются для обеспечения штатного функционирования в случае одновременной работы всех пользователей Заказчика.
Данный раздел содержит:
- минимальные требования к аппаратному обеспечению Платформы Радар;
- рекомендации по выбору оборудования для серверов, на которых работает Платформа Радар.
Минимальные аппаратные требования
Минимальные аппаратные требования, предъявляемые модулями Платформы Радар:
Модули | CPU(cores) | RAM | IOPS | HDD | Net(Гбит) |
---|---|---|---|---|---|
MASTER INFRASTRUCTURE MONITORING (устанавливаются на один сервер) | 16 | 32 | 1500 | 500 | 1Gbs |
WORKER | 16 | 4 | 1000 | 120 | 1Gbs |
BALANCER | 4 | 4 | 1500 | 1000 | 1Gbs |
CORRELATOR | 4 | 4 | 1000 | 120 | 1Gbs |
DATA | 16 | 32 | 1500 | 2000 | 1Gbs |
Выбор оптимальной конфигурации оборудования
Выбор оптимальной конфигурации оборудования зависит от многих факторов. При подборе оборудования для развертывания СПО ПР следует учитывать следующие :
- Установка ПО будет централизованной или распределенной?
- Будут ли на сервере работать какие-либо приложения, не относящиеся к Платформе Радар?
- Сколько событий в секунду должен обрабатывать сервер? Сколько событий в день должен обрабатывать сервер? Оба фактора являются переменными, при этом дневная цифра более важна для определения параметров сервера.
- Какой средний размер события?
- Сколько источников будет подключено к Платформе Радар?
- Какие требования предъявляются к обеспечению отказоустойчивости?
- Длительность хранения события?
- Есть ли необходимость хранить исходное сообщение или достаточно только нормализованного варианта?
Перечисленные выше факторы (а также, при необходимости, дополнительные факторы) прорабатываются во время разработки проектного внедрения.
Также вопросы по подбору оптимальной конфигурации оборудования можно адресовать в службу технической поддержки, когда требуется определить размер и параметры оборудования "с нуля" или оценить возможности уже существующей потенциальной конфигурации.
Подбор параметров серверного оборудования
В данном разделе рассматриваются особенности подбора серверного оборудования для установки Платформы Радар по следующим критериям:
- производительность процессора;
- объём ОЗУ;
- объем и производительность дисковой подсистемы;
- требования к сети.
Дисковая подсистема является наиболее частым узким местом.
Производительность ЦП - второе по популярности узкое место.
Производительность сети обычно является узким местом только в случае установки распределенной инсталляции.
Подбор Процессора по производительности
При подборе серверного оборудования следует учитывать следующую информацию:
-
Все модули Платформы Радар поддерживают 64-разрядные процессоры;
-
Так как большинство модулей Платформы Радар, чувствительных к производительности, являются многопоточными, то ресурсы ЦП сервера можно представить как умножение количества ядер ЦП на скорость каждого ядра.
Два значения, которые часто включаются в спецификации ЦП (сервера), - это количество ядер ЦП и количество потоков ЦП. Например, ЦП может иметь 4 ядра и 8 потоков.
При выборе сервера рекомендуется рассматривать производительность ЦП с точки зрения количества потоков, так как данная метрика более актуальна для производительности Платформы Радар, чем физическое кол-во ядер ЦП.
Подбор объема ОЗУ
Разработчик СПО ПР рекомендует для каждого сервера Платформы Радар минимум 16 Гб оперативной памяти. Дополнительная оперативная память может потребоваться в зависимости от требований к производительности Платформы Радар.
Увеличение объема установленной ОЗУ - эффективный способ снизить накладные расходы на операции дискового ввода-вывода.
Следующие компоненты являются основными пользователями оперативной памяти Платформы Радар:
- PostgreSQL - в идеальном случае оперативная память должна обеспечивать буферизацию всей базы данных. В большинстве случаев это невозможно, но чем выше процент базы данных, которая может быть буферизована в ОЗУ, тем лучше с точки зрения производительности. Объем дискового пространства, потребляемого PostgreSQL, рассмотрен в разделе Требования к дисковому пространству;
- Kafka - в большинстве случаев Kafka может работать с пространством кучи (heap) 6 Гб памяти. При таком режиме требуется кэш-память файловой системы размером до 28–30 Гб на машине с 32 Гб. Для повышенных производственных нагрузок рекомендуется использовать машины 32 Гб ОЗУ и выше. В этом случае дополнительная оперативная память будет использоваться для поддержки кеширования страниц ОС и повышения пропускной способности клиентов. Kafka также может работать и с меньшим объемом оперативной памяти, но при этом его способность справляться с нагрузкой затрудняется. Для нормальной работы Kafka потребуется достаточно много памяти для буферизации активных процессов чтения и записи. Можно сделать предварительную оценку потребностей в памяти, исходя из необходимости иметь возможность буферизования в течение 30 секунд. Тогда потребность в памяти вычисляется как write_throughput * 30. Менее 32 Гб ОЗУ, как правило, непродуктивно (в конечном итоге понадобится много маленьких машин);
- RADAR TERMITE - оптимальный размер оперативной памяти для сервиса 16 Гб;
- RADAR LOGMULE - объем ОЗУ определяется характером правил корреляции. Общая рекомендация - не менее 8Гб ОЗУ на инстанс;
- ElasticSearch - стандартная рекомендация для производительных кластеров - 32 Гб на ноду кластера ElasticSearch;
- Буферы файловой системы - ОС обычно выделяет большую часть оставшейся оперативной памяти в этой области. Основная область, в которой буферы файловой системы могут улучшить производительность, - это балансировщик событий, очередь обмена сообщениями и хранилище событий.
Объем дискового пространства, который занимает балансировщик, очередь и хранилище очередей рассмотрены в разделе Требования к дисковому пространству.
Подбор дисковой подсистемы
Рекомендации по вводу-выводу дисковой подсистемы
Для Платформы Радар в большинстве ситуаций производительность произвольного ввода-вывода дисковой подсистемы более важна, чем производительность последовательного чтения и записи, и может оказаться узким местом до ЦП или ОЗУ. Особенно это характерно для централизованной установки Платформы Радар, при которой происходит много операций записи и чтения разными модулями Платформы Радар, установленными на один сервер.
До определенного уровня производительности можно использовать накопители на магнитных дисках. Но для максимальной производительности рекомендуется использовать твердотельные накопители (SSD).
Один из ключевых показателей, на который следует обратить внимание при выборе дисковой подсистемы для использования, - это производительность в IOPS (операций ввода-вывода в секунду) как для случайного чтения, так и для произвольной записи.
Рекомендации по подбору файловой системы
Рекомендуется использовать файловые системы XFS и избегать EXT4.
- XFS - это высокопроизводительная масштабируемая файловая система, которая обычно развертывается в самых требовательных приложениях. RHEL 7 является файловой системой по умолчанию и поддерживается на всех архитектурах. XFS имеет свои преимущества, но при настройке JBOD она не дает особых преимуществ;
- EXT4 не масштабируется до того же размера, что и XFS.
Рекомендации по использованию твердотельного накопителя
Платформа Радар в настоящее время использует два разных уровня SSD-накопителей для собственных стендов:
- На серверах, для которых требуется скорость обработки до 10К событий в секунду или меньше, используются стандартные твердотельные накопители;
- На серверах, которым требуется скорость обработки более 10K событий в секунду, используются SSD-диски корпоративного класса. Желательно использование SSD с поддержкой технологии Write intensive.
Рекомендуется включать TRIM на SSD-дисках (если это возможно в конкретной модели) и использовать правильное выравнивание разделов.
В некоторых случаях уязвимым местом дисковой подсистемы становится диск или RAID-контроллер, поэтому при использовании твердотельных накопителей также рекомендуется проверить производительность диска или RAID-контроллера, к которому будут подключены твердотельные накопители.
Рекомендации по использованию магнитного накопителя
Если SSD-накопители не подходят, то рекомендуется использовать самую быструю доступную конфигурацию магнитного накопителя. Например:
- Использовать накопитель с не менее 10K оборотов, желательно 15K оборотов в минуту;
- Использовать диски SAS, так как они обычно быстрее, чем диски SATA;
- Использовать объединение несколько магнитных жестких дисков в один массив RAID 10. Даже если в конкретном случае не нужна совокупная емкость хранилища, то это один из способов увеличения производительности доступного дискового ввода-вывода.
Внимание! Платформа Радар не позволяет использовать магнитные накопители со скоростью оборотов менее 10K RPM.
Рекомендации по комбинированию твердотельных накопителей и магнитных дисков
Можно использовать комбинацию твердотельных накопителей и магнитных накопителей, чтобы воспользоваться преимуществами каждого из них:
- Компоненты, интенсивно использующие дисковый ввод-вывод, такие как база данных PostgreSQL, Kafka, ElasticSeach, могут храниться на SSD;
- Компоненты с низким объемом операций ввода-вывода, такие как операционная система, журналы и резервные копии, могут храниться на магнитных дисках;
- Также рекомендуется переносить неиспользуемые индексы ElasticSearch при длительном хранении на магнитные диски.
Рекомендации по использованию RAID-массивов
Чтобы оптимизировать производительность и обеспечить избыточность в случае отказа жесткого диска, рекомендуется использовать массивы RAID 1 и/или RAID 10.
Не рекомендуется использовать массивы RAID 5 и RAID 0.
При прочих равных условиях надежность Платформы Радар с использованием массива RAID 10 обычно превосходит надежность с использованием массивов RAID 5 и RAID 0.
Рекомендации по кэшированию чтения и записи на контроллерах RAID
Некоторые контроллеры RAID имеют возможность включить кэш чтения и/или записи.
Для кэша записи рекомендуется выполнить следующие действия:
- Отключить кэш записи RAID-контроллера, если нет заведомо исправного BBU (блока резервного питания от батареи). Это связано с тем, что кэш записи создает риск потери данных, когда нет работающего BBU;
- Если установлен заведомо исправный BBU, часто имеет смысл включить кэш записи RAID-контроллера. Выполнение этого на массиве RAID, который использует магнитные диски, почти всегда повысит производительность. Выполнение этого на RAID-массиве, в котором используются SSD-диски, часто, но не всегда, улучшает производительность. Это связано с тем, что SSD-диски достаточно быстры и используют собственное кэширование, поэтому иногда дополнительные накладные расходы на выполнение кэширования записи оказывают влияние на производительность;
- Некоторые контроллеры RAID также имеют параметр конфигурации для отключения кэширования записи в случае отказа BBU. При наличии данного параметра конфигурации рекомендуется его включить.
Статья "Диски с точки зрения файловой системы" на ACM.org содержит более подробную информацию о том, как работает кэширование записи.
Для кэша чтения рекомендуется выполнить следующие действия:
- Перед включением кэша записи RAID-контроллера рекомендуется отключить его кэш чтения, чтобы для записи можно было выделить больше ресурсов кэша;
- Если кэш записи RAID-контроллера отключается, то имеет смысл включить кэш чтения RAID-контроллера.
Выполнение вышеприведенных действий по включению/отключению кэш на массиве RAID, который использует магнитные диски, в большинстве случаев улучшит производительность.
Выполнение вышеприведенных действий на массиве RAID, в котором используются SSD-диски, часто, но не всегда, улучшит производительность. Это связано с тем, что SSD-диски достаточно быстрые, поэтому иногда дополнительные накладные расходы на выполнение кэширования чтения влияют на производительность.
Мы рекомендуем отключить кэш чтения RAID-контроллера.
Оперативная память операционной системы может служить кэшем чтения и более доступна для ЦП, чем кэш RAID-контроллера.
Требования к дисковому пространству
Требования к дисковому пространству определяются следующими характеристиками:
- длительность хранения событий;
- количество событий в секунду, которые необходимо обработать Платформе Радар.
Вопросы по подбору оптимального дискового пространства или запросы для оценки существующего дискового пространства можно адресовать в службу технической поддержки.
Требования к параметрам сети
Быстрая и надежная сеть - важный компонент производительности в распределенной системе. Низкая задержка гарантирует, что узлы могут легко обмениваться данными, а высокая пропускная способность помогает перемещению и восстановлению сегментов. Современные сети центров обработки данных (1 GbE, 10 GbE) достаточны для подавляющего большинства кластеров.
Высокой пропускной способности при работе Платформы Радар не получится достичь при использовании сетевой подсистемы ниже чем 1GbE.
Совместимость Платформы Радар с технологиями виртуализации
Платформа Радар совместима с некоторыми технологиями виртуализации, которые обеспечивают 64-разрядный процессор и установку ОС Debian 9/10.
Ниже приведены технологии виртуализации, совместимые с Платформой Радар:
- VMware ESX (i) и vSphere;
- Сервер VMware, использующий Linux или Windows в качестве ОС хоста;
- KVM;
- Xen;
- Сервер Microsoft Hyper-V;
- Виртуализация "Горизонт-ВС".
С точки зрения производительности рекомендуется с осторожностью использовать мощности облачного провайдера для установки Платформы Радар.