В статье приводятся минимальные системные требования для корректной работы ELMA365 On‑Premises Enterprise. Информация в статье не является руководством по конфигурированию серверов, а служит для приблизительной оценки совместимости оборудования компании и ПП ELMA365. Фактические параметры могут варьироваться в зависимости от профиля нагрузки и выбираются согласно требованиям заказчика.
начало внимание
Под термином Пользователь в этой статье мы понимаем учётную запись в ELMA365. В терминах лицензирования это может быть именная или конкурентная лицензия либо интеграция с внешней системой.
конец внимание
Сервер ELMA365
В таблице указаны требования к программному и аппаратному обеспечению для установки сервера системы ELMA365.
Операционная система |
Linux x64, рекомендуется Ubuntu Server 22.04 или Debian 11 |
Минимальные аппаратные требования (в расчёте на 500 пользователей)* |
Сервер приложения
Процессор: x86–64, 10 vCPU и выше Жёсткий диск**: 100 ГБ, IOPS записи 2000 и выше Оперативная память: 16 ГБ и выше Сетевое подключение: LAN 1 Гбит/сек и выше
При увеличении нагрузки и количества пользователей:
Один физический сервер приложения способен выдерживать нагрузку до 10 000 пользователей (при соразмерном увеличении количества ядер и объёма памяти). Однако не рекомендуется доводить до такой нагрузки. Стоит рассматривать это число скорее как максимальную стрессовую нагрузку при планировании локальной инфраструктуры.
Оптимальный вариант наращивания мощностей на сервере при средней нагрузке: ОЗУ: +8 ГБ для 500 пользователей CPU: +4 ядра для 500 пользователей
Количество конкурирующих пользователей оценивается заказчиком или путём анализа деятельности компании. |
*Система резервного копирования должна располагаться на независимом сервере. Объём хранилища для резервных копий рассчитывается исходя из их количества и размера.
**Производительность и стабильность работы приложения в кластере зависит от скорости диска. Медленный диск увеличивает задержку запросов в кластере и может нарушить его стабильность. Подробнее об этом читайте в статье «Проверка производительности диска».
При использовании гипервизоров для корректной работы узлов Kubernetes и ELMA365 в настройках виртуальных машин требуется выделение фиксированного объёма оперативной памяти. Объём должен соответствовать системным требованиям, указанным выше.
Не рекомендуется использовать динамическое распределение памяти (Shared или «от X ГБ до Y ГБ»). Виртуальные машины с динамически выделяемой памятью работают медленнее, а гипервизор некорректно реагирует на требования ОС к памяти.
Сервер данных
В таблице указаны требования к программному и аппаратному обеспечению для установки серверов хранения и обработки данных системы ELMA365.
PostgreSQL
Минимальные аппаратные требования (в расчёте на 500 пользователей)* |
Сервер СУБД PostgreSQL
Хранит основные данные системы: пользователей, элементы приложений, настройки приложений, разделов, процессы, страницы, виджеты, задачи, события и другие настройки конфигурации.
СУБД: PostgreSQL v11–15 Процессор: x86–64, 4 vCPU и выше Жёсткий диск: 200 ГБ, IOPS записи 2000 и выше Оперативная память: 8 ГБ и выше Сетевое подключение: LAN 1 Гбит/сек и выше
При увеличении нагрузки и количества пользователей:
Оптимальный вариант наращивания мощностей на сервере при средней нагрузке: ОЗУ: +4 ГБ для 500 пользователей CPU: +2 ядра для 500 пользователей
Наращивание дискового хранилища оценивается заказчиком самостоятельно или по результатам анализа деятельности компании. |
MongoDB
Минимальные аппаратные требования (в расчёте на 500 пользователей)* |
Сервер СУБД MongoDB
Хранит неструктурированные системные настройки, данные чатов и ленты.
СУБД: MongoDB v3.6–6.0 Процессор: x86–64, 4 vCPU и выше, MongoDB 5.0 требует использования набора инструкций AVX Жёсткий диск: 200 ГБ, IOPS записи 2000 и выше Оперативная память: 8 ГБ и выше Сетевое подключение: LAN 1 Гбит/сек и выше
При увеличении нагрузки и количества пользователей:
Оптимальный вариант наращивания мощностей на сервере при средней нагрузке: ОЗУ: +4 ГБ для 500 пользователей CPU: +2 ядра для 500 пользователей
Наращивание дискового хранилища оценивается заказчиком самостоятельно или по результатам анализа деятельности компании. |
RabbitMQ
Минимальные аппаратные требования (в расчёте на 500 пользователей)* |
Сервер шины событий RabbitMQ
Используется для формирования очередей задач между сервисами, не хранит данные долговременно.
MQ: RabbitMQ v3.9.15 и выше Процессор: x86–64, 4 vCPU и выше Жёсткий диск: 40 ГБ, IOPS записи 2000 и выше Оперативная память: 8 ГБ и выше Сетевое подключение: LAN 1 Гбит/сек и выше
При увеличении нагрузки и количества пользователей:
Оптимальный вариант наращивания мощностей на сервере при средней нагрузке: ОЗУ: +4 ГБ для 500 пользователей CPU: +2 ядра для 500 пользователей
Наращивание дискового хранилища оценивается заказчиком самостоятельно или по результатам анализа деятельности компании. |
Redis
Минимальные аппаратные требования (в расчёте на 500 пользователей)* |
Сервер кэширования данных Redis
Используется для кэширования обработанной информации в памяти, не хранит данные долговременно.
Cache: Redis v5.0 и v6.2 Процессор: x86–64, 2 vCPU и выше Жёсткий диск: 40 ГБ, IOPS записи 2000 и выше Оперативная память: 4 ГБ и выше Сетевое подключение: LAN 1 Гбит/сек и выше
При увеличении нагрузки и количества пользователей:
Оптимальный вариант наращивания мощностей на сервере при средней нагрузке: ОЗУ: +4 ГБ для 500 пользователей CPU: +2 ядра для 500 пользователей. |
MinIO S3
Минимальные аппаратные требования (в расчёте на 500 пользователей)* |
Сервер хранилища данных MinIO S3
Подходит любое аппаратное или программное S3 совместимое хранилище данных. Мы рекомендуем использовать MinIO, как наиболее простое в установке и поддержке.
S3: MinIO S3 v2022.8.8 и выше Процессор: x86–64, 2 vCPU и выше Жёсткий диск: 40 ГБ, IOPS записи 2000 и выше Для обеспечения работы сервера MinIO требуется подключить в кластер несколько серверов или несколько дисков на один сервер. Подробнее смотрите в официальной документации. Оперативная память: 2 ГБ и выше Сетевое подключение: LAN 1 Гбит/сек и выше
При увеличении нагрузки на операции скачивания и генерацию файлов:
При увеличенной нагрузке на операции скачивания и генерацию файлов: ОЗУ: +2 ГБ для 1000 пользователей CPU: +1 ядро для 1000 пользователей
Наращивание дискового хранилища оценивается заказчиком самостоятельно или по результатам анализа деятельности компании. |
*Система резервного копирования должна располагаться на независимом сервере. Объём хранилища для резервных копий рассчитывается исходя из их количества и размера.
Минимальные аппаратные требования для различного числа пользователей
В таблицах приведены аппаратные требования, необходимые для корректной работы системы ELMA365 On‑Premises Enterprise на 500, 1 000, 2 000, 5 000 и 10 000 пользователей. Под термином Пользователь понимается человек или внешняя автоматизированная система, которые имеют учётную запись и право работать с ELMA365.
Фактические параметры могут варьироваться в зависимости от реальных сценариев использования и способа применения системы в компании.
500 пользователей
500 пользователей |
|||
Сервис |
vCPU* |
RAM, GB |
SSD, GB** |
Сервер ELMA365 |
8 |
16 |
100 |
Сервер PostgreSQL |
4 |
8 |
100 |
Сервер MongoDB |
4 |
8 |
50 |
Сервер RabbitMQ |
4 |
8 |
40 |
Сервер Redis |
2 |
4 |
50 |
Сервер MinIO S3 |
2 |
2 |
100 |
Сервер Haproxy |
2 |
2 |
30 |
Итого |
26 |
48 |
470 |
1 000 пользователей
1 000 пользователей |
|||
Сервис |
vCPU* |
RAM, GB |
SSD, GB** |
Сервер ELMA365 |
12 |
16 |
100 |
Сервер PostgreSQL |
6 |
12 |
100 |
Сервер MongoDB |
4 |
8 |
50 |
Сервер RabbitMQ |
4 |
8 |
40 |
Сервер Redis |
2 |
4 |
50 |
Сервер MinIO S3 |
2 |
2 |
100 |
Сервер Haproxy |
2 |
2 |
30 |
Итого |
32 |
52 |
470 |
2 000 пользователей
2 000 пользователей |
|||
Сервис |
vCPU* |
RAM, GB |
SSD, GB** |
Сервер ELMA365 |
16 |
24 |
100 |
Сервер PostgreSQL |
8 |
16 |
100 |
Сервер MongoDB |
6 |
8 |
50 |
Сервер RabbitMQ |
4 |
8 |
40 |
Сервер Redis |
2 |
8 |
50 |
Сервер Minio S3 |
2 |
4 |
100 |
Сервер Haproxy |
2 |
2 |
30 |
Итого |
40 |
70 |
470 |
5 000 пользователей
5 000 пользователей |
|||
Сервис |
vCPU* |
RAM, GB |
SSD, GB** |
Сервер ELMA365 |
16 |
32 |
100 |
Сервер PostgreSQL (мастер) |
4 |
16 |
200 |
Сервер PostgreSQL (реплика) |
4 |
16 |
200 |
Сервер PostgreSQL (реплика) |
4 |
16 |
200 |
Сервер MongoDB (мастер) |
2 |
8 |
100 |
Сервер MongoDB (реплика) |
2 |
8 |
100 |
Сервер MongoDB (реплика) |
2 |
8 |
100 |
Сервер RabbitMQ |
4 |
8 |
40 |
Сервер Redis |
2 |
8 |
50 |
Сервер MinIO S3 |
2 |
8 |
200 |
Сервер Haproxy |
2 |
2 |
30 |
Итого |
44 |
130 |
1320 |
10 000 пользователей
10 000 пользователей |
|||
Сервис |
vCPU* |
RAM, GB |
SSD, GB** |
Сервер ELMA365 |
32 |
64 |
100 |
Сервер PostgreSQL (мастер) |
8 |
32 |
250 |
Сервер PostgreSQL (реплика) |
8 |
32 |
250 |
Сервер PostgreSQL (реплика) |
8 |
32 |
250 |
Сервер MongoDB (мастер) |
2 |
8 |
200 |
Сервер MongoDB (реплика) |
2 |
8 |
200 |
Сервер MongoDB (реплика) |
2 |
8 |
200 |
Сервер RabbitMQ |
4 |
8 |
40 |
Сервер Redis |
2 |
8 |
50 |
Сервер MinIO S3 |
2 |
8 |
500 |
Сервер Haproxy |
2 |
2 |
30 |
Итого |
72 |
210 |
2070 |
*vCPU — это одно гиперпоточное ядро на физическом процессоре. Для облачных провайдеров соответствует одному vCPU или vCore.
** Объем выделяемого пространства SSD напрямую зависит от потребности конкретной компании. Определяется индивидуально для каждого сервиса системы в зависимости от того, какой объём данных планируется хранить.
При выходе обновлений системы ELMA365 On-Premises мы производим нагрузочное тестирование системы в условиях, максимально приближенных к реальным. Ознакомиться с результатами тестирования вы можете на портале ELMA365 Community, начиная с версии Релиз 2022.2.
Для расчета системных требований для вашей конфигурации, а также для получения информации по аппаратным требованиям для 10 000+ пользователей, обратитесь к менеджерам отдела продаж ELMA365: +7 (3412) 93‑66‑93, inbox@elma365.com.
Отказоустойчивая архитектура серверов
Для построения отказоустойчивой архитектуры и оптимизации распределения нагрузки на сервера системы существует возможность реализовать кластер из нескольких серверов. Сервер приложений и сервера хранения и обработки данных масштабируются независимо.
Кластер ELMA365
Несколько серверов в кластере распределяют между собой нагрузку на приложение и позволяют дублировать и масштабировать внутренние сервисы. Таким образом достигается отказоустойчивое решение, способное выдержать падение одного сервера. Прозрачное взаимодействие между серверами достигается с помощью готового решения.
Минимальное количество серверов для организации кластера: три сервера.
Кластер PostgreSQL
Сервера объединяются в кластер Master-Replica(s). Один сервер становится главным и отправляет свои данные на остальные сервера. Более подробно о настройке и особенностях работы кластера можно почитать в официальной документации PostgreSQL.
Минимальное количество серверов для организации кластера: два сервера.
Кластер MongoDB
Несколько серверов прозрачно объединяются в отказоустойчивый кластер перераспределяя и дублируя данные между собой. Более подробно смотрите в официальной документации MongoDB.
Минимальное количество серверов для организации кластера: три сервера.
Кластер RabbitMQ
Несколько серверов соединяются в кластер и распределяют между собой работу по обработке и доставке сообщений. Более подробно смотрите в официальной документации RabbitMQ.
Минимальное количество серверов для организации кластера: три сервера.
Кластер Redis
Несколько серверов соединяются в кластер Master-Replicas. Один сервер становится главным и отправляет свои данные на остальные сервера. Более подробно смотрите в официальной документации Redis.
Минимальное количество серверов для организации кластера: три сервера.
Кластер MinIO S3
Несколько серверов соединяются в отказоустойчивый кластер, перераспределяя и дублируя данные между собой. Более подробно смотрите в официальной документации MinIO.
Минимальное количество серверов для организации кластера: четыре сервера.