Почему не подключается сервер лицензирования в кластере 1С и как исправить ошибку IDS_LICENSE_DATABASECOPY

Системный администратор 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

При развертывании тестового или дополнительного кластера 1С системные администраторы часто сталкиваются с ситуацией, когда выделенный сервер лицензирования отказывается переходить в активное состояние. Несмотря на правильную установку софт-лицензий и видимость сервера в консоли администрирования, рабочий процесс остается неактивным, а пользователи не могут получить лицензии. В этой статье мы разберем по шагам, как диагностировать проблему с помощью технологического журнала (ТЖ) и устранить скрытые причины конфликта лицензий уровней ПРОФ и КОРП.

Анализ сетевой доступности и логов CONN

Первым делом проанализируем состояние сетевого взаимодействия между компонентами кластера. Если сервер лицензирования добавлен в консоль, но не работает, необходимо настроить сбор событий CONN в технологическом журнале. Это позволит увидеть, проходят ли пакеты ping между менеджером кластера и агентом сервера лицензирования.

Рассмотрим пример лога, указывающего на проблемы со связью:


22:34.596000-0,CONN,0,process=ragent,OSThread=7056,Txt='Ping direction statistics: address=10.XX.X.197:1540,
pingTimeout=5000,pingPeriod=1000,period=10062,packetsSent=8,avgResponseTime=0,maxResponseTime=0,
packetsTimedOut=4,packetsLost=0,packetsLostAndFound=0'

Обратим внимание на параметр packetsTimedOut=4. Это явный признак того, что сетевой уровень работает нестабильно. В контексте 1С это может означать следующее:

  1. Блокировка динамических портов: Несмотря на то, что основной порт 1540 открыт, кластер использует диапазон портов 1560-1591 для передачи данных. Необходимо убедиться, что весь этот диапазон разрешен в Firewall.
  2. Проблемы разрешения имен (DNS): Проанализируем строку addrBelongsToThisComputer2, address=10.XX.X.197, result=false. Платформа проверяет, принадлежит ли IP-адрес текущему узлу. Мы рекомендуем прописывать адрес сервера лицензирования в консоли точно так же, как он определен в настройках самой службы ragent (через FQDN или IP).

Диагностика ошибки IDS_LICENSE_DATABASECOPY и уровня лицензий

Если сетевая связность подтверждена, но сервер лицензирования все равно выдает ошибку, перейдем к анализу событий CALL и LIC. Часто в логах встречается специфическое исключение IDS_LICENSE_DATABASECOPY.

Проанализируем текст ошибки:

"Использование этой функции возможно только при наличии лицензии на платформу уровня КОРП или лицензии на запуск клиентских приложений системы 1С:Аналитика."

Выясним причину появления этого сообщения, даже если вы не используете "1С:Аналитику". Данная ошибка возникает, когда в информационной базе активирован механизм "Копии баз данных" (Data Acceleration). Этот функционал позволяет перенаправлять тяжелые запросы на чтение во внешние источники. Поскольку этот механизм является частью расширенного функционала КОРП, сервер лицензирования уровня ПРОФ блокирует работу процесса, пытающегося инициализировать данный модуль.

Для решения этой проблемы выполним следующие действия:

  1. Зайдем в консоль администрирования кластера.
  2. Проверим раздел "Копии баз данных" для каждой информационной базы.
  3. Если там созданы какие-либо объекты, их необходимо удалить, если вы планируете работать на лицензиях ПРОФ.

Настройка требований назначения функциональности

Для того чтобы сервер лицензирования работал корректно в составе распределенного кластера, мы должны жестко задать правила его работы. Рассмотрим, как правильно настроить "Требования назначения функциональности".

Выполним настройку по шагам:

  1. На основном сервере кластера создадим требование: Тип объекта — "Сервер лицензирования", Тип требования — "Не назначать". Это гарантирует, что менеджер кластера не будет пытаться искать лицензии локально, если там нет ключей.
  2. На выделенном сервере лицензирования создадим требование: Тип объекта — "Сервер лицензирования", Тип требования — "Назначать", Приоритет — "Высокий" (или "Обязательное").
  3. Применим требования назначения. Если после этого статус рабочего процесса не изменился, попробуем перезапустить службу 1C:Enterprise 8.3 Server Agent.

Очистка кэша кластера и переподключение сервера

Если сервер лицензирования ранее входил в другой кластер, в файлах конфигурации могли сохраниться старые идентификаторы (UID), которые мешают корректной регистрации. Проанализируем ситуацию, когда удаление и повторное добавление сервера в консоли не помогают.

В этом случае выполним "глубокую" очистку:

  1. Остановим службы 1С на всех серверах тестового кластера.
  2. Перейдем в каталог данных сервера (по умолчанию C:\Program Files\1cv8\srvinfo).
  3. Найдем папку реестра кластера (например, reg_1541).
  4. Внутри этой папки найдем каталог snaccw. Это кэш конфигурации рабочих процессов. Полностью очистим его содержимое.
  5. Проверим файл srvribrg.lst. Если в нем остались упоминания старых имен серверов или некорректные порты, их лучше вычистить (предварительно сделав бэкап файла).
  6. Запустим службы и заново добавим сервер лицензирования.

Работа с портами при использовании нескольких кластеров

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

Посмотрим на пример правильной настройки портов для подключения к разным кластерам:

Если же вы используете одну службу ragent для выдачи лицензий разным кластерам, убедитесь, что в настройках каждого кластера сервер лицензирования указан идентично, и между ними нет конфликта IP-адресов или IPv6-приоритетов. Как показывает практика, отключение протокола IPv6 в свойствах сетевого адаптера на сервере лицензирования часто решает проблему "невидимости" лицензий.

Резюме действий по исправлению

Подведем итог. Если сервер лицензирования не подключается:

  1. Проверяем ТЖ на предмет packetsTimedOut (сеть) и IDS_LICENSE_DATABASECOPY (лицензии).
  2. Убеждаемся, что в базах не включены "Копии баз данных", требующие КОРП-лицензию.
  3. Настраиваем требования назначения функциональности ("Назначать" на сервере лицензий, "Не назначать" на остальных).
  4. Очищаем кэш snaccw и перезапускаем службы.
  5. Отключаем IPv6, если наблюдаются странности в разрешении адресов.

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

← На главную