Полезное

Проверка количества лицензий 1С на сервере

Вадим Заплетин 2 мин чтения
Проверка количества лицензий 1С на сервере

Контроль лицензий 1С:Предприятие — базовая задача администрирования. Без актуальной информации о количестве доступных лицензий невозможно планировать расширение инфраструктуры, диагностировать проблемы с подключением пользователей и избежать простоев в работе. В этом руководстве разберём пять способов проверить количество лицензий 1С на сервере: через консоль администратора, командную строку, файлы конфигурации, утилиты кластера и логи сервера приложений.

Инструкции подходят для версий 1С:Предприятие 8.3 и 8.2 на платформах Windows Server и Linux. Все методы проверены на серверах с архитектурой клиент-сервер и файловыми базами.

Способ 1: Консоль администратора 1С

Консоль администратора — графический инструмент управления кластером серверов 1С. Этот способ подходит для быстрой проверки без доступа к командной строке сервера.

Пошаговая инструкция

  1. Запустите консоль администратора 1С (comcntr.exe или через меню «Пуск» → «1С:Предприятие» → «Администрирование»).
  2. Подключитесь к центральному серверу кластера: «Центральный сервер» → «Добавить» → укажите имя сервера или IP-адрес.
  3. Разверните узел «Кластеры серверов» → выберите нужный кластер → раскройте раздел «Менеджеры кластера».
  4. Щёлкните правой кнопкой мыши по менеджеру кластера → выберите «Лицензии».
  5. В открывшемся окне отобразится таблица со всеми лицензиями: общее количество клиентских подключений, занято, свободно, серийный номер, тип лицензии (сетевая, программная, аппаратная).

В колонке «Всего» указано максимальное число одновременных подключений для каждой лицензии. Колонка «Занято» показывает текущую нагрузку. Если значение «Занято» приближается к «Всего» — пора планировать покупку дополнительных лицензий или модернизацию серверов для распределения нагрузки.

Что можно увидеть в консоли

Параметр Описание Пример значения
Всего лицензий Максимум одновременных подключений 50
Занято Активные сеансы пользователей 37
Свободно Доступно подключений 13
Серийный номер Идентификатор лицензии XXXXX-XXXXX-XXXXX
Тип Сетевая / программная / аппаратная Сетевая
Срок действия Дата окончания подписки (для cloud-лицензий) 31.12.2026

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

Способ 2: Командная строка и утилита rac

Утилита rac (Remote Administrator Console) — консольный инструмент для администрирования кластера 1С. Подходит для автоматизации проверок, мониторинга через скрипты и удалённого управления.

Синтаксис команды

Базовая команда для получения информации о лицензиях:

rac license list --cluster=<cluster-id>

Для выполнения команды нужен идентификатор кластера. Получите его командой:

rac cluster list

Команда вернёт список кластеров с их UUID. Скопируйте нужный идентификатор и используйте в команде проверки лицензий.

Полный алгоритм проверки

Для Windows Server

  1. Откройте командную строку (cmd) от имени администратора.
  2. Перейдите в каталог установки 1С (обычно C:\Program Files\1cv8\<версия>\bin).
  3. Выполните команду: rac cluster list localhost:1540 (где 1540 — порт менеджера кластера по умолчанию).
  4. Скопируйте значение поля cluster из вывода (строка вида cluster: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).
  5. Запустите команду: rac license list —cluster=<скопированный UUID> localhost:1540

Для Linux

  1. Подключитесь к серверу по SSH.
  2. Перейдите в каталог: cd /opt/1cv8/x86_64/<версия>/
  3. Выполните: ./rac cluster list localhost:1540
  4. Скопируйте UUID кластера и запустите: ./rac license list —cluster=<UUID> localhost:1540

Вывод команды содержит подробную информацию о каждой лицензии: серийный номер, дату выдачи, тип (клиентская, серверная, CORP, Prof), количество пользователей, статус (активна, заблокирована, истекла).

Пример вывода

license       : 12345678-1234-1234-1234-123456789012
full-name     : 1C:Enterprise 8.3 CORP (x86-64)
series        : XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
issued-by-server : yes
max-users-all    : 50
max-users-cur    : 37
rmngr-address    : localhost
rmngr-port       : 1541

Поле max-users-all — общее количество лицензий, max-users-cur — сколько сейчас используется. Эти данные помогают оценить запас ёмкости системы.

Способ 3: Проверка через конфигурационный файл ragent

Агент сервера (ragent) — служба, управляющая рабочими процессами 1С. Конфигурационный файл ragent хранит информацию о лицензиях, привязанных к серверу.

Расположение файла

