При построении гетерогенной инфраструктуры часто возникает ситуация, когда лицензии активированы на одном компьютере (например, под управлением Windows), а публикацию файловых информационных баз для доступа через браузер планируется развернуть на другом сервере (например, под управлением Linux с веб-сервером Apache). Рассмотрим, как работает механизм поиска программных лицензий платформы 1С:Предприятие, почему веб-сервер не видит сетевые программные лицензии в файловом режиме и какими способами можно корректно организовать работу пользователей.
Проанализируем базовый принцип работы программных лицензий. В отличие от аппаратных ключей защиты HASP, для которых существует сетевая служба HASP License Manager (HLM), программные лицензии представляют собой файлы с расширением .lic, жестко привязанные к физическим или виртуальным параметрам конкретного компьютера в момент активации.
Выясним, как ведет себя платформа 1С в различных сценариях:
httpd/apache2 или w3wp) ищет файлы лицензий исключительно на локальном сервере, где физически развернут и работает веб-сервер. В Linux поиск осуществляется по стандартным путям, таким как /var/1C/licenses или /opt/1cv8/.../licenses, а также в домашнем каталоге пользователя, от имени которого работает служба. Веб-сервер не опрашивает локальную сеть и не может прочитать файл лицензии с соседнего хоста.Таким образом, просто указать в конфигурационных файлах сетевой путь к файлу лицензии на другом сервере невозможно. Рассмотрим практические пути решения поставленной задачи.
Разберем наиболее прямолинейный способ, не требующий дополнительных финансовых затрат и реорганизации лицензий. Если на первом сервере (Windows) уже успешно активирована многопользовательская программная лицензия, логично поднять веб-сервер непосредственно на нем.
В этом случае веб-сервер получает прямой локальный доступ к файлу .lic на том же сервере. Подключающиеся внешние веб-клиенты будут брать сеансовые лицензии из локально доступного пула многопользовательской лицензии.
Если специфика инфраструктуры требует разделения ролей и обязательного использования выделенного Linux-сервера для веб-публикаций, разберем клиент-серверный вариант работы (SQL). В полноценном кластере 1С:Предприятия раздача программных лицензий реализована на уровне системных сервисов.
Рассмотрим порядок организации централизованной раздачи лицензий:
Сервис лицензирования.Этот способ полностью снимает ограничения гетерогенных сред, однако требует перевода базы из файлового режима в клиент-серверный и наличия серверной лицензии 1С.
Проанализируем ситуацию, когда необходимо оставить файловые базы и два независимых сервера, но сохранить имеющийся программный комплект. Стандартная поставка многопользовательской лицензии на 10 рабочих мест содержит в конверте два типа пин-кодов:
Если многопользовательский пин-код уже активирован на Windows-сервере, использовать те же лицензии на Linux-сервере параллельно нельзя. Посмотрим, как поступить в этом случае:
.lic, который веб-сервер сможет отдавать веб-клиентам.Если переактивация нежелательна, а веб-доступ планировался лишь для удаленной работы сотрудников, рассмотрим альтернативу в виде Remote Desktop Services на сервере Windows:
1cv8.exe.Выбор оптимального решения зависит от текущего бюджета и конфигурации сети: для файловых баз проще всего опубликовать веб-сервер на том же хосте, где установлена лицензия, либо перераспределить пин-коды по отдельным хостам.