Сервер 1С:Предприятия 8.3 с нуля: служба агента, лицензия, кластер и базы
Содержание
Чтобы зарегистрировать сервер 1С 8.3, нужно сделать четыре вещи: установить сервер
как службу Windows (агент ragent.exe на порту 1540), дать ему лицензию (ключ HASP или программную), зарегистрировать утилиту администрирования (radmin.dll) и добавить в консоли центральный сервер, а затем информационные базы. После этого клиенты подключаются к базе по строке вида Srvr="имя_сервера";Ref="имя_базы";.
Администрирование серверов 1С начинается именно с регистрации: пока агент не запущен, а база не внесена в кластер, клиент получит ошибку «сервер не обнаружен». Инструкция ниже — для платформы 8.3.2x и Windows Server 2016 и новее. Отличия для Linux отмечены отдельно.
Что проверить на машине до установки сервера 1С
Сервер 1С — это не одна программа, а связка процессов. Их порты должны быть открыты, а имя машины — разрешаться у всех клиентов.
| Процесс | Что делает | Порт по умолчанию |
|---|---|---|
ragent | агент сервера, принимает первое подключение клиента и консоли | 1540 |
rmngr | менеджер кластера, хранит реестр кластера | 1541 |
rphost | рабочие процессы, выполняют код | 1560–1591 |
ras | сервер администрирования для rac и веб-консолей | 1545 |
Перед установкой пройдитесь по списку:
- 🖥️ Разрядность. Сервер x86-64 и 32-битный — разные продукты. Под 64-битный сервер нужен свой ключ или лицензия.
- 🔢 Версия. Клиенты и сервер должны иметь один и тот же номер платформы, вплоть до последней цифры сборки.
- 👤 Учётная запись службы. Установщик по умолчанию создаёт локального пользователя
USR1CV8. Ему нужно право «Вход в качестве службы» и полный доступ к каталогуsrvinfo. - 🌐 Имя сервера. Кластер возвращает клиенту имя рабочего сервера, а не IP. Если клиент не может разрешить это имя через DNS, подключение оборвётся уже после соединения с агентом. Добавьте запись в DNS или в
hostsна клиентах. - 🧱 Брандмауэр. Откройте входящие TCP-порты из таблицы. Диапазон рабочих процессов задаётся в свойствах рабочего сервера, и открыть нужно именно его.
- 🗄️ СУБД. Для клиент-серверной базы нужна СУБД (PostgreSQL для 1С или MS SQL Server) и логин с правом создавать базы.
При установке платформы отметьте компоненты «Сервер 1С:Предприятия 8» и «Администрирование сервера 1С:Предприятия 8», а также флажок установки сервера как службы Windows. Если его пропустить, службу придётся регистрировать вручную — это описано ниже.
Каталог srvinfo лучше сразу вынести на отдельный диск с запасом места, например D:\srvinfo. Там лежат реестр кластера и сеансовые данные, они растут вместе с числом баз.
Регистрация сервера 1С с аппаратным ключом HASP
Серверный ключ — отдельный USB-ключ, он не заменяет клиентские. На нём указано, для какого сервера он выпущен: 32-битного или 64-битного. Ключ для x86 не подойдёт серверу x86-64, и наоборот.
Порядок такой:
- Вставьте серверный ключ в USB-порт той машины, где работает агент сервера.
- Установите драйвер HASP. Он ставится из меню «Пуск» установщиком платформы («Установка драйвера защиты») или отдельным пакетом драйвера от производителя ключа.
- Перезапустите службу агента сервера 1С, чтобы она перечитала ключи.
- Подключитесь клиентом к любой серверной базе и убедитесь, что сеанс получил лицензию (как проверить — в разделе про ошибки).
Для серверного ключа HASP License Manager не нужен: сервер читает ключ локально. Менеджер лицензий требуется только для сетевых клиентских ключей, которые раздают лицензии по сети.
Перезапуск службы агента обрывает все сеансы пользователей на этом сервере. Делайте это вне рабочего времени или предупредите людей заранее.
Сервер на виртуальной машине. USB-ключ пробрасывают в гостевую ОС средствами гипервизора или через USB-over-IP. При миграции ВМ на другой хост проброс может потеряться, и сервер останется без лицензии. Для виртуализации удобнее программная лицензия.
Программная лицензия сервера: активация по пин-коду
Программная лицензия привязывается к параметрам компьютера. Её получают через пин-код из комплекта поставки. Сделать это можно двумя путями.
Через клиент 1С
- Запустите клиент 1С на любом компьютере и откройте базу, зарегистрированную на этом сервере, пользователем с административными правами.
- Если лицензии нет, платформа предложит её получить. Если не предложит — откройте окно получения лицензии через пункт «О программе» или параметры запуска.
- В мастере укажите, что лицензия нужна для сервера 1С:Предприятия, а не для этого компьютера.
- Введите пин-код и регистрационный номер комплекта , заполните данные владельца.
- Активируйте автоматически через интернет . Если на сервере нет выхода в сеть, мастер предложит активацию через файл запроса или по телефону.
Где хранится файл лицензии
Активированная лицензия сохраняется на сервере в файл с расширением .lic. Для всех пользователей это каталог C:\ProgramData\1C\licenses. Сохраните копию этого файла и пин-код: при замене оборудования лицензию придётся восстанавливать, а запас повторных активаций у каждого пин-кода ограничен.
Не меняйте процессор, материнскую плату и сетевые адаптеры сервера, не продумав перенос лицензии. После замены ключевого оборудования лицензия перестаёт подходить, и сервер не выдаёт сеансы до повторной активации резервным пин-кодом.
Лицензии по подписке
Арендованные лицензии активируют тем же мастером, по пин-коду из договора. Разница в сроке: по окончании подписки лицензия перестаёт действовать, и её нужно продлить заранее, иначе сервер остановит выдачу сеансов.
Регистрация сервера и баз в консоли администрирования
Консоль «Администрирование серверов 1С:Предприятия» — это оснастка MMC. Она работает через библиотеку radmin.dll, которую нужно зарегистрировать на каждом компьютере, где будет запускаться консоль.
Зарегистрируйте radmin.dll
В меню «Пуск» в группе платформы есть ярлык «Регистрация утилиты администрирования серверов». Запустите его от имени администратора. Аналог из командной строки:
regsvr32 "C:\Program Files\1cv8\8.3.25.1394\bin\radmin.dll"
Номер версии в пути подставьте свой. После обновления платформы radmin.dll нужно регистрировать заново из каталога новой версии, иначе консоль откроется с ошибкой или не увидит сервер новой сборки.
Добавьте центральный сервер
- Откройте консоль, в дереве найдите узел «Central 1C:Enterprise 8.3 servers».
- Правой кнопкой — «Создать» → «Центральный сервер 1С:Предприятия 8.3».
- Укажите имя компьютера (то же, что видят клиенты), протокол TCP, порт 1540.
- Раскройте узел: появится кластер «Локальный кластер» с портом 1541.
Назначьте администратора кластера
По умолчанию у кластера нет администратора, и любой, кто откроет консоль по сети, может удалить базу. Зайдите в узел «Администраторы» кластера, создайте пользователя с паролем. После этого консоль будет спрашивать логин при подключении.
Зарегистрируйте информационную базу
- В кластере откройте «Информационные базы» → «Создать» → «Информационная база».
- Заполните имя базы в кластере. Его клиенты указывают в параметре
Ref. - Укажите сервер СУБД, тип СУБД, имя базы данных, пользователя и пароль СУБД.
- Для новой базы отметьте «Создать базу данных в случае её отсутствия». Для существующей базы СУБД этот флажок не нужен.
- Параметр «Разрешить выдачу лицензий сервером 1С:Предприятия» поставьте в «Да», если лицензии лежат на сервере. Без этого клиент ищет лицензию только у себя.
- Сохраните и добавьте базу в список у пользователей: «Добавить» → «Добавление в список существующей информационной базы» → «На сервере 1С:Предприятия».
Если поле «Блокировка регламентных заданий включена» оставить «Да», фоновые задания базы (загрузка курсов, обмены) работать не будут. Для рабочей базы обычно ставят «Нет».
Регистрация службы и сервера 1С из командной строки
Командная строка нужна в трёх случаях: служба не создалась при установке, вы переносите srvinfo на другой диск или меняете порты, вы администрируете сервер скриптами.
Служба агента сервера
Сервер регистрируется как служба Windows ключом -instsrvc у ragent.exe. Запустите командную строку от имени администратора:
cd "C:\Program Files\1cv8\8.3.25.1394\bin"
ragent.exe -instsrvc -usr .\USR1CV8 -pwd "Пароль" -port 1540 -regport 1541 -range 1560:1591 -d "D:\srvinfo"
ragent.exe -start
Удалить службу перед переустановкой можно командой ragent.exe -rmsrvc. Многие администраторы создают службу через sc create — так видно точную командную строку службы:
sc create "1C:Enterprise 8.3 Server Agent (x86-64)" binPath= "\"C:\Program Files\1cv8\8.3.25.1394\bin\ragent.exe\" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d \"D:\srvinfo\"" start= auto obj= ".\USR1CV8" password= "Пароль"
Пробел после binPath=, start= и obj= обязателен — это требование синтаксиса sc.
Сервер администрирования ras и утилита rac
Утилита rac работает не с агентом напрямую, а через ras. Его тоже регистрируют службой:
sc create "1C:Enterprise 8.3 Remote Server" binPath= "\"C:\Program Files\1cv8\8.3.25.1394\bin\ras.exe\" cluster --service --port=1545 localhost:1540" start= auto
Проверочные команды:
rac localhost:1545 cluster list
rac localhost:1545 infobase --cluster=<uuid_кластера> summary list
rac localhost:1545 session --cluster=<uuid_кластера> list --licenses
Создание баз и назначение администраторов через rac тоже возможно. Точный набор параметров для вашей версии смотрите в справке: rac help infobase, rac help cluster.
На Linux
Пакеты сервера ставят службу systemd. В свежих версиях она параметризована номером версии, поэтому после обновления включите службу новой сборки и отключите старую. Учётная запись службы — usr1cv8, каталог данных по умолчанию — /home/usr1cv8/.1cv8. Остальное — консоль, rac, лицензии — работает так же.
Ошибки регистрации сервера 1С и где искать причину
Когда что-то не работает , проверяйте по цепочке: служба → порт → имя → лицензия → СУБД. Большинство ошибок однозначно указывают на одно звено.
Где смотреть логи
- 📄 Журнал событий Windows, раздел «Приложение»: ошибки запуска службы, отказ во входе учётной записи службы.
- 🗂️ Каталог
srvinfo\reg_1541: реестр кластера1CV8Clst.lst. Если служба падает сразу после старта, проверьте праваUSR1CV8на этот каталог. - 🔍 Технологический журнал. Включается файлом
logcfg.xmlв каталогеconfплатформы (например,C:\Program Files\1cv8\conf). Пример минимальной настройки, собирающей исключения и ошибки соединения:
<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="http://v8.1c.ru/v8/tech-log">
<log location="D:\techlog" history="24">
<event>
<eq property="name" value="EXCP"/>
</event>
<event>
<eq property="name" value="CONN"/>
</event>
</log>
</config>
Журнал начинает писаться через минуту после сохранения файла, перезапуск службы не нужен. history="24" — хранить 24 часа. Не оставляйте полный журнал включённым надолго: на нагруженном сервере он быстро занимает диск.
Проверка выданной лицензии
В консоли откройте «Сеансы» кластера и добавьте колонки про лицензию. Там видно, откуда сеанс взял лицензию: с сервера или с клиентского компьютера, программная она или из ключа. То же показывает rac session list --licenses.