Архитектура и системные требования / Системные требования ELMA365 On-Premises Enterprise

Системные требования ELMA365 On-Premises Enterprise

В статье приводятся минимальные системные требования для корректной работы ELMA365 On-Premises Enterprise . Информация в статье не является руководством по конфигурированию серверов, а служит для приблизительной оценки совместимости оборудования компании и ПП ELMA365. Фактические параметры могут варьироваться в зависимости от профиля нагрузки и выбираются согласно требованиям заказчика.  

начало внимание

Под термином Пользователь в этой статье мы понимаем учётную запись в ELMA365. В терминах лицензирования это может быть именная или конкурентная лицензия либо интеграция с внешней системой.

конец внимание

Сервер ELMA365

В таблице указаны требования к программному и аппаратному обеспечению для установки сервера системы ELMA365.

Операционная система

Linux

Минимальные аппаратные требования

*(в расчете на 500 пользователей)

Сервер приложения

 

Процессор: x86-x64, 8 vCPU и выше

Жесткий диск**: 100 ГБ, IOPS записи 2000 и выше

Оперативная память: 16 ГБ и выше

Сетевое подключение: LAN 1 Гбит/сек и выше

 

При увеличении нагрузки и количества пользователей:

  • Производится увеличение количества процессоров (ядер).
  • Производится увеличение количества оперативной памяти.
  • Производится масштабирование с установкой дополнительных серверов.

 

Один физический сервер приложения способен выдерживать нагрузку до 10000 пользователей (при соразмерном увеличении количества ядер и памяти). Однако, не рекомендуется доводить до такой нагрузки. Стоит рассматривать это число, скорее, как максимальную стрессовую нагрузку при планировании локальной инфраструктуры.

 

Оптимальный вариант наращивания мощностей на сервере при средней нагрузке:

ОЗУ: +8 ГБ для 500 пользователей

CPU: +4 ядра для 500 пользователей

 

Количество конкурирующих пользователей оценивается заказчиком или путем анализа деятельности компании.

 

*Система резервного копирования должна располагаться на независимом сервере, объём доступной памяти на дисках должен соответствовать частоте резервного копирования.

**Производительность и стабильность работы приложения в кластере сильно зависит от скорости диска. Медленный диск увеличит задержку запросов в кластере и потенциально повредит стабильность кластера. Подробнее о проверке производительности диска читайте в статье «Проверка производительности диска».

Сервер данных

В таблице указаны требования к программному и аппаратному обеспечению для установки серверов хранения и обработки данных системы ELMA365.

PostgreSQL

Минимальные аппаратные требования

*(в расчете на 500 пользователей)

Сервер СУБД PostgreSQL

 

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

 

СУБД: PostgreSQL v10 - 13

Процессор: x86-x64, 4 vCPU и выше

Жесткий диск: 200 ГБ, IOPS записи 2000 и выше

Оперативная память: 8 ГБ и выше

Сетевое подключение: LAN 1 Гбит/сек и выше

 

При увеличении нагрузки и количества пользователей:

  • Производится увеличение количества процессоров (ядер).
  • Производится увеличение количества оперативной памяти.
  • Производится увеличение дискового пространства для хранения данных.

 

Оптимальный вариант наращивания мощностей на сервере при средней нагрузке:

ОЗУ: +4 ГБ для 500 пользователей

CPU: +2 ядра для 500 пользователей

 

Наращивание дискового хранилища оценивается заказчиком самостоятельно или по результатам анализа деятельности компании.

MongoDB

Минимальные аппаратные требования

*(в расчете на 500 пользователей)

Сервер СУБД MongoDB

 

Хранит неструктурированные системные настройки, данные чатов и ленты.

 

СУБД: MongoDB v3.6 - 5.0

Процессор: x86-x64, 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-x64, 4 vCPU и выше

Жесткий диск: 40 ГБ, IOPS записи 2000 и выше

Оперативная память: 8 ГБ и выше

Сетевое подключение: LAN 1 Гбит/сек и выше

 

При увеличении нагрузки и количества пользователей:

  • Производится увеличение количества процессоров (ядер).
  • Производится увеличение количества оперативной памяти.

 

