Служба ragent, консоль кластера и rac: запуск сервера 1С с нуля
Содержание
Чтобы запустить администрирование серверов 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)). Тип запуска — «Автоматически», состояние — «Выполняется».
Если служба остановлена:
- Щёлкните по ней правой кнопкой и выберите «Запустить».
- Откройте свойства, вкладку «Вход в систему», и проверьте учётную запись и пароль.
- Посмотрите на вкладке «Общие» строку «Исполняемый файл» — по ней видно версию и параметры.
Строка запуска службы выглядит так:
"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>
Платформа подхватывает файл без перезапуска службы, обычно в течение минуты. Каталог для журнала выбирайте на диске со свободным местом и выдайте на него права пользователю службы.