﻿# Системные требования ELMA365 On-Premises

> [HTML Version](elma365-enterprise-on-premises.html)

В статье приводятся минимальные системные требования для корректной работы ELMA365 On‑Premises. Информация в статье не является руководством по конфигурированию серверов, а служит для приблизительной оценки совместимости оборудования компании и ПП ELMA365. Фактические параметры могут варьироваться в зависимости от профиля нагрузки и выбираются согласно конфигурации и интенсивности использования.  

````
начало внимание

````
Под термином **Пользователь** в этой статье мы понимаем учётную запись в ELMA365. В терминах лицензирования это может быть [именная](licences.md#registered) или [конкурентная](licences.md#concurrent) лицензия либо интеграция с внешней системой.

````
конец внимание

## ````
Сервер ELMA365

В таблице указаны требования к программному и аппаратному обеспечению для установки сервера системы ELMA365.

| | |
|------|------|
| **Операционная система**\* | Linux x64  <br><br>**Рекомендуется:**<br>Ubuntu Server 24.04<br>Debian 11  <br><br>**Поддерживается:**<br>Ubuntu Server 22.04<br>Debian 10<br>Astra Linux Special Edition 1.7 (Open)\*\*<br>РЕД ОС 7, 8\*\* |
| **Kubernetes**\* | Поддержка Kubernetes API v. 2 (версия Kubernetes 1.21–1.33) |
| **Deckhouse** | Deckhouse 1.69\*\*\* и выше |
| **Helm** | Helm v. 3.14.0 и выше |
| **Минимальные аппаратные требования для ELMA365 Standard KinD (до 200 лицензий)**\*\*\*\*<br> | Процессор: x86–64, 8 vCPU и выше<br>Жёсткий диск\*\*\*\*\*: 100 ГБ, IOPS записи 1000 и выше<br>Оперативная память: 12 ГБ и выше<br>Сетевое подключение: LAN 100 Мбит/сек и выше<br>MongoDB 5.0+ требует использования набора инструкций AVX |
| **Минимальные аппаратные требования для ELMA365 Standard Kubernetes и ELMA365 Enterprise Kubernetes (в расчёте на 500 пользователей)**\*\*\*\*<br> | **Сервер приложения**<br><br>Процессор: x86–64, 8 vCPU и выше<br>Жёсткий диск\*\*\*\*\*: 100 ГБ, IOPS записи 2000 и выше<br>Оперативная память: 16 ГБ и выше<br>Сетевое подключение: LAN 1 Гбит/сек и выше<br><br>При увеличении нагрузки и количества пользователей:<br>- производится увеличение количества процессоров (ядер);<br>- производится увеличение объёма оперативной памяти;<br>- производится масштабирование с установкой дополнительных рабочих узлов.<br><br>Один инстанс приложения способен выдерживать подтверждённую нагрузку 10 000 пользователей (при соразмерном увеличении количества ядер и объёма памяти). Однако не рекомендуется доводить до такой нагрузки. Стоит рассматривать это число скорее как максимальную стрессовую нагрузку при планировании локальной инфраструктуры.<br><br>Оптимальный вариант наращивания мощностей на сервере при средней нагрузке:<br>ОЗУ: +8 ГБ для 500 пользователей<br>CPU: +4 ядра для 500 пользователей<br><br>Количество конкурирующих пользователей оценивается клиентом или путём анализа деятельности компании.<br>При включении автомасштабирования сервисов придерживайтесь лимитов и реквестов, запрашиваемых системой. |




\*При установке ELMA365 на платформу Deckhouse поддерживаемые версии операционных систем и Kubernetes смотрите в[ официальной документации](https://deckhouse.ru/products/kubernetes-platform/documentation/v1/supported_versions.html).

\*\*Необходимо наличие технической поддержки от вендора.

\*\*\*В случае использования Deckhouse на дистрибутиве Linux, отличающемся от Ubuntu или Debian, а также в режиме отсутствия доступа в интернет, требуется наличие технической поддержки вендора.

\*\*\*\*Система резервного копирования должна располагаться на независимом сервере. Объём хранилища для резервных копий рассчитывается исходя из их количества и размера.

\*\*\*\*\*Производительность и стабильность работы приложения в кластере зависит от скорости диска. Медленный диск увеличивает задержку запросов в кластере и может нарушить его стабильность. Подробнее об этом читайте в статье [«Проверка производительности диска»](disk-performance.md).

При использовании гипервизоров для корректной работы узлов Kubernetes и ELMA365 в настройках виртуальных машин требуется выделение фиксированного объёма оперативной памяти. Объём должен соответствовать системным требованиям, указанным выше.

Не рекомендуется использовать динамическое распределение памяти (Shared или «от X ГБ до Y ГБ»). Виртуальные машины с динамически выделяемой памятью работают медленнее, а гипервизор некорректно реагирует на требования ОС к памяти.

## Сервер данных

В таблице указаны требования к программному и аппаратному обеспечению для установки серверов хранения и обработки данных системы ELMA365.

### PostgreSQL

| | |
|------|------|
| **Минимальные аппаратные требования**<br>**(в расчёте на 500 пользователей)\*** | **Сервер СУБД PostgreSQL**<br><br>Хранит основные данные системы: пользователей, элементы приложений, настройки приложений, разделов, процессы, страницы, виджеты, задачи, события и другие настройки конфигурации.<br><br>СУБД: PostgreSQL v13–18<br>Процессор: x86–64, 4 vCPU и выше<br>Жёсткий диск: 100 ГБ, IOPS записи 2000 и выше<br>Оперативная память: 8 ГБ и выше<br>Сетевое подключение: LAN 1 Гбит/сек и выше<br><br>При увеличении нагрузки и количества пользователей:<br>- производится увеличение количества процессоров (ядер);<br>- производится увеличение количества оперативной памяти;<br>- производится увеличение дискового пространства для хранения данных.<br><br>Оптимальный вариант наращивания мощностей на сервере при средней нагрузке:<br>ОЗУ: +4 ГБ для 500 пользователей<br>CPU: +2 ядра для 500 пользователей<br><br>Наращивание дискового хранилища оценивается клиентом самостоятельно или по результатам анализа деятельности компании. |


### MongoDB

| | |
|------|------|
| **Минимальные аппаратные требования**<br>**(в расчёте на 500 пользователей)\*** | **Сервер СУБД MongoDB**<br><br>Хранит неструктурированные системные настройки, данные чатов и #ленты.  <br>  <br>Вы можете отключить использование MongoDB при первичной установке системы, начиная с версии 2026.2. Тогда данные будут сохраняться в PostgreSQL. Подробнее читайте в статьях [«Изменение параметров ELMA365 Standard»](change-elma365standard-parameters.md#without-mongo) и [«Изменение параметров ELMA365 Enterprise»](change-settings-enterprise.md#without-mongo).  <br>  <br>СУБД: MongoDB v3.6–8.0<br>Процессор: x86–64, 4 vCPU и выше, MongoDB 5.0+ требует использования набора инструкций AVX<br>Жёсткий диск: 50 ГБ, IOPS записи 2000 и выше<br>Оперативная память: 8 ГБ и выше<br>Сетевое подключение: LAN 1 Гбит/сек и выше<br><br>При увеличении нагрузки и количества пользователей:<br>- производится увеличение количества процессоров (ядер);<br>- производится увеличение количества оперативной памяти;<br>- производится увеличение дискового пространства для хранения данных.<br><br>Оптимальный вариант наращивания мощностей на сервере при средней нагрузке:<br>ОЗУ: +4 ГБ для 500 пользователей<br>CPU: +2 ядра для 500 пользователей<br><br>Наращивание дискового хранилища оценивается клиентом самостоятельно или по результатам анализа деятельности компании. |


### RabbitMQ

| | |
|------|------|
| **Минимальные аппаратные требования **<br>**(в расчёте на 500 пользователей)\*** | **Сервер шины событий RabbitMQ**<br><br>Используется для формирования очередей задач между сервисами, не хранит данные долговременно.<br><br>MQ: RabbitMQ v3.9.15–3.13<br>Процессор: x86–64, 4 vCPU и выше<br>Жёсткий диск: 40 ГБ, IOPS записи 2000 и выше<br>Оперативная память: 8 ГБ и выше<br>Сетевое подключение: LAN 1 Гбит/сек и выше<br><br>При увеличении нагрузки и количества пользователей:<br>- производится увеличение количества процессоров (ядер);<br>- производится увеличение количества оперативной памяти.<br><br>Оптимальный вариант наращивания мощностей на сервере при средней нагрузке:<br>ОЗУ: +4 ГБ для 500 пользователей<br>CPU: +2 ядра для 500 пользователей<br><br>Наращивание дискового хранилища оценивается клиентом самостоятельно или по результатам анализа деятельности компании. |


### Valkey или Redis

| | |
|------|------|
| **Минимальные аппаратные требования **<br>**(в расчёте на 500 пользователей)\*** | **Сервер кэширования данных Valkey или Redis**<br><br>Используется для кэширования обработанной информации в памяти, не хранит данные долговременно.<br><br>Cache: Valkey v7.2.8 и выше, Redis v5.0 и v6.2<br>Процессор: x86–64, 2 vCPU и выше<br>Жёсткий диск: 50 ГБ, IOPS записи 2000 и выше<br>Оперативная память: 4 ГБ и выше<br>Сетевое подключение: LAN 1 Гбит/сек и выше<br><br>При увеличении нагрузки и количества пользователей:<br>- производится увеличение количества процессоров (ядер);<br>- производится увеличение количества оперативной памяти.<br><br>Оптимальный вариант наращивания мощностей на сервере при средней нагрузке:<br>ОЗУ: +4 ГБ для 500 пользователей<br>CPU: +2 ядра для 500 пользователей. |


### S3

| | |
|------|------|
| **Минимальные аппаратные требования**<br>**(в расчёте на 500 пользователей)\*** | **Сервер хранилища данных S3**<br><br>Подходит любое аппаратное или программное S3 совместимое хранилище данных.<br>Рекомендуем использовать SeaweedFS, т. к. MiniIO переведён в режим ограниченной поддержки с декабря 2025 г. Подробнее читайте в [официальной информации от MinIO](https://github.com/minio/minio/commit/27742d469462e1561c776f88ca7a1f26816d69e2).<br><br>S3:<br>- SeaweedFS v4 и выше;<br>- MinIO S3 v2022.8.8 и выше.<br>Подробнее о настройке серверов S3 читайте в статьях:<br>- [«SeaweedFS»](seaweedfs.md);<br>- [«MinIO (S3)»](configure-minio.md).<br><br>Процессор: x86–64, 2 vCPU и выше<br>Жёсткий диск: 100 ГБ, IOPS записи 2000 и выше<br>Оперативная память: 2 ГБ и выше<br>Сетевое подключение: LAN 1 Гбит/сек и выше<br><br>При увеличении нагрузки на операции скачивания и генерацию файлов:<br>- производится увеличение дискового пространства;<br>- производится масштабирование с установкой дополнительных серверов.<br><br>При увеличенной нагрузке на операции скачивания и генерацию файлов:<br>ОЗУ: +2 ГБ для 1000 пользователей<br>CPU: +1 ядро для 1000 пользователей<br><br>Наращивание дискового хранилища оценивается клиентом самостоятельно или по результатам анализа деятельности компании. |




\*Система резервного копирования должна располагаться на независимом сервере. Объём хранилища для резервных копий рассчитывается исходя из их количества и размера.

## Минимальные аппаратные требования для различного числа пользователей

В таблицах приведены аппаратные требования, необходимые для корректной работы системы ELMA365 On‑Premises Enterprise Kubernetes на 500, 1 000, 2 000, 5 000 и 10 000 пользователей. Под термином **Пользователь** понимается человек или внешняя автоматизированная система, которые имеют учётную запись и право работать с ELMA365. 

Фактические требования к аппаратному обеспечению будут отличаться в зависимости от реальных сценариев использования и способа применения системы в компании. Конкретные требования определяются после загрузки конфигурации ELMA365 и проведения нагрузочного тестирования под необходимое количество пользователей и пропускную способность.

### 500 пользователей

\[OBJECT\]

| | | | |
|------|------|------|------|
| **500 пользователей** | | | 
| **Сервис** | **[vCPU](#vcpu)\*** | **RAM, GB** | **[SSD](#ssd), GB\*\*** |
| Сервер ELMA365 | 8 | 16 | 100 |
| Сервер PostgreSQL | 4 | 8 | 100 |
| Сервер MongoDB | 4 | 8 | 50 |
| Сервер RabbitMQ | 4 | 8 | 40 |
| Сервер Valkey/Redis | 2 | 4 | 50 |
| Сервер S3 | 2 | 2 | 100 |
| Сервер Haproxy | 2 | 2 | 30 |
| **Итого** | **26** | **48** | **470** |




### 1 000 пользователей

\[OBJECT\]

| | | | |
|------|------|------|------|
| **1 000 пользователей** | | | 
| **Сервис** | **[vCPU](#vcpu)\*** | **RAM, GB** | **[SSD](#ssd), GB\*\*** |
| Сервер ELMA365 | 12 | 16 | 100 |
| Сервер PostgreSQL | 6 | 12 | 100 |
| Сервер MongoDB | 4 | 8 | 50 |
| Сервер RabbitMQ | 4 | 8 | 40 |
| Сервер Valkey/Redis | 2 | 4 | 50 |
| Сервер S3 | 2 | 2 | 100 |
| Сервер Haproxy | 2 | 2 | 30 |
| **Итого** | **32** | **52** | **470** |




### 2 000 пользователей

\[OBJECT\]

| | | | |
|------|------|------|------|
| **2 000 пользователей** | | | 
| **Сервис** | **[vCPU](#vcpu)\*** | **RAM, GB** | **[SSD](#ssd), GB\*\*** |
| Сервер ELMA365 | 16 | 24 | 100 |
| Сервер PostgreSQL | 8 | 16 | 100 |
| Сервер MongoDB | 6 | 8 | 50 |
| Сервер RabbitMQ | 4 | 8 | 40 |
| Сервер Valkey/Redis | 2 | 8 | 50 |
| Сервер S3 | 2 | 4 | 100 |
| Сервер Haproxy | 2 | 2 | 30 |
| **Итого** | **40** | **70** | **470** |




### 5 000 пользователей

\[OBJECT\]

| | | | |
|------|------|------|------|
| **5 000 пользователей** | | | 
| **Сервис** | **[vCPU](#vcpu)\*** | **RAM, GB** | **[SSD](#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 |
| Сервер Valkey/Redis | 2 | 8 | 50 |
| Сервер S3 | 2 | 8 | 200 |
| Сервер Haproxy | 2 | 2 | 30 |
| **Итого** | **44** | **130** | **1320** |




### 10 000 пользователей

\[OBJECT\]

| | | | |
|------|------|------|------|
| **10 000 пользователей** | | | 
| **Сервис** | **[vCPU](#vcpu)\*** | **RAM, GB** | **[SSD](#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 |
| Сервер Valkey/Redis | 2 | 8 | 50 |
| Сервер S3 | 2 | 8 | 500 |
| Сервер Haproxy | 2 | 2 | 30 |
| **Итого** | **72** | **210** | **2070** |


**\***vCPU** **— это одно гиперпоточное ядро на физическом процессоре. Для облачных провайдеров соответствует одному vCPU или vCore.

**\*\*** Объём выделяемого пространства SSD напрямую зависит от потребности конкретной компании. Определяется индивидуально для каждого сервиса системы в зависимости от того, какой объём данных планируется хранить.

При выходе обновлений системы ELMA365 On-Premises мы производим нагрузочное тестирование системы в условиях, максимально приближенных к реальным. Ознакомиться с результатами тестирования вы можете в [ELMA365 Community](https://community.elma365.com/ru/forums/210/).

Для расчета системных требований для вашей конфигурации, а также для получения информации по аппаратным требованиям для 10 000+ пользователей, обратитесь к менеджерам отдела продаж ELMA365: +**7 (3412) 93‑66‑93**, **inbox@elma365.com**.

## Отказоустойчивая архитектура серверов

Для построения отказоустойчивой архитектуры и оптимизации распределения нагрузки на сервера системы существует возможность реализовать кластер из нескольких серверов. Сервер приложений и сервера хранения и обработки данных масштабируются независимо. 

## Кластер ELMA365

Несколько серверов в кластере распределяют между собой нагрузку на приложение и позволяют дублировать и масштабировать внутренние сервисы. Таким образом достигается отказоустойчивое решение, способное выдержать падение одного сервера. Прозрачное взаимодействие между серверами достигается с помощью [готового решения](https://kubernetes.io/).

Минимальное количество серверов для организации кластера: **три сервера**.

## Кластер PostgreSQL

Сервера объединяются в кластер Master-Replica(s). Один сервер становится главным и отправляет свои данные на остальные сервера. Более подробно о настройке и особенностях работы кластера можно почитать в [официальной документации PostgreSQL](https://www.postgresql.org/docs/15/high-availability.html).

Минимальное количество серверов для организации кластера: **два сервера**.

## Кластер MongoDB

Несколько серверов прозрачно объединяются в отказоустойчивый кластер перераспределяя и дублируя данные между собой. Более подробно смотрите в [официальной документации MongoDB](https://docs.mongodb.com/v3.6/reference/glossary/#term-high-availability).

Минимальное количество серверов для организации кластера: **три сервера**.

## Кластер RabbitMQ

Несколько серверов соединяются в кластер и распределяют между собой работу по обработке и доставке сообщений. Более подробно смотрите в [официальной документации RabbitMQ](https://www.rabbitmq.com/clustering.html).

Минимальное количество серверов для организации кластера: **три сервера**.

## Кластер Valkey или Redis

Несколько серверов соединяются в кластер Master-Replicas. Один сервер становится главным и отправляет свои данные на остальные сервера. Более подробно смотрите в [официальной документации Valkey](https://valkey.io/topics/sentinel/) и в [официальной документации Redis](https://redis.io/topics/sentinel).

Минимальное количество серверов для организации кластера: **три сервера**.

## Кластер MinIO S3

Несколько серверов соединяются в отказоустойчивый кластер, перераспределяя и дублируя данные между собой. Более подробно смотрите в [официальной документации MinIO](https://docs.min.io/docs/distributed-minio-quickstart-guide.html).

Минимальное количество серверов для организации кластера: **четыре сервера**.