Оптимальный вариант наращивания мощностей на сервере при средней нагрузке:

ОЗУ: +4 ГБ для 500 пользователей

CPU: +2 ядра для 500 пользователей

 

Наращивание дискового хранилища оценивается заказчиком самостоятельно или по результатам анализа деятельности компании.

Redis

Минимальные аппаратные требования

*(в расчете на 500 пользователей)

Сервер кэширования данных Redis

 

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

 

Cache: Redis v5.0 и выше

Процессор: x86-x64, 2 vCPU и выше

Жесткий диск: 40 ГБ, IOPS записи 2000 и выше

Оперативная память: 4 ГБ и выше

Сетевое подключение: LAN 1 Гбит/сек и выше

 

При увеличении нагрузки и количества пользователей:

  • Производится увеличение количества процессоров (ядер).
  • Производится увеличение количества оперативной памяти.

 

Оптимальный вариант наращивания мощностей на сервере при средней нагрузке:

ОЗУ: +4 ГБ для 500 пользователей

CPU: +2 ядра для 500 пользователей.

Minio S3

Минимальные аппаратные требования

*(в расчете на 500 пользователей)

Сервер хранилища данных Minio S3

 

Подходит любое аппаратное или программное S3 совместимое хранилище данных.

Мы рекомендуем использовать Minio, как наиболее простое в установке и поддержке.

https://docs.min.io/docs/minio-quickstart-guide.html.

 

S3: Minio S3 v2022.8.8

Процессор: x86-x64, 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-93inbox@elma365.com.

Отказоустойчивая архитектура серверов

Для построения отказоустойчивой архитектуры и оптимизации распределения нагрузки на сервера системы, существует возможность реализовать кластер из нескольких серверов. Сервер приложений и сервера хранения и обработки данных масштабируются независимо. Для определения необходимости реализации, а также в процессе настройки отказоустойчивого кластера, мы рекомендуем привлекать специалистов ELMA для консультаций, т.к. возможны различные варианты и комбинации настроек для различных задач.

Кластер ELMA365

Несколько серверов в кластере распределяют между собой нагрузку на приложение и позволяют дублировать и масштабировать внутренние сервисы. Таким образом достигается отказоустойчивое решение, способное выдержать падение одного сервера. Прозрачное взаимодействие между серверами достигается применением готового решения https://microk8s.io.

Минимальное количество серверов для организации кластера: 3 сервера.

Кластер PostgreSQL

Сервера объединяются в кластер Master-Replica(s). Один сервер становится главным и отправляет свои данные на остальные сервера. Более подробно о настройке и особенностях работы кластера можно почитать в официальной документации https://www.postgresql.org/docs/10/high-availability.html.

Минимальное количество серверов для организации кластера: 2 сервера.

Кластер MongoDB

Несколько серверов прозрачно объединяются в отказоустойчивый кластер перераспределяя и дублируя данные между собой. Более подробно смотрите в официальной документации https://docs.mongodb.com/v3.6/reference/glossary/#term-high-availability.

Минимальное количество серверов для организации кластера: 3 сервера.

Кластер RabbitMQ

Несколько серверов соединяются в кластер и распределяют между собой работу по обработке и доставке сообщений. Более подробно смотрите в официальной документации https://www.rabbitmq.com/clustering.html.

Минимальное количество серверов для организации кластера: 3 сервера.

Кластер Redis

Несколько серверов соединяются в кластер Master-Replicas. Один сервер становится главным и отправляет свои данные на остальные сервера. Более подробно смотрите в официальной документации https://redis.io/topics/sentinel.

Минимальное количество серверов для организации кластера: 3 сервера.

Кластер Minio S3

Несколько серверов соединяются в отказоустойчивый кластер перераспределяя и дублируя данные между собой. Более подробно смотрите в официальной документации https://docs.min.io/docs/distributed-minio-quickstart-guide.html.

Минимальное количество серверов для организации кластера: 2 сервера.

Нашли опечатку? Выделите текст, нажмите ctrl + enter и оповестите нас