Служба ragent, консоль кластера и rac: запуск сервера 1С с нуля

· 10 мин

Содержание

Чтобы запустить администрирование серверов 1С, нужны три вещи: работающая служба агента сервера (ragent), зарегистрированная библиотека консоли radmin.dll и открытые порты 1540, 1541 и 1560–1591. После этого оснастка «Администрирование серверов 1С Предприятия» подключается к агенту, и в ней видно кластер, рабочие процессы и сеансы.

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

1. Что подготовить перед запуском сервера 1С

Сервер 1С ставится из дистрибутива «Технологическая платформа 1С:Предприятия (64-bit) для Windows» или из пакетов для Linux. Версия консоли администрирования и версия сервера должны совпадать до четвёртой цифры: консоль 8.3.24.1548 не управляет кластером 8.3.25.1374.

Перед установкой проверьте:

  • 🖥️ Имя хоста. Сервер должен знать своё имя, а клиенты — находить его по этому имени. Если DNS нет, пропишите имя в hosts на всех машинах.
  • 🔑 Лицензия. Без лицензии на сервер служба запустится, но клиенты к базам не подключатся.
  • 👤 Пользователь службы. Установщик по умолчанию создаёт локального пользователя USR1CV8. Ему нужно право «Вход в качестве службы» и полный доступ к каталогу srvinfo.
  • 🔌 Порты. Агент — 1540, менеджер кластера — 1541, рабочие процессы — диапазон 1560–1591. Для ras — 1545.
  • 🧱 СУБД. Для клиент-серверных баз нужен MS SQL Server или PostgreSQL. Сама консоль работает и без СУБД, но базу создать не получится.

При установке на Windows в списке компонентов отметьте «Сервер 1С:Предприятия 8» и «Администрирование сервера 1С:Предприятия». Флажок «Установить сервер 1С:Предприятия как сервис Windows» оставьте включённым — тогда агент сразу появится в службах.

Если сервер и клиенты разной разрядности, это не мешает работе. Мешает только разная версия платформы.

2. Как запустить службу агента сервера 1С на Windows

После установки откройте services.msc и найдите службу «Агент сервера 1С:Предприятия 8.3» (в английской локали — 1C:Enterprise 8.3 Server Agent (x86-64)). Тип запуска — «Автоматически», состояние — «Выполняется».

Если служба остановлена:

  1. Щёлкните по ней правой кнопкой и выберите «Запустить».
  2. Откройте свойства, вкладку «Вход в систему», и проверьте учётную запись и пароль.
  3. Посмотрите на вкладке «Общие» строку «Исполняемый файл» — по ней видно версию и параметры.

Строка запуска службы выглядит так:

"C:\Program Files\1cv8\8.3.25.1374\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files\1cv8\srvinfo" -debug

Здесь -port — порт агента, -regport — порт главного менеджера кластера, -range — диапазон для рабочих процессов, -d — каталог служебных файлов кластера. Ключ -debug разрешает отладку на сервере; в продуктиве его обычно убирают.

Регистрация службы вручную

Если ставили без флажка «как сервис» или после обновления в службах остался агент старой версии, зарегистрируйте службу заново из командной строки от имени администратора:

cd "C:\Program Files\1cv8\8.3.25.1374\bin"
ragent.exe -rmsrvc
ragent.exe -instsrvc -usr .\USR1CV8 -pwd "Пароль" -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files\1cv8\srvinfo"
net start "1C:Enterprise 8.3 Server Agent (x86-64)"

Команду -rmsrvc запускайте из каталога той версии, которая была зарегистрирована. Если имя службы у вас другое, посмотрите его командой sc query state= all | findstr /i 1C.

Остановка или удаление службы агента обрывает сеансы всех пользователей на этом сервере. Делайте это вне рабочего времени и предупредите людей заранее.

Регистрация консоли radmin.dll

Это главный шаг, без которого «администрирование серверов» не открывается. Ярлык консоли — это оснастка MMC 1CV8 Servers.msc, а работает она через библиотеку radmin.dll. Установщик регистрирует её не всегда, а после обновления платформы регистрация указывает на удалённый каталог.

Запустите командную строку от имени администратора:

regsvr32 "C:\Program Files\1cv8\8.3.25.1374\bin\radmin.dll"

