К статье
Практический материал

Администрирование · 9 мин

Агент сервера 1С: для чего нужен и как он работает

Агент сервера 1С: что это, для чего нужен, какие задачи выполняет в кластере, как запускается и настраивается. Проверка работы службы и типичные ошибки.

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

Многие администраторы впервые сталкиваются с агентом, когда после установки платформы на сервер не могут подключиться к кластеру или видят ошибку «Сервер администрирования кластера не обнаружен». Причина почти всегда одна — служба агента не запущена, запущена на другом порту или заблокирована брандмауэром.

Ниже разобрано, какие задачи выполняет агент, как он связан с другими компонентами кластера, как его запустить, проверить и настроить, а также какие ошибки встречаются чаще всего.

Что такое агент сервера 1С и где он находится в архитектуре

Кластер серверов 1С состоит из нескольких процессов, и агент — старший среди них. При установке платформы в режиме «Сервер 1С:Предприятия» в системе регистрируется служба «Агент сервера 1С:Предприятия» (в Windows) или скрипт запуска демона (в Linux). Исполняемый файл — ragent.exe в каталоге bin соответствующей версии платформы.

Архитектура кластера выглядит так: агент (ragent) управляет менеджером кластера (rmngr), а тот — рабочими процессами (rphost), внутри которых реально исполняется код прикладных решений и выполняются запросы к СУБД. Клиентские приложения и консоль администрирования обращаются сначала к агенту, и уже он направляет их дальше.

Какие задачи выполняет агент

Функционально агент отвечает за несколько критичных зон. Первая — хранение реестра кластера: списка информационных баз, рабочих серверов, рабочих процессов, администраторов и назначенных требований функциональности. Эти данные лежат в каталоге srvinfo в файле 1CV8Clst.lst и связанных файлах.

Вторая зона — приём административных подключений. Консоль «Администрирование серверов 1С Предприятия», утилита rac и внешние скрипты администрирования подключаются именно к агенту по его порту (по умолчанию 1540). Если агент недоступен, администрировать кластер штатными средствами невозможно.

Третья зона — запуск и контроль остальных процессов. Агент стартует менеджер кластера и при необходимости перезапускает упавшие процессы, следит за соответствием фактического состава кластера конфигурации из реестра.

Консоль не видит кластерАгент не запущен или недоступен

Проверить службу «Агент сервера 1С» и порт 1540

Клиенты не подключаются к базамКластер недоступен целиком

Проверить ragent, затем rmngr и rphost в диспетчере задач

После перезагрузки сервера базы «пропали»Агент запущен с другим каталогом srvinfo

Сверить параметр -d в строке запуска службы

Порты и сетевые настройки агента

По умолчанию агент использует порт 1540. Менеджер кластера занимает 1541, а рабочие процессы получают порты из диапазона 1560–1591. Если на одном физическом сервере развёрнуто несколько кластеров (например, разные версии платформы или тестовый и боевой контур), каждому агенту назначают собственный порт — 1540, 1640, 1740 и так далее, со сдвигом всего диапазона.

Эти порты должны быть открыты в брандмауэре сервера и на промежуточном сетевом оборудовании. Частая ситуация: служба агента работает, но консоль на машине администратора не подключается, потому что порт 1540 закрыт сетевым экраном. Проверяется это простым подключением к порту, например через Test-NetConnection сервер -Port 1540 в PowerShell.

Как запустить, остановить и проверить агент

В Windows агент работает как служба и управляется стандартно: через оснастку «Службы», команду net start / net stop или PowerShell. Имя службы содержит версию платформы, например «1C:Enterprise 8.3 Server Agent (x86-64)». В Linux агент запускается скриптом srv1cv8 или через systemd-юнит в зависимости от способа установки.

Проверка работоспособности выполняется в три шага: служба запущена, порт слушается, консоль подключается. Если служба стартует и сразу падает, смотрите журнал событий Windows и права учётной записи, под которой работает агент (по умолчанию — специальная учётная запись USR1CV8, создаваемая при установке).

Порядок проверки агента
  1. 1
    Откройте оснастку «Службы» (services.msc) и убедитесь, что служба агента сервера 1С в состоянии «Выполняется».
  2. 2
    Проверьте, что порт агента слушается: netstat -ano | findstr :1540.
  3. 3
    Подключитесь консолью администрирования к серверу и раскройте дерево кластера — должны быть видны информационные базы и рабочие процессы.
  4. 4
    Если кластер пуст, проверьте параметр -d в строке запуска службы: он должен указывать на каталог srvinfo с реестром кластера.
powershell
Get-Service "1C:Enterprise*Server Agent*" | Select-Object Name, Status
Test-NetConnection server1c -Port 1540

