Проблема ClusterConfigService при регистрации рабочего сервера 1С

Дата: 2026-01-25
Версия 1С: 8.3.x
Ошибка: «Не найдено ни одного сервера с размещенным сервисом ServiceName = ClusterConfigService»

В чём проблема

Для операций в кластере (создание ИБ, rac server insert и т.д.) платформа 1С использует сервис ClusterConfigService. Он размещается на одном из рабочих серверов кластера.

Возникает кажущийся замкнутый круг:

  • чтобы зарегистрировать рабочий сервер, нужен ClusterConfigService;
  • ClusterConfigService работает на рабочем сервере;
  • значит, для первой регистрации рабочего сервера сервиса ещё «не существует».

На самом деле разрыв в том, как создаётся первый рабочий сервер.

Как устроено правильно

1. Первый рабочий сервер — только через создание кластера

Первый рабочий сервер не регистрируется через rac server insert. Он создаётся вместе с кластером при выполнении:

rac cluster insert --host=localhost --port=1541 --name=cluster1 localhost:1545

При этом:

  • создаётся кластер;
  • автоматически регистрируется первый рабочий сервер на этой же машине;
  • на нём автоматически размещается ClusterConfigService.

То есть «курицы и яйца» нет: кластер и первый рабочий сервер (с ClusterConfigService) появляются одной командой.

2. Второй и последующие рабочие серверы — через rac server insert

Когда в кластере уже есть хотя бы один рабочий сервер с ClusterConfigService, дополнительные серверы добавляются обычной регистрацией:

rac server insert \
  --agent-host=<хост_нового_сервера> \
  --agent-port=1540 \
  --port-range=1560:1591 \
  --cluster=<UUID_кластера> \
  <RAS_адрес>

ClusterConfigService уже есть на первом сервере, поэтому rac server insert выполняется без ошибки.

Когда возникает ошибка ClusterConfigService

Ошибка появляется, если:

  1. Кластер создан без первого рабочего сервера
    Например, кластер как-то создали «вручную» или через нестандартную схему, и при этом не был зарегистрирован первый worker. В результате в кластере нет ни одного рабочего сервера → нет ClusterConfigService.

  2. Пытаемся добавить первый рабочий сервер через rac server insert
    Команда rac server insert всегда требует ClusterConfigService. Если в кластере ещё ни одного рабочего сервера нет, операция обречена на ошибку.

  3. Первый рабочий сервер «потерян»
    Кластер был создан правильно, но из-за сбоя, очистки srvinfo/reg_*, смены портов и т.п. кластер «забыл» про единственный рабочий сервер. В итоге снова нет ни одного worker → нет ClusterConfigService.

Как решить

Вариант А: Нормальная первичная настройка (рекомендуется)

Не используйте rac server insert для первого рабочего сервера. Всегда создавайте кластер на той машине, где будет главный рабочий сервер:

# На будущем рабочем сервере (или в его контейнере)
rac cluster insert --host=localhost --port=1541 --name=cluster1 localhost:1545

После этого:

  • кластер создан;
  • первый рабочий сервер зарегистрирован;
  • ClusterConfigService размещён.

Дальше можно создавать ИБ и при необходимости добавлять другие рабочие серверы через rac server insert.

Вариант Б: Кластер уже есть, но без рабочих серверов (восстановление)

Если кластер есть, а рабочих серверов нет (типичная ситуация после экспериментов или сбоев):

  1. Остановить сервисы 1С на машине, которая будет главным рабочим сервером.
  2. Очистить данные кластера (пути для Linux):
  3. ~usr1cv8/.1cv8/1C/1cv8/srvinfo/ — можно очистить или удалить содержимое;
  4. при необходимости — reg_1541 и т.п. по документации вашей версии.
  5. Запустить сервисы (ragent, RAS и т.д.).
  6. Заново создать кластер на этой же машине:
    bash rac cluster insert --host=localhost --port=1541 --name=cluster1 localhost:1545
  7. Убедиться, что появился первый рабочий сервер и ClusterConfigService:
    bash rac server list --cluster=<UUID> localhost:1545

После этого кластер снова в согласованном состоянии: есть первый worker и ClusterConfigService.

Вариант Б-2: Восстановление из бэкапа reg_1541

Если есть бэкап reg_1541 с уже настроенным кластером и рабочим сервером (в т.ч. «Центральный сервер»):

  1. Остановить сервисы 1С.
  2. Восстановить reg_1541 из бэкапа (предварительно сделав копию текущего).
  3. Запустить сервисы, дождаться выхода ragent на порт 1540.
  4. Запустить scripts/register_1c_infobase.sh: скрипт перезапустит ragent, дождётся появления worker’а и зарегистрирует ИБ. В таком сценарии пересоздавать кластер через rac cluster insert не требуется.

Вариант В: Проверка портов и конфигурации

Ошибка ClusterConfigService иногда связана с неверными портами:

  • 1540 — ragent (агент);
  • 1541 — rmngr (менеджер кластера);
  • 1545 — RAS.

При создании кластера в rac cluster insert для --port должен указываться порт менеджера кластера (как в вашей схеме — 1541), а не ragent. Убедитесь, что в конфигурации сервисов и в командах используются правильные порты.

Вариант Г: Консоль администрирования 1С (GUI)

Если rac-команды не помогают (например, после миграции или нестандартной настройки), можно:

  • подключиться к кластеру через консоль администрирования 1С;
  • проверить наличие рабочего сервера и сервисов;
  • при необходимости удалить старый кластер и создать новый уже через GUI, по сути повторив «Вариант А» вручную.

Кратко

Ситуация Действие
Ещё нет кластера rac cluster insert на будущем главном рабочем сервере → первый worker и ClusterConfigService создаются автоматически
Кластер есть, worker нет Восстановление: очистка srvinfo/reg_*, перезапуск, повторное rac cluster insert на этой же машине
Добавляем второй/третий worker rac server insert — к этому моменту ClusterConfigService уже есть на первом сервере
Первый worker через rac server insert Так делать нельзя; это и приводит к ошибке ClusterConfigService

Связанные документы