Windows: C:\Program Files\1cv8\srvinfo\reg_1541\1CV8Reg.lst

Linux: /opt/1cv8/x86_64/<версия>/conf/1CV8Reg.lst

Файл 1CV8Reg.lst содержит записи о зарегистрированных лицензиях в текстовом формате. Каждая лицензия описана блоком параметров.

Структура записи лицензии

{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx,
"XXXXX-XXXXX-XXXXX-XXXXX-XXXXX",
"1C:Enterprise 8.3",
"CORP",
50,
0,
"01.01.2025",
"31.12.2026"
}

Пятый параметр (в примере — 50) — количество пользовательских лицензий. Шестой параметр (0) — резерв. Седьмой и восьмой — даты начала и окончания действия.

Для быстрого подсчёта общего количества лицензий используйте поиск по файлу или скрипт PowerShell (Windows) / grep (Linux).

Автоматизация подсчёта

PowerShell (Windows):

Get-Content "C:\Program Files\1cv8\srvinfo\reg_1541\1CV8Reg.lst" | Select-String -Pattern '^\d+,' | ForEach-Object { ($_ -split ',')[0] } | Measure-Object -Sum

Bash (Linux):

grep -oP '(?<=,)\d+(?=,)' /opt/1cv8/x86_64/8.3.*/conf/1CV8Reg.lst | awk '{s+=$1} END {print s}'

Скрипт извлекает числовые значения лицензий и суммирует их. Результат — общее количество доступных клиентских подключений.

Способ 4: Анализ логов сервера приложений

Логи рабочих процессов (rphost) фиксируют события выдачи и освобождения лицензий. Этот способ подходит для ретроспективного анализа и расследования инцидентов с исчерпанием лицензий.

Где искать логи

Windows: C:\Program Files\1cv8\srvinfo\reg_1541\<cluster-id>\<process-id>\

Linux: /var/log/1cv8/<cluster-id>/<process-id>/

Файлы логов имеют формат ГГГГММДДЧЧММСС.log (например, 20260212143000.log). События лицензирования помечены префиксом [License].

Ключевые события в логах

Событие Описание Действие
License granted Лицензия выдана пользователю Увеличение счётчика занятых лицензий
License released Лицензия освобождена Уменьшение счётчика занятых лицензий
License limit exceeded Превышен лимит лицензий Пользователь получил отказ в подключении
License expired Лицензия истекла Требуется обновление подписки

Для поиска событий используйте утилиты grep (Linux) или Select-String (PowerShell в Windows).

Пример команды поиска (Linux):

grep "License limit exceeded" /var/log/1cv8/*/*/2026*.log

Команда найдёт все случаи отказа в подключении из-за нехватки лицензий за 2026 год. Если таких событий много — система работает на пределе, нужно докупать лицензии или оптимизировать конфигурацию серверов.

Способ 5: Запрос к кластеру через COM-соединение

Программный доступ к информации о лицензиях через COM-объект COMConnector. Подходит для интеграции с системами мониторинга или создания кастомных скриптов проверки.

Пример скрипта на VBScript

Set COMConnector = CreateObject("V83.COMConnector")
Set ServerAgent = COMConnector.ConnectAgent("localhost:1540")
Set Cluster = ServerAgent.GetClusters().Get(0)
Set Licenses = ServerAgent.GetLicenses(Cluster)

TotalLicenses = 0
For Each License in Licenses
    TotalLicenses = TotalLicenses + License.MaxUsersAll
Next

WScript.Echo "Всего лицензий: " & TotalLicenses

Скрипт подключается к агенту сервера, извлекает информацию о кластерах и лицензиях, суммирует общее количество доступных подключений.

Преимущества метода

  • Автоматизация: запуск по расписанию через планировщик задач
  • Интеграция: передача данных в Zabbix, Prometheus, ELK-стек
  • Гибкость: возможность обработки данных перед выводом (фильтрация, группировка, алертинг)

Для работы скрипта требуется установленная платформа 1С:Предприятие на машине, с которой выполняется подключение. COM-объект доступен только в Windows.

Типовые конфигурации серверов для 1С

Выбор конфигурации сервера зависит от количества лицензий и нагрузки системы. Ниже — рекомендуемые параметры для типовых сценариев.

Количество лицензий Процессор Оперативная память Дисковая подсистема Примечание
До 25 4-6 ядер, 2.5+ GHz 16-32 ГБ SSD 500 ГБ Малый бизнес, файловый режим
25-50 8-12 ядер, 3.0+ GHz 32-64 ГБ SSD RAID 10, 1 ТБ Средний бизнес, клиент-сервер
50-100 16-24 ядра, 3.2+ GHz 64-128 ГБ NVMe RAID 10, 2 ТБ Крупный бизнес, высокая нагрузка
100+ 32+ ядра, 3.5+ GHz 128-256 ГБ NVMe RAID 10, 4+ ТБ Корпорация, кластер серверов