После сообщения об успешной регистрации откройте оснастку из меню «Пуск» (папка «1С Предприятие 8») или файл 1CV8 Servers.msc из каталога C:\Program Files\1cv8\common.

Разрядность radmin.dll должна совпадать с разрядностью MMC. Если на машине стоят 32- и 64-битные платформы, 64-битная консоль ищет 64-битную библиотеку. Для 32-битной используйте C:\Windows\SysWOW64\mmc.exe.

3. Запуск сервера 1С на Linux

На Linux ставят пакеты сервера (server, ws при необходимости) из дистрибутива «Технологическая платформа для DEB/RPM». Установщик создаёт пользователя usr1cv8, а каталог кластера по умолчанию лежит в /home/usr1cv8/.1cv8/1C/1cv8.

В актуальных версиях 8.3 в каталог платформы кладётся готовый файл юнита systemd. Подключение выглядит так:

ls /opt/1cv8/x86_64/8.3.25.1374/ | grep service
sudo systemctl link /opt/1cv8/x86_64/8.3.25.1374/srv1cv8-8.3.25.1374@.service
sudo systemctl enable srv1cv8-8.3.25.1374@default
sudo systemctl start srv1cv8-8.3.25.1374@default
sudo systemctl status srv1cv8-8.3.25.1374@default

Если в каталоге версии нет файла .service, у вас старый релиз со скриптом /etc/init.d/srv1cv83. Тогда параметры (порты, каталог, отладка) правят в /etc/sysconfig/srv1cv83, а запускают через sudo systemctl start srv1cv83 или сам скрипт.

Проверка, что агент слушает порты:

sudo ss -tlnp | grep -E '1540|1541'

Консоли MMC на Linux нет. Управляют сервером тремя способами:

  • 🪟 Консолью с Windows-машины по сети — она подключается к агенту на порт 1540.
  • ⌨️ Утилитой rac через сервер администрирования ras (раздел 5).
  • 🌐 Сторонними веб-панелями поверх ras.

4. Подключение консоли и настройка кластера

Откройте консоль и в дереве щёлкните правой кнопкой по «Центральные серверы 1С:Предприятия» → «Создать» → «Центральный сервер 1С:Предприятия». Укажите имя хоста (то же, что знают клиенты), протокол TCP и порт 1540.

Если установщик всё сделал сам, внутри появится «Кластер» под именем «Локальный кластер» с портом 1541. Если кластера нет, создайте его: правой кнопкой по «Кластеры» → «Создать» → «Кластер», порт 1541, имя — любое понятное.

Что стоит настроить сразу:

ГдеЧтоЗачем
Свойства кластераИнтервал перезапуска рабочих процессовПлановый перезапуск снижает утечки памяти
Свойства кластераУровень отказоустойчивостиДля кластера из нескольких серверов
Свойства рабочего сервераДиапазон IP-портовДолжен совпадать с открытыми в брандмауэре
Свойства рабочего сервераКоличество ИБ и соединений на процессВлияет на распределение нагрузки
Узел «Администраторы» кластераУчётные записи администраторовБез них консолью может управлять кто угодно в сети

Добавьте администратора кластера в первую очередь. Но запишите логин и пароль в надёжное место: после этого каждый вход в кластер спрашивает их.

Если пароль администратора кластера потерян, не пересоздавайте кластер. Остановите службу и восстановите файлы реестра кластера из резервной копии каталога srvinfo или обратитесь к тому, кто настраивал сервер.

Создание информационной базы в кластере

В ветке кластера щёлкните «Информационные базы» → «Создать» → «Информационная база». Укажите имя базы в кластере, тип СУБД, адрес сервера СУБД, имя базы в СУБД и пользователя СУБД. Флажок «Создать базу данных в случае её отсутствия» создаст пустую базу на стороне SQL.

Флажок «Блокировка регламентных заданий включена» полезен для тестовых копий: регламентные задания копии не будут, например, слать письма или загружать банк.

5. Сервер администрирования ras и утилита rac

Консоль MMC ходит к агенту напрямую. Скрипты и сторонние панели работают иначе: через сервер администрирования ras и утилиту командной строки rac. ras по умолчанию слушает порт 1545 и сам подключается к агенту на 1540.

Запуск на Windows как службы:

