Служба ragent на сервере 1С:Предприятия 8.3: запуск, порты, кластер и разбор сбоев
Содержание
Агент сервера 1С — это служба Windows (процесс ragent.exe), которую открывают в оснастке services.msc: найдите службу с именем вида 1C:Enterprise 8.3 Server Agent (x86-64), проверьте, что она в состоянии «Выполняется», и запустите её кнопкой «Запустить». Доступ к агенту извне настраивается через порты: 1540 — сам агент, 1541 — менеджер кластера, 1560–1591 — рабочие процессы. Все три должны быть открыты в брандмауэре сервера.
Обычно агент вспоминают, когда пользователи видят окно «Не могу установить соединение с сервером 1С:Предприятия», а консоль администрирования не подключается. Причина почти всегда в одном из четырёх мест: служба остановлена, закрыт порт, не совпали версии платформы или у учётной записи службы нет прав.
Что делает агент сервера и почему без него ничего не работает
В клиент-серверной 1С 8.3 три уровня процессов:
| Процесс | Файл | Порт по умолчанию | Задача |
|---|---|---|---|
| Агент сервера | ragent.exe | 1540 | Принимает первое обращение клиента, хранит список кластеров, запускает менеджер кластера |
| Менеджер кластера | rmngr.exe | 1541 | Ведёт реестр баз, сеансов, блокировок и распределяет нагрузку |
| Рабочие процессы | rphost.exe | 1560–1591 | Выполняют код конфигурации и работают с СУБД |
Порядок подключения такой: клиент обращается к агенту на 1540, агент сообщает адрес менеджера кластера (1541), а тот отправляет клиента в один из рабочих процессов из диапазона портов. Консоль администрирования серверов тоже идёт через агент.
Из этого следует простое правило:
- 🔴 агент остановлен — не стартуют ни
rmngr, ниrphost, базы недоступны всем; - 🟡 агент работает, но закрыт 1541 или диапазон 1560–1591 — консоль может видеть кластер, а пользователи всё равно получают ошибку соединения;
- 🟢 всё открыто — клиент проходит цепочку за доли секунды.
Данные агента лежат в каталоге srvinfo (по умолчанию C:\Program Files\1cv8\srvinfo). Внутри — папка reg_1541 с файлом реестра кластера 1CV8Clst.lst и служебными каталогами баз. Не удаляйте и не правьте файлы в srvinfo без резервной копии каталога — в 1CV8Clst.lst записаны все зарегистрированные базы и администраторы кластера.
Как открыть и запустить агент сервера 1С через службы Windows
Начните с оснастки служб. Это самый быстрый способ понять, жив ли агент.
- Нажмите
Win + R, введитеservices.msc, нажмите Enter. - В списке найдите
1C:Enterprise 8.3 Server Agent (x86-64). Если на сервере 32-битная платформа, суффикса(x86-64)нет. - Посмотрите столбец «Состояние». Пусто — служба остановлена.
- Откройте свойства двойным щелчком и проверьте вкладку «Общие»: тип запуска должен быть «Автоматически».
- Нажмите «Запустить». Через 5–15 секунд в диспетчере задач появятся
ragent.exe,rmngr.exeи хотя бы одинrphost.exe.
Что проверить в свойствах службы
На вкладке «Общие» в поле «Исполняемый файл» видна полная командная строка запуска. Типичный вид:
"C:\Program Files\1cv8\8.3.24.1548\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files\1cv8\srvinfo" -debug
Здесь важно четыре вещи:
- 📌 номер платформы в пути — он должен совпадать с версией, установленной на клиентах;
- 📌
-port,-regport,-range— реальные порты, на которых будет слушать сервер; - 📌
-d— каталогsrvinfo; если его перенесли, путь должен вести на новое место; - 📌
-debug— разрешает отладку на сервере; на боевом сервере без нужды его не держат.
На вкладке «Вход в систему» указан пользователь, от имени которого работает служба. Установщик обычно создаёт локального пользователя USR1CV8. У этой учётной записи должны быть права «Полный доступ» на каталог srvinfo и право входа в качестве службы. Если пароль у USR1CV8 сменили политикой или вручную, служба перестанет стартовать с ошибкой входа — пароль нужно обновить и здесь.
Перезапуск агента обрывает все сеансы пользователей на этом сервере: несохранённые документы пропадут, фоновые задания прервутся. Делайте это вне рабочего времени или предупредите людей заранее.
Агент на Linux
На Linux агент тоже работает как служба. Начиная с платформы 8.3.21 в комплект входит unit-файл systemd, в более ранних версиях использовался скрипт /etc/init.d/srv1cv83. Точное имя unit-а зависит от версии, его проще найти поиском:
systemctl list-unit-files | grep -i 1c
systemctl status <имя_службы>
ps aux | grep ragent
Управление агентом из командной строки
Командная строка нужна, когда оснастка недоступна, служба пропала после обновления или на сервере нужно поднять второй экземпляр агента.
Запуск, остановка и состояние службы
Все команды выполняются в cmd от имени администратора. Имя службы берите из свойств службы (поле «Имя службы»), а не из отображаемого названия:
sc query "1C:Enterprise 8.3 Server Agent (x86-64)"
sc stop "1C:Enterprise 8.3 Server Agent (x86-64)"
sc start "1C:Enterprise 8.3 Server Agent (x86-64)"
То же в PowerShell:
Get-Service *1C*
Restart-Service "1C:Enterprise 8.3 Server Agent (x86-64)"
Регистрация службы заново
После установки новой платформы служба иногда продолжает смотреть на старый каталог bin, а то и вовсе не регистрируется. Тогда её пересоздают средствами самого ragent.exe из каталога нужной версии:
cd "C:\Program Files\1cv8\8.3.24.1548\bin"
ragent.exe -rmsrvc
ragent.exe -instsrvc -usr .\USR1CV8 -pwd "пароль" -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files\1cv8\srvinfo"
Первая команда удаляет регистрацию службы, вторая создаёт её с указанным пользователем и портами. Каталог srvinfo при этом не трогается: базы и настройки кластера сохраняются.
Регистрация консоли администрирования
Если оснастка «Администрирование серверов 1С Предприятия» не открывается или пишет об ошибке, перерегистрируйте библиотеку консоли из каталога той же версии, что и сервер:
regsvr32 "C:\Program Files\1cv8\8.3.24.1548\bin\radmin.dll"
В каталоге bin есть и готовый файл RegMSC.cmd, который делает то же самое. Запускайте его от имени администратора.
Удалённое управление через ras и rac
Для работы без графической консоли (скрипты, Linux, мониторинг) поднимают сервер администрирования ras и обращаются к нему утилитой rac. По умолчанию ras слушает порт 1545 и подключается к агенту на 1540:
ras.exe cluster --port=1545 localhost:1540
rac.exe localhost:1545 cluster list
rac.exe localhost:1545 session list --cluster=<uuid_кластера>
Команда cluster list выводит UUID кластера, который нужен остальным командам. Полный список подкоманд и параметров — в справке rac help и rac <режим> help.
Порты сервера 1С и правила брандмауэра
Брандмауэр — вторая по частоте причина, по которой агент «не открывается» с клиентских машин, хотя на самом сервере всё работает.
| Порт | Кто слушает | Нужен клиенту |
|---|---|---|
| 1540 | Агент ragent | Да |
| 1541 | Менеджер кластера rmngr | Да |
| 1560–1591 | Рабочие процессы rphost | Да |
| 1545 | Сервер администрирования ras | Только администратору |
Правило для входящих подключений в брандмауэре Windows добавляется одной командой:
netsh advfirewall firewall add rule name="1C Server 8.3" dir=in action=allow protocol=TCP localport=1540-1541,1560-1591
Как проверить, что порт открыт
На сервере посмотрите, слушает ли агент порт:
netstat -ano | findstr ":1540"
С клиентской машины проверьте доступность через PowerShell:
Test-NetConnection srv1c -Port 1540
Test-NetConnection srv1c -Port 1541
Test-NetConnection srv1c -Port 1560
TcpTestSucceeded : True по всем трём — сеть в порядке. Если 1540 отвечает, а 1560 нет, ищите правило, где забыли диапазон рабочих процессов.
💡 Диапазон рабочих процессов задаётся в свойствах рабочего сервера в консоли (поле с диапазоном IP-портов). Если его сузили, например до 1560:1570, правило брандмауэра можно сделать тем же диапазоном — лишние порты открывать не нужно.
Несколько агентов на одном сервере
Так делают, когда на одной машине нужны две версии платформы. Второму агенту дают другой набор портов и свой каталог данных, например -port 2540 -regport 2541 -range 2560:2591 -d "C:\Program Files\1cv8\srvinfo2". В строке подключения клиента порт указывают явно: srv1c:2541.
Регистрация сервера и кластера в консоли администрирования
Когда агент запущен, его подключают в консоль «Администрирование серверов 1С Предприятия» (ярлык ставится вместе с сервером).
- В дереве слева щёлкните правой кнопкой по «Central 1C:Enterprise 8.3 servers» и выберите
Создать → Центральный сервер 1С:Предприятия 8.3. - Протокол —
TCP, имя — сетевое имя сервера (лучше имя, а не IP, если клиенты подключаются по имени), IP-порт —1540. - Раскройте сервер. При первой установке кластер «Локальный кластер» с портом 1541 создаётся автоматически.
- Если кластера нет, вызовите на узле «Кластеры» команду
Создать → Кластер, укажите имя, компьютер и порт1541. - В узле кластера «Рабочие серверы» откройте свойства сервера: здесь задаётся диапазон портов рабочих процессов, параметры отказоустойчивости и требования назначения функциональности.
Администраторы агента и кластера
По умолчанию кластер открыт любому, кто подключился к агенту по сети. Чтобы закрыть доступ:
- 🔐 в узле «Администраторы» центрального сервера добавьте администратора агента — тогда без пароля нельзя создавать и удалять кластеры;
- 🔐 в узле «Администраторы» кластера добавьте администратора кластера — без него нельзя управлять базами и сеансами.
Пароль администратора кластера восстановить нельзя. Если его потеряли, рабочий путь один: остановить службу в нерабочее время и вернуть каталог reg_1541 из резервной копии, сделанной до установки пароля, либо получить пароль у того, кто настраивал сервер.
Диагностика ошибок подключения и журналы агента
Сначала определите, на каком шаге рвётся цепочка: служба → порт → версия → права. Типичные сообщения и что за ними стоит:
Где смотреть журналы
- 📄 Журнал событий Windows —
eventvwr.msc → Журналы Windows → Приложение. Фильтруйте по источнику, в имени которого есть 1C. Здесь видны падения службы и ошибки старта. - 📄 Технологический журнал — включается файлом
logcfg.xmlв каталогеconfплатформы (C:\Program Files\1cv8\conf). Пишет события процессов сервера: исключения, разрывы соединений, вызовы. Включайте его на время диагностики с фильтром по событиям: без фильтра журнал за час может вырасти на гигабайты. - 📄 Дампы — при аварийном завершении
rphostилиragentплатформа может сохранять дампы; их передают в поддержку, а не разбирают вручную.
Минимальный logcfg.xml для поиска ошибок сервера:
<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="http://v8.1c.ru/v8/tech-log">
<log location="C:\1c_logs" history="24">
<event>
<eq property="name" value="EXCP"/>
</event>
<event>
<eq property="name" value="CONN"/>
</event>
<property name="all"/>
</log>
</config>
Параметр history="24" хранит журналы за последние 24 часа. Каталог C:\1c_logs должен существовать, и у пользователя службы должно быть право записи в него. Платформа подхватывает изменения файла сама, перезапуск службы не нужен.
Если не помогло: очистка кэша сеансов сервера
При странном поведении после обновления конфигурации (старые формы, ошибки, которых нет в новой версии) помогает очистка серверного кэша:
- Предупредите пользователей: все сеансы на сервере будут завершены.
- Остановите службу агента.
- Скопируйте каталог
srvinfo\reg_1541в резервную папку. - В
reg_1541удалите папкиsnccntx*— это кэш сеансовых данных. Файл1CV8Clst.lstи папки баз с GUID-именами не трогайте. - Запустите службу и проверьте вход в базу.
Если сервер после этого не стартует, верните каталог из копии — настройки кластера восстановятся полностью.
Частые вопросы
Можно ли поменять порт 1540 на другой?
-port и -regport на новые значения и укажите порт менеджера кластера в строке подключения клиента, например srv1c:2541.Нужен ли агент сервера для файловой базы?
Почему после обновления платформы пользователи не входят в базу?
ragent.exe и на клиентах должен совпадать.Сколько рабочих процессов запускает агент?
rphost на рабочий сервер.Где хранится список баз сервера 1С?
1CV8Clst.lst в каталоге srvinfo\reg_1541. Его копирование вместе с каталогом — простой способ сохранить конфигурацию кластера перед обновлением.