В процессе масштабирования систем на базе 1С:Предприятие 8.3 часто возникает ситуация, когда в организации уже накоплен парк аппаратных USB-ключей (например, на 50 и 20 пользователей), но текущих мощностей не хватает, и принимается решение о закупке дополнительных программных лицензий (например, на 100 рабочих мест). Перед системным администратором встает задача: как объединить все эти лицензии в единый пул, чтобы сервер приложений мог раздавать их пользователям? Разберем эту ситуацию подробно, проанализируем технические ограничения и выясним, как получить итоговые 170 лицензий.
Рассмотрим базовый принцип работы системы лицензирования 1С. Когда мы включаем в настройках информационной базы опцию «Разрешить выдачу лицензий сервером», именно сервер приложений берет на себя роль «раздатчика». Однако он делает это не произвольно, а соблюдая строгую иерархию поиска ключей. Выясним, почему просто «воткнуть все ключи в один сервер» не получится.
Для аппаратных ключей существует критическое ограничение: один сервер может видеть только один локальный ключ одной серии. Серия ORGL8 — это стандартные пользовательские ключи (на 5, 10, 20, 50, 100 рабочих мест). Если мы подключим к серверу одновременно ключи на 50 и 20 лицензий, система увидит только один из них (как правило, тот, который был обнаружен первым или имеет больший номинал).
Проанализируем порядок, в котором сервер приложений 1С ищет свободные лицензии при запуске клиентского сеанса. Понимание этого порядка поможет нам правильно распределить имеющиеся ресурсы:
.lic. Программные лицензии, в отличие от аппаратных, суммируются без ограничений. Если вы установите лицензии на 100, 50 и 20 мест программно, сервер получит пул из 170 лицензий сразу.ORGL8.ORGL8.Разберем по шагам, как настроить конфигурацию, чтобы получить суммарно 170 лицензий, используя 100 программных, один ключ на 50 и один на 20 мест.
Шаг 1. Установка программных лицензий.
Активируем программную лицензию на 100 рабочих мест непосредственно на сервере приложений 1С. Эти лицензии будут находиться в папке профиля пользователя, под которым запущена служба ragent, или в общей папке conf. Сервер добавит их в свой приоритетный список.
Шаг 2. Подключение первого USB-ключа (на 50 мест).
Вставляем ключ на 50 лицензий непосредственно в физический USB-порт сервера приложений (или пробрасываем его в виртуальную машину). Сервер увидит его как локальный аппаратный ключ.
Шаг 3. Подключение второго USB-ключа (на 20 мест).
Чтобы этот ключ не конфликтовал с первым, его нельзя вставлять в тот же сервер. Мы должны установить его на любой другой компьютер в локальной сети. На этом компьютере обязательно должен быть запущен HASP License Manager (служба nhsrvice.exe).
Шаг 4. Настройка связи сервера с сетевым ключом.
Чтобы сервер приложений гарантированно нашел ключ на 20 лицензий на другом хосте, нам необходимо отредактировать файл nethasp.ini. Разберем пример настройки этого файла. Нам нужно указать конкретный IP-адрес машины, где стоит второй ключ, чтобы избежать проблем с широковещательными запросами в разных подсетях.
Посмотрим на пример настройки секции [NH_TCPIP] в файле nethasp.ini:
[NH_COMMON]
NH_TCPIP = ENABLE
[NH_TCPIP]
NH_SERVER_ADDR = 192.168.1.105 ; IP-адрес машины с ключом на 20 лиц.
NH_TCPIP_METHOD = TCP
NH_USE_BROADCAST = DISABLE
Этот файл должен располагаться в каталоге bin/conf установленной платформы 1С на сервере приложений.
Проанализируем важную особенность: когда лицензии раздает сервер (наша «галочка» в настройках), способ подсчета меняется.
Если пользователь берет лицензию напрямую с USB-ключа (через свой локальный компьютер), то одна лицензия расходуется на рабочую станцию. На этом ПК можно открыть хоть 5 разных баз, и потратится всего 1 лицензия.
Однако, когда лицензии выдает сервер 1С, они считаются по сессиям. Если один и тот же пользователь на одном компьютере откроет две разные информационные базы (или дважды одну и ту же), сервер выдаст ему две разные лицензии из своего общего пула (100+50+20).
Вывод: при переходе на серверную раздачу лицензий (смешанную схему) нужно закладывать небольшой запас по количеству, так как фактическое потребление лицензий может вырасти из-за привычки пользователей работать в нескольких окнах 1С одновременно.
Для достижения результата в 170 лицензий мы используем комбинированный подход:
nethasp.ini.При такой схеме сервер 1С сначала раздаст 100 программных лицензий, затем задействует локальный ключ на 50, и в последнюю очередь обратится к сетевому ключу на 20 мест. Общий доступный лимит составит именно 170 единиц.