sc create "1C:Enterprise 8.3 Remote Server" binPath= "\"C:\Program Files\1cv8\8.3.25.1374\bin\ras.exe\" cluster --service --port=1545 localhost:1540" start= auto DisplayName= "Сервер администрирования 1С 8.3"
sc start "1C:Enterprise 8.3 Remote Server"

На Linux в каталоге платформы обычно лежит файл ras-8.3.25.1374.service, его подключают так же, через systemctl link, enable и start. Разовый запуск без службы: ras cluster --daemon.

Проверка связи:

rac cluster list
rac infobase summary list --cluster=<uuid-кластера>
rac session list --cluster=<uuid-кластера> --licenses

Без указания адреса rac подключается к localhost:1545. Для удалённого сервера адрес пишут последним аргументом: rac cluster list srv1c:1545. Если на кластере есть администратор, добавьте --cluster-user и --cluster-pwd. Полный список команд и ключей — в rac help.

Версия rac должна совпадать с версией ras, как и в случае с консолью.

6. Почему служба агента не запускается и консоль не подключается

Сначала посмотрите журнал: на Windows — «Просмотр событий» → «Журналы Windows» → «Приложение», источник 1C:Enterprise 8.3; на Linux — journalctl -u srv1cv8-8.3.25.1374@default -n 100.

Диагностика: выберите симптом

Если в кластере «застряли» старые данные

Иногда после аварийной остановки служба запускается, но кластер ведёт себя странно: висят несуществующие сеансы, базы открываются с ошибками. Практики в таком случае чистят сеансовые данные кластера: останавливают службу, удаляют в каталоге srvinfo\reg_1541 папки snccntx* и запускают службу снова.

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

7. Мониторинг и регулярное обслуживание сервера 1С

Запущенный сервер нужно наблюдать, иначе о проблеме вы узнаете от бухгалтерии. Минимальный набор:

  • 📊 Сеансы и лицензии. rac session list --licenses по расписанию показывает, сколько лицензий занято. Скрипт может слать отчёт в почту или мессенджер.
  • 🧠 Память рабочих процессов. В консоли, в ветке «Рабочие процессы», видны занятая память и число соединений. Плановый перезапуск процессов задаётся в свойствах кластера.
  • 📝 Технологический журнал. Включается файлом logcfg.xml в каталоге C:\Program Files\1cv8\conf (на Linux — /opt/1cv8/conf). Пишите события EXCP и долгие запросы, обязательно задавайте history — срок хранения в часах, иначе журнал займёт весь диск.
  • 💾 Резервная копия srvinfo. Каталог небольшой, его копируют ежедневно вместе с бэкапами СУБД.
  • 🔄 Обновление платформы . Новую версию сервера ставят рядом, затем перерегистрируют службу (раздел 2) и radmin.dll на всех машинах с консолью.

Пример минимального logcfg.xml для поиска исключений:

<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="http://v8.1c.ru/v8/tech-log">
  <log location="D:\1c_techlog" history="24">
    <event>
      <eq property="name" value="EXCP"/>
    </event>
    <property name="all"/>
  </log>
</config>

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

Сервер 1С готов к работе
Выполнено: 0 / 7

Частые вопросы

Можно ли запустить консоль администрирования на рабочем компьютере, а не на сервере?
Да. Установите на компьютер платформу той же версии с компонентом «Администрирование сервера», зарегистрируйте radmin.dll и добавьте центральный сервер по имени хоста и порту 1540.
Нужно ли переустанавливать сервер при обновлении платформы?
Новая версия ставится рядом со старой. Старую службу удаляют, новую регистрируют с теми же портами и каталогом srvinfo — базы и настройки кластера сохраняются.
Можно ли запустить на одном сервере два кластера разных версий?
Да, если у каждого агента свои порты и свой каталог служебных файлов, например 1540/1541 и 2540/2541. Клиенты указывают порт в адресе сервера.
Чем консоль MMC отличается от rac?
Возможности почти одинаковые. Консоль удобна для ручной работы на Windows, rac — для скриптов, мониторинга и Linux без графики.
Почему в консоли не видно баз, которые точно есть на сервере?
Скорее всего, вы подключились к другому агенту или кластеру с другим портом. Проверьте порт агента в строке запуска службы и номер порта кластера в консоли.