Реестр кластера и каталог srvinfo

Каталог srvinfo — это «память» агента. В нём хранятся описание кластера, список баз, сеансовые данные, журналы регистрации событий кластера и служебные файлы. Путь к каталогу задаётся параметром -d в командной строке запуска агента; в Windows по умолчанию это каталог в профиле служебной учётной записи или в Program Files, в зависимости от версии установщика.

Практический вывод: перенос кластера на другой сервер сводится к установке той же версии платформы, остановке агента, копированию srvinfo и запуску агента с тем же параметром -d. Но пока агент работает, копировать и править файлы реестра вручную нельзя — это почти гарантированно приводит к повреждению реестра.

Типичные ошибки при работе с агентом

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

Типичные ошибки
01
Обновление платформы без перерегистрации службы: старый агент продолжает запускаться от прежней версии, а консоль новой версии не может корректно с ним работать.
02
Запуск двух агентов на одном порту: вторая служба не стартует или кластер ведёт себя непредсказуемо.
03
Смена учётной записи службы без выдачи прав на srvinfo: агент стартует, но не может прочитать реестр, и кластер выглядит пустым.
04
Очистка srvinfo «для освобождения места» без резервной копии: теряются регистрации всех баз и настройки кластера.
05
Закрытый порт на брандмауэре после переноса сервера: служба работает, но недоступна извне.

Отдельно стоит сказать про утилиту rac: она подключается к агенту и позволяет выполнять почти все операции администрирования из командной строки — создавать базы, блокировать сеансы, получать списки соединений. Если консоль работает, а rac нет (или наоборот), проверяйте версию утилиты: rac должна совпадать с версией агента.

Полезно зафиксировать где-либо параметры запуска агента (порт, каталог srvinfo, учётную запись) сразу после развёртывания. При аварии или переносе эта записка избавляет от реконструкции конфигурации по косвенным признакам.
ПЗ
Практическое замечание

Когда агент не нужен и какие есть альтернативы

Агент сервера требуется только в клиент-серверном варианте работы 1С. Если базы работают в файловом режиме, никакого кластера и агента нет — платформа на компьютерах пользователей напрямую обращается к файлам базы. Для небольших внедрений это нормальная и более простая схема.

Также агент не нужен, если используется публикация баз через веб-сервер в файловом режиме. Но как только требуется работа с СУБД (PostgreSQL, MS SQL Server и др.), параллельная работа большого числа пользователей и централизованное администрирование сеансов — без кластера и его агента не обойтись.

Итог

Что важно запомнить

Агент сервера 1С — главная служба кластера: хранит реестр баз в srvinfo, принимает подключения консоли и rac на порту 1540, управляет процессами rmngr и rphost. Проверка сводится к трём пунктам: служба запущена, порт доступен, консоль видит кластер. Файлы srvinfo трогать только при остановленном агенте и с резервной копией.

Частые вопросы об агенте сервера 1С

Чем агент отличается от менеджера кластера и рабочего процесса?

Агент (ragent) хранит конфигурацию кластера и принимает административные подключения. Менеджер кластера (rmngr) распределяет нагрузку и ведёт служебные сервисы. Рабочие процессы (rphost) исполняют код прикладных решений и обращаются к СУБД. Все три типа процессов необходимы для работы кластера.

Консоль пишет, что сервер администрирования не обнаружен. Что делать?

Проверьте, запущена ли служба агента на сервере, слушается ли порт 1540 и не блокирует ли его брандмауэр. Также убедитесь, что в консоли указан правильный адрес сервера и порт — если агент работает на нестандартном порту, его нужно указать явно.

Можно ли запустить два агента на одном сервере?

Да, это штатная практика для разделения контуров или версий платформы. Каждому агенту назначается свой порт (например, 1540 и 1640), свой каталог srvinfo и отдельная служба. Главное — чтобы порты и каталоги не пересекались.

Что будет, если удалить каталог srvinfo?

Кластер «забудет» все зарегистрированные информационные базы, настройки рабочих процессов и администраторов. Сами базы в СУБД не пострадают, но их придётся заново регистрировать в кластере. Поэтому перед любыми операциями с srvinfo каталог копируют целиком при остановленном агенте.

Нужен ли агент, если 1С работает в файловом режиме?

Нет. В файловом режиме клиентские приложения работают с базой напрямую, без кластера серверов. Агент требуется только в клиент-серверной архитектуре с СУБД.

Версия консоли администрирования должна совпадать с версией агента?

Желательно, чтобы совпадали мажорные версии платформы. Консоль или утилита rac одной версии может некорректно работать с агентом другой версии — вплоть до невозможности подключения. После обновления платформы на сервере обновите и инструменты администрирования.