Пример кластерной конфигурации
В кластерной отказоустойчивой конфигурации каждая критическая роль реплицируется на разных виртуальных серверах. Разные роли могут быть объединены на одном виртуальном сервере. Архитектурных ограничений по объединению ролей нет. Виртуальные серверы разносятся по разным физическим серверам или гипервизорам.
Если один из серверов роли прекратил свою работу, общая распределенная роль продолжит работу сервиса на других серверах, и система сохранит свою работоспособность в полном объеме. Если все сервера роли прекратят работу, то система потеряет часть функциональности или станет полностью недоступна.
В данном разделе приведены рекомендуемые требования для развертывания системы в режиме кластера со следующим профилем эксплуатации:
- всего пользователей — 5000;
- количество одновременно активных пользователей — 2000;
- количество документов, редактируемых одновременно — 126.
Пример расчета аппаратных требований для отказоустойчивой установки:
| Наименование роли* | Количество серверов | CPU, vCPU | RAM, Гбайт | SSD, Гбайт | HDD, Гбайт |
|---|---|---|---|---|---|
| operator | 1 | 4 | 8 | 0 | 50 |
| LB | 2 | 2 | 4 | 50 | 0 |
| core+etcd | 2 | 8 | 18 | 100 | 0 |
| infra | 1 | 4 | 16 | 240 | 0 |
| mq+imc+etcd | 3 | 4 | 8 | 50 | 0 |
| pgs | 3 | 8 | 12 | 0 | 544 |
| storage | 3 | 4 | 12 | 0 | 1510 |
* — описания ролей представлены в разделе Дополнительная информация
При распределении ролей для кластерной отказоустойчивой конфигурации необходимо учитывать следующие требования:
- сервер operator не рекомендуется устанавливать на одном виртуальном сервере с приложением, но он может быть выключен после установки;
- для кластерных ролей
etcd,mq,imcнеобходимо использовать минимум 3 узла, дляetcdрекомендуется использовать 5 узлов (для этого рольetcdразмещается на сервере ролиcore); - роли
cvm/cu-poolиdcm/du-poolв такой конфигурации объединены внутри роли core+etcd; - роль LB — внешний балансировщик.
Минимальные требования для кластерной установки
| Параметр | Система редактирования и совместной работы | Система хранения данных |
|---|---|---|
| Процессор | x86-x64 поколения Sandy Bridge или выше (Intel Xeon E5 или выше) | x86-x64 поколения Sandy Bridge или выше (Intel Xeon E5 или выше) |
| Количество виртуальных машин | 6 | 3 |
| Количество ядер CPU | 42 vCPUs | 36 vCPUs |
| Оперативная память (RAM) | 100 Гбайт | 84 Гбайт |
| Скорость сетевой подсистемы | 1 Гбит/с и выше | 1 Гбит/с и выше |
| Объем жесткого диска | 0,44 Тбайт SSD IOPS 1000/500 | 1,31 Тбайт HDD* |
* Без учета квоты пользователя.
Сброс данных на диск через fsync должен укладываться в 10 мс.
Для нагруженного кластера рекомендуются NVMe диски.
Примеры файла inventory для Системы редактирования и совместной работы представлены и Системы хранения данных представлены в разделе Дополнительная информация.