Почему Конфигуратор и Предприятие занимают разные лицензии и как настроить экономный расход ключей

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

В практике администраторов и разработчиков 1С часто возникает ситуация, когда один пользователь, работая в терминальной сессии, запускает Конфигуратор и клиентское приложение 1С:Предприятие, а система при этом расходует две отдельные лицензии из общего пула. Если к этому добавить процесс отладки обмена данными или тестирование под разными ролями, количество занятых лицензий на одного человека может вырасти до 4–5 штук. Рассмотрим подробнее, почему это происходит, и разберем по шагам, как настроить систему так, чтобы одна лицензия соответствовала одному рабочему месту или сессии.

Разбираем механику подсчета лицензий: Сервер против Клиента

Для начала проанализируем ситуацию и выясним основную причину «прожорливости» системы. В платформе 1С:Предприятие 8 существует два принципиально разных способа получения лицензии:

  1. Раздача лицензий сервером 1С:Предприятия. В этом режиме сервер сам обращается к менеджеру лицензий или файлам программных лицензий и выдает их каждому запросившему сеансу. Ключевая особенность: сервер выдает лицензию на каждый сеанс. Это означает, что каждое открытое окно (будь то база «Бухгалтерия», «ERP» или просто второе окно той же базы) заберет из пула одну лицензию.
  2. Захват лицензии клиентским приложением. В этом режиме само приложение 1cv8.exe при запуске ищет лицензию локально (на компьютере пользователя или в терминальной сессии). Если клиент нашел лицензию самостоятельно, работает правило: одна лицензия на одно рабочее место. В рамках этого рабочего места (одной терминальной сессии или одного физического ПК) можно открывать неограниченное количество окон 1С, и все они будут использовать ту же самую лицензию.

Следовательно, если у вас «тратятся две лицензии» на Конфигуратор и Предприятие, это верный признак того, что лицензии раздает сервер. Наша задача — перевести систему на клиентский подсчет.

Настройка программных лицензий в терминальном режиме

Разберем ситуацию, когда используются программные лицензии (пин-коды). Чтобы в RDP-сессии одна лицензия покрывала все запущенные экземпляры 1С, необходимо правильно выполнить активацию.

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

  1. Выясним, где именно активированы лицензии. Если они активированы «на сервер 1С:Предприятия», то экономии не будет.
  2. Необходимо активировать многопользовательскую программную лицензию непосредственно на терминальный сервер как на «этот компьютер».
  3. При активации важно убедиться, что файлы лицензий (с расширением .lic) доступны для чтения всем пользователям терминала. Обычно они располагаются в каталоге: C:\ProgramData\1C\licenses.

Когда лицензия активирована локально на терминальном сервере, клиентское приложение при старте первым делом проверяет локальную папку с лицензиями. Обнаружив там файл, оно «занимает» один слот. Все последующие запуски 1С под этой же учетной записью в той же сессии увидят, что лицензия для данного идентификатора сессии уже получена, и новые запросы в общую базу лицензий отправляться не будут. Это и есть то самое «счастье», о котором упоминают опытные администраторы.

Особенности настройки аппаратных ключей (HASP) и nethasp.ini

Если ваша компания до сих пор использует аппаратные USB-ключи, механизм защиты можно настроить через конфигурационный файл nethasp.ini. Это позволит избежать путаницы, когда клиент не видит ключ и обращается за помощью к серверу, который снова начинает считать «по сеансам».

Посмотрим на пример настройки файла nethasp.ini, который обычно находится в папке conf установленной платформы. Для того чтобы принудительно заставить клиента искать ключ в сети и использовать его как локальный ресурс сессии, пропишем параметры:


[NH_COMMON]
NH_TCPIP = ENABLED

[NH_TCPIP]
NH_SERVER_ADDR = 192.168.1.100 ; Адрес вашего менеджера лицензий
NH_PORT_NUMBER = 475
NH_TCPIP_METHOD = UDP
NH_USE_BROADCAST = DISABLED

Установка NH_USE_BROADCAST = DISABLED критически важна. Она отключает широковещательный поиск и заставляет клиентское приложение подключаться напрямую к менеджеру лицензий. В терминальной среде это помогает стабильно определять лицензию «на сессию».

Использование Community Edition (лицензия для разработчиков)

В процессе обсуждения часто всплывает «Dev-лицензия». Это отличный инструмент для индивидуальной работы, но он имеет свои жесткие ограничения, которые мы сейчас проанализируем.

Комьюнити-лицензия позволяет бесплатно использовать платформу для целей разработки и ознакомления. Однако стоит помнить о технических лимитах:

Если ваша задача — отладить код в одиночку, этого достаточно. Но если над задачей работают трое (как в примере автора темы), комьюнити-лицензия на одной базе не позволит развернуться в полную силу.

Альтернативный подход: 1С:EDT и Комплекты специалиста

Рассмотрим более современные способы организации рабочего места программиста. Среда 1C:EDT (Enterprise Development Tools), построенная на базе Eclipse, работает иначе, чем классический Конфигуратор.

Сама оболочка EDT не потребляет лицензию 1С в процессе написания кода или проектирования метаданных. Лицензия запрашивается только в момент запуска отладки или обновления конфигурации базы в фоновом режиме. Это позволяет держать открытыми множество проектов одновременно, не расходуя лицензии пула, пока дело не дойдет до непосредственного исполнения кода.

Для тех, кто хочет иметь «личный безлимитный ключ», существует официальное решение от фирмы 1С — «Комплект специалиста по разработке». В него входит полноценный аппаратный USB-ключ на одну лицензию. Этот ключ работает по классической схеме: пока он вставлен в компьютер (или проброшен в сессию), вы можете открывать любое количество окон 1С на этом рабочем месте. Это снимает все административные вопросы по «выходу из баз» и экономии ресурсов компании.

Резюме и рекомендации

Выясним причину избыточного потребления в вашем конкретном случае. Если вы видите, что Конфигуратор «съел» одну лицензию, а Предприятие — другую, выполните следующие действия:

  1. Проверьте настройки в консоли администрирования сервера 1С. Убедитесь, что в свойствах информационной базы параметр «Разрешить выдачу лицензий сервером 1С:Предприятия» установлен в значение «Нет» (если вы хотите, чтобы клиенты брали лицензии сами).
  2. Если используется программная лицензия, переустановите её на терминальный сервер с привязкой к компьютеру, а не к серверу 1С.
  3. При использовании аппаратных ключей, настройте nethasp.ini на каждом терминальном сервере, указав прямой IP-адрес менеджера лицензий.

Эти шаги позволят значительно сократить расходы на лицензирование и обеспечат комфортную работу команды разработчиков и аналитиков без необходимости постоянно перезаходить в систему.

← На главную