При работе 1С:Предприятие в виртуальных средах системные администраторы часто сталкиваются с проблемой «слета» программных лицензий. Это происходит из-за того, что программная защита 1С жестко привязывается к аппаратным характеристикам сервера. В виртуальной инфраструктуре параметры могут меняться динамически: миграция между нодами (vMotion/Live Migration), изменение объема оперативной памяти или количества ядер процессора приводят к тому, что система защиты воспринимает сервер как «новый» и аннулирует лицензию. Разберем подробно, как выстроить надежную архитектуру лицензирования.
Проанализируем ситуацию: почему программная лицензия перестает работать? Система защиты 1С формирует уникальный ключ на основе набора параметров. Для виртуальных машин критически важными являются следующие показатели:
UUID (например, при некорректном копировании ВМ вместо перемещения), лицензия мгновенно становится невалидной.MAC-адрес в настройках виртуального сетевого адаптера. Динамические MAC-адреса — одна из самых частых причин проблем.Dynamic Memory (динамическая память), скачки доступного объема ОЗУ могут быть восприняты защитой как замена оборудования.Рассмотрим наиболее правильный с точки зрения архитектуры 1С 8.3 способ — использование сервиса лицензирования. В современных версиях платформы кластер серверов позволяет гибко распределять роли между рабочими серверами.
Разберем по шагам, как настроить выделенную роль лицензирования:
Сервис лицензирования.Назначать. Для всех остальных серверов кластера установим этот же сервис в значение Не назначать.Выясним причину, почему это эффективно: при такой настройке все программные лицензии активируются только на этом конкретном сервере. Даже если рабочие серверы с базами данных (rphost) будут мигрировать или менять параметры, они будут обращаться за лицензией к выделенному «менеджеру лицензий», параметры которого неизменны. Однако помните, что данный сервис раздает лицензии только внутри своего кластера.
Малоизвестный, но крайне эффективный метод — использование физического ключа HASP в качестве «якоря» для программных лицензий. В этом случае при активации программной лицензии вы выбираете привязку не к параметрам компьютера, а к серийному номеру аппаратного ключа (например, ключа на 1 пользователя или ключа основной поставки).
Проанализируем плюсы этого подхода:
Для реализации этого метода в виртуальной среде потребуется стабильный проброс USB-устройств. Рассмотрим использование специализированных USB-over-IP концентраторов. Такие устройства позволяют подключать ключи по сети, и виртуальная машина видит их как локально подключенные устройства, независимо от того, на каком физическом хосте она запущена в данный момент.
Если в вашей инфраструктуре используются аппаратные многопользовательские ключи, важно правильно настроить HASP LM. В отличие от программных лицензий, которые сервер 1С выдает на каждый сеанс (каждое открытое окно), HASP LM выдает лицензию на рабочее место (один компьютер может открыть много баз, используя одну лицензию).
Чтобы сервер лицензий корректно находил ключи, проанализируем настройки файла nnhasp.ini. Рекомендуется явно указывать IP-адрес сервера, где установлен ключ, чтобы избежать проблем с широковещательными запросами в разных подсетях:
[NH_COMMON]
NH_TCPIP = Enabled
[NH_TCPIP]
NH_SERVER_ADDR = 192.168.1.100 ; Адрес вашего сервера лицензий
NH_TCPIP_METHOD = TCP
NH_USE_BROADCAST = Disabled
В ситуациях, когда в сети одновременно присутствуют и программные, и аппаратные лицензии, полезно настроить приоритет их получения. Это делается через файл nprofi.xml. Рассмотрим пример настройки, где мы указываем системе сначала искать программные лицензии, а затем обращаться к аппаратным ключам:
<Settings>
<Property name="SelectionPriority" value="Software, Hardware"/>
</Settings>
Этот файл позволяет избежать ситуации, когда «дорогие» многопользовательские лицензии с HASP-ключа разбираются пользователями, которым достаточно обычных программных лицензий.
При использовании программных лицензий важно помнить о резервных пин-кодах. Каждое изменение параметров сервера заставляет вас тратить один пин-код из комплекта. Когда они закончатся, получение новых в Центре лицензирования потребует официального обоснования причин частой смены оборудования.
Важные моменты при активации:
.lic. Не рекомендуется активировать несколько разных лицензий в один файл — лучше разносить их по разным серверам лицензирования в рамках кластера для повышения отказоустойчивости.Таким образом, для стабильной работы в виртуальной среде оптимальным выбором будет создание отдельной виртуальной машины под сервис лицензирования с жестко зафиксированным MAC-адресом, отключенной динамической памятью и настроенными требованиями назначения функциональности в кластере 1С.