Кластеры
Раздел меню Обслуживание → Кластеры содержит инструменты управления кластерами в Платформе.
При первой авторизации пользователя система предлагает создать кластер и узел по умолчанию. При подтверждении пользователя система создает кластер, сервер и сервис обработки процессов. События по созданию и запуску фиксируются в журнале изменений системы.
Имя кластера, имя и наименование сервера наследуются от имени сервера, на котором установлена и запущена Платформа, указанного в операционной системе. В качестве адреса устанавливается ip-адрес 127.0.0.1.
Примечание
При необходимости добавить в кластер дополнительный сервер потребуется сменить адрес 127.0.0.1 на IP-адрес сервера из настроек сетевого подключения, либо на имя компьютера сервера, которое должно разрешаться в корректный IP-адрес данного сервера на компьютерах локальной подсети.
Настройка кластера
При отсутствии кластера в Платформе доступно создание кластера вручную.
Для создания кластера:
В ЦН перейдите в раздел Обслуживание → Кластеры.
Нажмите на кнопку +.
В рабочей области страницы отобразится интерфейс кластера, содержащий вкладки: Основные, Группы серверов, Производительность, Логирование и сбор событий.
На вкладке Основные заполните следующие поля:
Название: произвольное название кластера, обязательно для заполнения.
Имя: уникальное имя кластера, необязательно для заполнения.
Комментарий: описание кластера, необязательно для заполнения, поддерживается многострочный ввод.
На вкладке Производительность заполните следующие поля:
Взаимодействие в кластере
Количество потоков передачи данных между серверами: сколько одновременных потоков может использоваться для обмена данными между серверами кластера.
Максимальное количество сообщений в очереди для модуля процессов на своем сервере: до какого объема сообщений модуль процессов будет копить их у себя, прежде чем “переливать” нагрузку.
Процент сообщений в очереди для модуля процессов на своем сервере, при повышении которого передавать выполнение другим серверам: порог, после которого очередь на текущем сервере считается “переполненной”, и задачи отправляются на другие сервера. Чем ниже показатель, тем раньше начнет перераспределяться.
Балансировка нагрузки при обработке сообщений: если включено, система автоматически распределяет задачи по серверам, чтобы не перегружать один.
Выполнение процессов
Количество потоков выполнения процессов: сколько процессов может выполняться одновременно (параллельно).
Максимальное количество спящих процессов: сколько процессов можно “притормозить” и оставить в спящем состоянии, чтобы не выполнять сразу.
Максимальный объем спящих процессов, Мб: ограничение по объему памяти для спящих процессов.
Максимальный объем очереди процессов к обработке, Мб: максимальный размер очереди процессов, которые уже взяты в работу.
Минимальное время ожидания ответа до помещения процесса в очередь спящих, мс: если процесс долго ждет ответа, после этого времени он отправляется в “спящий” режим.
Максимальный процент количества ожидающих процессов от заданного ограничения на объем спящих процессов: ограничение доли “ожидающих” процессов от лимита для спящих. При превышении новые процессы уже не будут переводиться в спящие.
Максимальное время ожидания в шагах, поддерживающие ожидание, минут: если шаг процесса поддерживает ожидание, то не дольше указанного времени.
Минимальное количество сообщений, забираемых из очереди на один поток обработки: минимальный объем сообщений, который один поток берет за один проход.
На вкладке Логирование и сбор событий заполните следующие поля:
Параметры сбора и хранения данных журнала
Уровень логирования для оперативного журнала: установите необходимый уровень логирования журнала.
Уровень логирования журнала для хранения: установите необходимый уровень логирования журнала.
Дополнительные разделы журнала: установите дополнительный раздел журнала. Запись логов указанного раздела будет происходить без ограничения по уровню логирования.
Параметры сбора и хранения событий
Сохранять в формате Datareon (saveAsBinFiles): при активном флаге события сохраняются в бинарном формате. Формат необходим для работы Сервиса аналитики. По умолчанию флаг активен.
Сохранять в текстовом формате (saveAsTextFiles): при активном флаге события сохраняются в текстовых файлах. По умолчанию флаг не установлен.
Внимание
Допускается включение обоих форматов (и бинарный, и текстовый) одновременно. Один из параметров Сохранять в формате Datareon или Сохранять в текстовом формате должен быть активен.
Уровень логирования событий для оперативного журнала: установите необходимый уровень логирования журнала.
Уровень логирования событий для хранения: установите необходимый уровень логирования.
Параметры хранения файлов в формате Datareon
Сохранять события с телами сообщений (saveBodies): при активном флаге тело сообщения сохраняется в событиях. При умолчанию флаг не установлен. Включение параметра увеличивает объем хранимых данных.
Максимальный размер тела сообщения для хранения (maxBodySizeBytes): максимальный размер тела сообщения, сохраняемого в событии (в байтах). Параметр используется только при активном флаге Сохранять события с телами сообщений.
Параметры хранения текстовых файлов
Длительность хранения: определяет срок хранения текстовых файлов журнала и событий, указываются дни.
Максимальный размер каталога: максимально допустимый размер каталога с текстовыми файлами журнала и событий, указываются мб. При достижении указанного размера выполняется очистка старых файлов.
Длительность хранения распакованных файлов: определяет срок хранения распакованных текстовых файлов (после автоматической распаковки архивов), указываются дни. По истечении срока файлы удаляются.
Максимальный размер распакованных файлов: максимальный суммарный размер распакованных текстовых файлов, указываются мб. При превышении значения выполняется удаление наиболее старых файлов.
Максимальный размер каталога для временных файлов: максимальный размер каталога, используемого для хранения временных файлов при работе с журналами и событиями, указываются мб.
Длительность хранения временных файлов: определяет, как долго временные файлы хранятся до автоматического удаления (в минутах).
Нажмите на кнопку Сохранить изменения. Введенные данные будут сохранены, и между кнопками появится кнопка Обновить, которую можно будет использовать для обновления данных:
Перейдите в режим редактора конфигурации, используя переключатель Перейти в режим редактора конфигурации.
Откроется окно редактора конфигурации, содержащее начальную конфигурацию.
Внесите необходимые изменения в конфигурацию.
Нажмите на кнопку Сохранить изменения для сохранения изменений.
Нажмите на кнопку Применить конфигурацию.
Настройки кластера определяют ключевые параметры работы систем.
Таблица параметров конфигурации кластера:
Параметр
Возможность уточнения
Описание
coordinators
нет
Массив приоритетных координаторов для кластера, см. раздел Отказоусточивость.
heartbeatPeriod
нет
Период опроса машин координатором (в мс.).
failThreshold
нет
Максимальное количество пропущенных heartbeat-сообщений, после которых узел считается недоступным.
faultTolerance
нет
Уровень отказоустойчивости, т.е. количество реплик, на которых будет создаваться копия данных узлам.
LocalNodeApiPort
нет
Порт для работы с очередями кластера.
apiPort
нет
Порт API кластера.
snmpPort
нет
Порт для сборки счетчиков SNMP с узлов.
counterSettings
нет
Настройки сбора счетчиков узлов и модулей в ЦН.
useBalancing
в настройках модуля процессов
Возможность включить балансировку на модулях процессов, см. раздел Балансировка.
processParams
в настройках модуля процессов
Базовые настройки балансировщика для всех модулей процессов, см. раздел Балансировка.
commonParams
в настройках модуля процессов
Максимальный объем потребляемой памяти модулями процессов, см. раздел Балансировка.
nodeParams
в настройках узла
Настройки перенаправления сообщений, см. раздел Перенаправление процессов с перегруженного узла.
globalDiagnosticParams
в настройках узла или модуля
Настройки диагностики, в том числе уровень логирования, см. раздел Цепочка событий и Очередь.
cacheSettings
нет
Настройки кеширования.
entityId
нет
GUID кластера, совпадает с clusterId.
name
нет
Имя кластера.
version
нет
Номер версии текущей конфигурации кластера.
tagsCollection
нет
Теги кластера.
systemRequestsPort
нет
Порт узла для отправки параметров адаптеров 1С.
queueParams
нет
Настройки хранилища очередей.
messageProcessingParams
нет
Настройки количества откладывания сообщения.
replicationSettings
нет
Настройки репликации.
resolveList
нет
Список сопоставления ip-адресов серверов кластера с именами.
logStorageParams
нет
Настройки логирования на диск, см. раздел Логирование на диск.
eventsStorageParams
да
Параметры сбора и хранения событий Сервиса для сбора событий для Сервиса аналитики.
useSystemUDPSender
нет
updateTimeout
нет
Настройка периода рассылки состояния координатора серверам.
largeObjectQueueParams
нет
Настройки параметров очереди больших сообщений.
nodeGroupCollection
нет
Настройка Группы серверов.
OtherMachineSenderThreadsCount
нет
Количество потоков при передаче данных между серверами кластера. Может принимать значения от 1 до 12. Значение по умолчанию - 8.
executeRequestTimeoutMs
нет
Время ожидания ответа от процесса узла, направленного процессу узла-координатора при выполнении запроса получения записей журнала или событий ЦМ. Единица измерения - миллисекунды. Значение по умолчанию - 600000.
useOldDateConverter
нет
Параметр блока deprecatedParams. Флаг, управляющий способом отображения дат: при true время показывается без перевода в локальный часовой пояс, при false — с переводом. По умолчанию установлен флаг false.
useOldServiceUI
нет
Параметр блока deprecatedParams. При true в ЦН видны настройки меню Формы интерфейса, Настройка меню и сервиса Веб-интерфейс. По умолчанию установлен флаг false. Если Веб-интерфейс был ранее создан, то при значении false он отображается в списке сервисов.
Примечание
Некоторые параметры могут быть уточнены в конфигурации конкретного узла, модуля или системы. Если уточнения нет, то для работы берутся значения, заполненные в кластере. При возникновении ошибки Сработал лимит на размер директории Temp увеличьте значение tempFolderMaxSizeMb параметра logStorageParams, сохраните изменения и примените конфигурацию.
Внимание
В версии 3.1.2.1 изменение параметра useOldDateConverter доступно только для Типов данных и Внешних типов данных, для Категорий в Версии 3.1.2.1 не применимо.
Группы серверов
По умолчанию все серверы, создаваемые в кластере (не в nodeGroups), добавляются в группу default, в рамках которой осуществляется распределение сервисов и систем.
Внимание
Если система или сервис указаны напрямую в конфигурации конкретного сервера, они будут запущены независимо от принадлежности к группе.
При сбое серверов внутри группы сервисы остаются внутри нее — перераспределение не происходит за пределы группы. Это обеспечивает управляемую локализацию нагрузки в рамках одной группы.
При назначении сервера в пользовательскую группу он запускает только те сервисы и системы, которые также привязаны к этой группе.
Внимание
В случае, если все серверы кластера входят в пользовательские группы, но ни один из них не содержит назначенных сервисов или систем, то системы и сервисы не будут запущены. Соответствующее сообщение записывается в журнал сервера.
Распределение сообщений между модулями процессов осуществляется только в пределах соответствующей пользовательской группы, что особенно важно при высокой нагрузке.
В конфигурации кластера поле nodeGroupCollection содержит массив nodeGroups - групп серверов.
"nodeGroupCollection": {
"$type": "DT.ClusterConfiguration.NodeGroupCollection, DT_Core",
"nodeGroups": [
{
"nodeGroupId": "ee85a5bb-399b-40b2-8ec8-5157d8cad99b",
"nodeGroupName": "1",
"nodeIds": [
"5d77e4f6-623a-4e24-aa20-fe9b688f2474"
],
"systemsAndModulesIds": [
"6a9ae87c-a5a6-4d76-8c86-6cd4088ec6be"
]
},
{
"nodeGroupId": "92f96ec3-0a34-47f8-983c-dca51b01de6d",
"nodeGroupName": "2",
"nodeIds": [
"d67bcf81-ab4d-491c-bdfc-cec32a642386",
"fce58a75-dcdc-4b18-bbbf-3d1a25f2cf8e"
],
"systemsAndModulesIds": [
"5a14fdfb-d502-4939-889e-cd4d3c651ad7"
]
}
],
"distributeWorkloadToAllNodes": false
}
В примере:
2 группы серверов (1 и 2) - nodeGroupName, nodeGroupId;
в 1 группе: 1 сервер (nodeIds) и 1 система или сервис (systemsAndModulesIds);
во 2 группе: 2 сервера (nodeIds) и 1 система или сервис (systemsAndModulesIds)
Внимание
Все нераспределенные сервисы и системы по умолчанию запускаются на серверах из группы по умолчанию (default). Сервис или система может быть привязана только к одной группе серверов и работает исключительно внутри этой группы. Если есть активные, но нераспределенные сервисы или системы, а в группе default отсутствуют включенные серверы, выводится сообщение об ошибке с требованием вручную распределить сервисы по группам.
Внимание
Если хотя бы одна включенная система или сервис не привязана к какому-либо серверу (через группы или в конфигурации сервера), то на домашней странице ЦМ будет ошибка Проблема распределения.
У координатора будет соответствующая ошибка:
В группе {НазваниеГруппы} нет рабочих серверов. Останутся без распределения и не запустятся: [id системы, имя системы], [id сервиса, имя сервиса], ...
Настройка группы серверов
Для группирования серверов необходимо:
перейти: ЦН → Обслуживание → Кластеры → открыть требуемый кластер двойным щелчком
в Кластере выбрать вкладку Группы серверов
Установите флаг Распределять при балансировке нагрузки процессы между группами, если необходимо перераспределять нагрузку на все узлы. Если флаг не установлен, перераспределение процессов будет только в своей группе.
для добавления Группы нажать +
новая группа будет добавлена в конце списка.
Группе будет присвоено числовое имя последовательно, начиная с 1. Поддерживается редактирование имени группы при двойном щелчке по требуемой группе.
для настройки необходимо выделить соответствующую группу
При необходимости группу можно удалить, нажав на иконку Корзины.
Примечание
Если ранее созданная группа была удалена, ее порядковый номер становится доступным для повторного использования. Таким образом, при создании новой группы используется первый «пропущенный» (свободный) номер, чтобы поддерживать непрерывность нумерации.
выбрать для группы Серверы, Системы и Сервисы
Где:
Серверы - перечень Серверов, настроенных в ЦН
Системы - перечень Внешних систем (Интеграция), настроенных в ЦН
Сервисы - перечень Сервисов, настроенных в ЦН
Доступен мультиселект, перечень Серверов, Систем и Сервисов редактируется - можно удалить и / или добавить в группу.
Нажмите на кнопку Сохранить изменения.
Нажмите на кнопку Применить конфигурацию.
при необходимости повторить п.3 - 8.
Управление кластером и диагностика
Этот ресурс позволяет получить информацию о конфигурации узлов, сервисов и систем кластера, работать с их очередями и архивом сообщений. Также в ресурсе доступны диагностические запросы. Для работы с узлами, сервисами и системами доступно получение глобальной, текущей и локальной конфигурации, а также изменение локальной конфигурации.
Есть возможность включить подробное логирование по некоторым аспектам работы Платформы. Для этого необходимо добавить функциональность в массив конфигурации кластера features. Метод для получения списка доступных функциональностей: GET /api/info/features.
Примечание
Если вы используете недоверенный SSL-сертификат, при первом подключении в браузере нажмите на кнопку Дополнительные и перейдите по ссылке Перейти на <ip-адрес>.
При входе на сайт диагностики по ip машины, не являющейся координатором, происходит переадресация на сервер-координатор кластера.
Настройка кластера из нескольких серверов
Для добавления серверов в кластер:
Произведите установку идентичных версий Платформы на все устройства, на которых планируется разместить серверы кластера.
Внимание
ЦН должен быть открыт только на сервере-координаторе. После установки Платформы на сервер, который должен быть добавлен в кластер, открывать ЦН не следует, так как при первом открытии будет создан новый кластер, и сервер нельзя будет включить в существующий кластер.
В ЦН перейдите в раздел Серверы.
В рабочей области раздела нажмите на кнопку + (Добавить).
На странице добавления сервера укажите следующие данные:
Установите флаг Включен.
Нажмите на кнопку Сохранить изменения.
Нажмите на кнопку Применить конфигурацию.
Внимание
Один из серверов кластера всегда будет являться координатором, управляющим работой других серверов кластера. Сервер-координатор выбирается в автоматическом режиме. ЦМ всегда публикуется по адресу сервера-координатора. После добавления сервера в кластер, сервер-координатор может измениться, при этом ЦМ может публиковаться по адресам как одного, так и другого сервера, в зависимости от выбранного сервера-координатора. Для открытия ЦМ рекомендуется использовать кнопку Центр мониторинга и администрирования в разделе :
При успешном подключении сервера к кластеру он будет отображен в рабочей области раздела ЦМ Серверы с индикатором зеленого цвета.
Повторите шаги 2-7 для последовательной установки других серверов.
Внимание
Системное время между серверами кластера должно быть синхронизировано. В противном случае последовательность при построении цепочек в ЦМ будет некорректной.
Вывод сервера из кластера
Для вывода сервера из кластера:
В ЦН в кластере удалить сервер (открепить от кластера).
Нажмите на кнопку Сохранить изменения.
Нажмите на кнопку Применить конфигурацию.
Вручную почистите файлы Платформы на этом сервере (кэш, архив, логи).
На этом сервере заново установить Платформу - запустить установщик. Сохранить, применить конфигурацию.
Таким образом авторизоваться в независимом от кластера ЦН.
Управление сервером с неизвестного ЦН
Если сервер получит запрос от ЦН, адрес которого не находится в списке доверенных, сервер не примет запрос и в ответ отправит сообщение с ошибкой. В ЦН будет отображена следующая ошибка: В списке зарегистрированных Центров настроек на сервере отсутствует адрес сервера Центра настроек. Чтобы добавить адрес ЦН в список доверенных на сервере-координаторе, выполните следующую команду на машине сервера-координатора:
Для Windows:
DatareonPlatformService.exe SetCS <ip adress>
Для Linux:
sudo /usr/bin/datareon/platform/DatareonPlatformService setCS <ip adress>
После этого потребуется повторно применить конфигурацию в ЦН.


