При модернизации серверной инфраструктуры системные администраторы часто разделяют роли: служба «1С:Предприятия» остается на одном хосте, а сервер баз данных (MS SQL Server, PostgreSQL и др.) переносится на отдельный физический или виртуальный сервер. Однако при добавлении новой версии платформы (например, переходе на линейку 8.3) и создании информационной базы на новом SQL-сервере пользователи могут столкнуться с ошибкой: «Не обнаружена лицензия для использования программы (Не обнаружена лицензия на сервер предприятия)», хотя ранее на этом же хосте базы версий 8.1 и 8.2 работали корректно.
Проанализируем причины возникновения этой проблемы, разберем правила лицензирования клиент-серверного варианта «1С:Предприятия» и рассмотрим пошаговые способы устранения неполадки.
Основная и самая распространенная причина такой ошибки — различие между разрядностью установленной службы ragent и разрядностью имеющейся серверной лицензии (аппаратного USB-ключа HASP или программного пин-кода).
Выясним правила лицензирования по разрядности:
Если серверная лицензия приобреталась ранее для версий 8.1/8.2 в 32-разрядном исполнении, то при установке платформы 8.3 x64 служба не увидит существующий x86-ключ.
Разберем по шагам, как исправить ситуацию при наличии лицензии на 32-разрядный сервер:
services.msc.Рассмотрим вопрос лицензирования архитектуры СУБД: физическое или виртуальное расположение SQL-сервера не требует покупки дополнительной лицензии на сервер «1С:Предприятия». Лицензия 1С требуется только тому хосту, на котором запущена служба агента кластера ragent.
На одном сервере 1С под одной лицензией (соответствующей разрядности) можно одновременно запускать разные кластеры и службы разных версий платформ (8.1, 8.2, 8.3), подключающиеся к любым доступным в сети экземплярам MS SQL Server.
Если на одном физическом хосте требуется сохранить старые базы (например, на платформах 8.1 и 8.2) и добавить кластер платформы 8.3, необходимо развести службы по сетевым портам, так как по умолчанию все версии претендуют на одни и те же порты (главный порт агента — 1540, менеджер кластера — 1541, диапазон рабочих процессов — 1560-1591).
Для корректного сосуществования служб выполним следующие настройки:
/portoffset) либо явно зададим свободные порты через параметры командной строки при создании службы:
sc create "1C:Enterprise 8.3 Server Agent" binPath= "\"C:\Program Files (x86)\1cv8\8.3.10.2667\bin\ragent.exe\" -srvc -agent -regport 2541 -port 2540 -range 2560:2591 -d \"C:\Program Files (x86)\1cv8\srvinfo\"" start= auto
ИмяСервера:2540.Проанализируем сопутствующие технические требования, необходимые для стабильной работы 1С с удаленным SQL-сервером:
TCP/IP, а в брандмауэре открыт входящий TCP-порт (по умолчанию 1433) и UDP-порт 1434 (служба SQL Browser, если используется именованный экземпляр).rphost ограничен адресным пространством в 4 ГБ. При использовании x86-сервера 1С на 64-битной ОС рекомендуется в свойствах кластера ограничить допустимый объем памяти на процесс и настроить интервалы перезапуска рабочих процессов для защиты от сбоев из-за фрагментации памяти.