Для систем с 50+ лицензиями рекомендуется разделение ролей: выделенный сервер приложений 1С, отдельный сервер баз данных и кластер для балансировки нагрузки. Процессоры с высокой тактовой частотой критичны для быстрой обработки транзакций. Большой объём оперативной памяти снижает нагрузку на дисковую подсистему и ускоряет работу с крупными базами.

Частые ошибки при проверке лицензий

Ошибка 1: Проверка только в консоли администратора

Консоль показывает текущее состояние, но не даёт истории использования. Если пользователи жалуются на периодические отказы в подключении, нужно анализировать логи за несколько дней — возможно, лимит исчерпывается в пиковые часы.

Ошибка 2: Игнорирование типа лицензии

Серверные лицензии (на процессорные ядра) и клиентские (на одновременные подключения) — разные сущности. Наличие серверной лицензии на 50 ядер не гарантирует 50 клиентских подключений. Проверяйте оба типа лицензий отдельно.

Ошибка 3: Неучёт резервных лицензий

В конфигурационном файле 1CV8Reg.lst есть поле «резерв» (шестой параметр в блоке лицензии). Эти лицензии зарезервированы для аварийного подключения администраторов и не доступны обычным пользователям. Не суммируйте их с общим пулом.

Ошибка 4: Забытые тестовые лицензии

Временные и тестовые лицензии, выданные на 30-90 дней, истекают незаметно. Если проверка показывает меньше лицензий, чем ожидалось — ищите истёкшие записи в логах или конфигурационных файлах.

Ошибка 5: Отсутствие мониторинга

Разовая проверка не защищает от внезапного исчерпания лицензий. Настройте автоматический мониторинг через скрипты (способ 5) с отправкой алертов при превышении порога 80-90% занятости.

Оптимизация использования лицензий

Сокращение времени удержания лицензий

По умолчанию 1С удерживает лицензию 24 часа после завершения сеанса пользователя. Измените параметр «Время удержания пассивного сеанса» в консоли администратора (Кластер → Параметры → вкладка «Время жизни»). Рекомендуемое значение — 1-3 часа для систем с дефицитом лицензий.

Настройка автоматического завершения сеансов

Включите параметр «Завершать неактивные сеансы» для принудительного отключения пользователей, не выполняющих действий более заданного времени (например, 30 минут). Это освобождает лицензии, заблокированные забытыми окнами программы.

Распределение нагрузки

Если кластер состоит из нескольких серверов, проверьте балансировку нагрузки. Неравномерное распределение приводит к исчерпанию лицензий на одном сервере при наличии свободных на другом. Настройте автоматическую балансировку через параметры менеджера кластера.

Резервирование лицензий для критичных пользователей

В консоли администратора создайте группу пользователей с повышенным приоритетом (например, бухгалтерия, руководство). При исчерпании общего пула система выделит им лицензии из резерва, не прерывая работу ключевых сотрудников.

Частые вопросы о лицензиях 1С

Можно ли перенести лицензии 1С с одного сервера на другой?

Да, программные и сетевые лицензии переносятся. Для программных лицензий нужно скопировать файлы ключей из каталога srvinfo старого сервера в аналогичный каталог нового и перезапустить службу агента сервера (ragent). Аппаратные лицензии (на USB-ключах HASP) переносятся физически: отключите ключ от старого сервера и подключите к новому. После этого выполните команду rac license update для обновления информации в кластере.

Как узнать, когда истекает срок действия лицензий 1С?

Откройте консоль администратора, перейдите в раздел «Лицензии» и посмотрите колонку «Срок действия». Для подписных лицензий (1С:ИТС, облачных) указана конкретная дата окончания. Бессрочные лицензии (CORP, проф) имеют отметку «Бессрочная». Для автоматического контроля настройте скрипт проверки (способ 5) с извлечением даты из конфигурационного файла 1CV8Reg.lst и отправкой уведомлений за 30 дней до истечения.

Сколько лицензий нужно для работы 30 пользователей в 1С?

Минимум 30 клиентских лицензий, но рекомендуется запас 20-30%. Если 30 пользователей работают одновременно весь день — покупайте 35-40 лицензий. Если работа посменная (например, 15 человек в первую смену, 15 во вторую без пересечений) — достаточно 18-20 лицензий. Анализируйте пиковую нагрузку через логи сервера за месяц, затем добавьте резерв на рост штата и сезонные всплески активности.