Как поднять кластер 1С:Предприятия 8.3 с нуля и подключить к нему базы

· 10 мин

Содержание

Чтобы запустить кластер серверов 1С, на сервер ставят платформу с компонентом «Сервер 1С:Предприятия 8» и устанавливают его как службу Windows. Служба поднимает агент сервера ragent на порту 1540, а он — менеджер кластера rmngr на 1541 и рабочие процессы rphost в диапазоне 1560–1591. Дальше в консоли администрирования проверяют кластер и добавляют в него информационные базы.

Частое заблуждение — что кластер нужно «создавать» отдельно после установки. На самом деле при установке сервера как службы платформа сама создаёт «Локальный кластер» с одним рабочим сервером. Руками кластер создают, только когда нужен второй кластер на той же машине или нестандартные порты. Всё ниже относится к платформе 8.3 целиком и не зависит от конфигурации: Бухгалтерия, ЗУП и УТ подключаются к кластеру одинаково.

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

Сервер 1С сам данные не хранит. Ему нужна СУБД: Microsoft SQL Server или PostgreSQL (в сборке для 1С), реже IBM Db2 или Oracle. Поэтому порядок такой: сначала СУБД, потом сервер 1С.

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

  • 🖥 Разрядность и ОС. Ставьте 64-разрядный сервер на Windows Server 2016 и новее или на поддерживаемый Linux. 32-разрядный сервер упирается в память.
  • 🔑 Лицензия на сервер. Клиентские лицензии не подходят: нужен ключ сервера 1С:Предприятия (обычный или КОРП). Без него базы в кластере не откроются.
  • 🌐 Имя сервера. Клиенты обращаются к кластеру по имени машины. Имя должно разрешаться в DNS со всех рабочих мест, иначе подключение упадёт уже после «успешной» настройки.
  • 🔥 Порты в брандмауэре. Откройте входящие TCP 1540, 1541 и диапазон 1560–1591. Если будете управлять через rac, добавьте 1545.
  • 👤 Учётная запись службы. Установщик по умолчанию создаёт пользователя USR1CV8. Ему нужно право «Вход в качестве службы» и полный доступ к каталогу данных кластера srvinfo.

Платформа на сервере и на клиентах должна быть одной версии вплоть до последней цифры сборки. Если клиент 8.3.24.1548, а сервер 8.3.24.1691, база не откроется. Заранее решите, какую сборку ставите везде.

Установка сервера 1С и запуск службы агента

Установщик платформы один и тот же для клиента и сервера. Разница — в выбранных компонентах.

Установка на Windows

  1. Запустите setup.exe из дистрибутива сервера (64-разрядный дистрибутив называется «Технологическая платформа 1С:Предприятия (64-bit) для Windows»).
  2. В списке компонентов включите «Сервер 1С:Предприятия 8» и «Администрирование сервера 1С:Предприятия». Клиент на сервере можно не ставить.
  3. На шаге настройки сервера отметьте «Установить 1С:Предприятие 8 как сервис Windows » и укажите пользователя службы. Для начала подойдёт создаваемый USR1CV8.
  4. Завершите установку и откройте оснастку services.msc. Служба «Агент сервера 1С:Предприятия 8.3» должна быть в состоянии «Выполняется», тип запуска — «Автоматически».

В свойствах службы видна командная строка запуска. Она выглядит примерно так:

"C:\Program Files\1cv8\8.3.24.1691\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 включает отладку на сервере; в рабочей системе его обычно убирают.

Установка на Linux

На Linux ставят пакеты сервера из дистрибутива для своей системы (deb или rpm). В новых сборках 8.3 в комплекте идёт unit-файл systemd. Его подключают командой systemctl link, затем включают и запускают службу через systemctl enable и systemctl start. Точное имя файла зависит от номера сборки: смотрите его в каталоге /opt/1cv8/x86_64/<версия>/.

Консоль администрирования

Консоль кластера — это оснастка MMC, и ей нужна зарегистрированная библиотека radmin.dll. Если консоль открывается пустой или с ошибкой, зарегистрируйте библиотеку от имени администратора:

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

Этот же приём нужен после обновления платформы: регистрация остаётся за старой версией, и консоль перестаёт видеть новый сервер.

Регистрация центрального сервера и создание кластера в консоли

Откройте «Администрирование серверов 1С Предприятия» из меню «Пуск».

Как зарегистрировать центральный сервер

  1. В дереве слева щёлкните правой кнопкой по Central 1C:Enterprise 8.3 servers и выберите Создать → Центральный сервер 1С:Предприятия 8.3.
  2. Укажите имя компьютера (то же, что видят клиенты), протокол tcp и порт агента 1540.
  3. Нажмите «ОК» и раскройте узел сервера. Внутри появится «Кластеры», а в нём — «Локальный кластер» с портом 1541.

Если кластер на месте, отдельно создавать ничего не нужно.

Когда кластер создают вручную

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

  1. Правой кнопкой по узлу «Кластеры» → Создать → Кластер.
  2. Задайте имя, имя компьютера и свободный порт менеджера, например 1641.
  3. В новом кластере откройте «Рабочие серверы» и проверьте диапазон портов: он не должен пересекаться с первым кластером.

Клиенты подключаются ко второму кластеру с явным портом: srv1c:1641. К кластеру на стандартном 1541 — просто по имени srv1c.

Администраторы кластера

Сразу после установки консоль пускает любого. Чтобы закрыть доступ, в узле кластера откройте «Администраторы» и создайте пользователя. Повторите то же на уровне центрального сервера.

Запишите пароль администратора кластера в хранилище паролей. Если он потерян, кластер не пересоздают: останавливают службу и восстанавливают каталог srvinfo из резервной копии либо обращаются к тому, кто настраивал сервер. Пересоздание кластера сносит регистрацию всех баз.

Рабочие процессы и менеджеры: что настроить в свойствах

В кластере работают три вида процессов. Понимать, кто за что отвечает, нужно для настройки и для разбора проблем.

ПроцессПортЧто делает
ragent1540Агент: принимает первичное подключение клиента и консоли, хранит список кластеров
rmngr1541Менеджер кластера: реестр баз, сеансы, блокировки, сервисы кластера
rphost1560–1591Рабочий процесс: выполняет код конфигурации и запросы к СУБД

Цепочка подключения клиента: агент → менеджер кластера → рабочий процесс. Поэтому закрытый порт из диапазона 1560–1591 даёт ошибку уже после того, как клиент «увидел» сервер.

Свойства рабочего сервера

Откройте Кластер → Рабочие серверы → <имя сервера> → Свойства. Здесь живут главные параметры:

  • 🔢 Диапазоны IP-портов — откуда рабочие процессы берут порты. По умолчанию 1560:1591.
  • 🗂 Количество ИБ на процесс — сколько баз обслуживает один rphost. Значение 1 даёт отдельный процесс на каждую базу: падение одной базы не роняет другие, но памяти уходит больше.
  • 🔗 Количество соединений на процесс — после превышения кластер запускает следующий рабочий процесс.
  • 🧩 Менеджер под каждый сервис — выносит сервисы кластера в отдельные процессы rmngr. Полезно при большом числе пользователей, когда один менеджер становится узким местом.
  • 🧠 Критический объём памяти процессов и временно допустимый объём — пороги, после которых кластер перезапускает «распухший» рабочий процесс.
  • 🛡 Требования назначения функциональности — какие задачи (клиентские соединения, фоновые задания, полнотекстовый поиск) этот сервер берёт на себя. Нужно, когда рабочих серверов несколько.

Свойства самого кластера

В свойствах кластера (правой кнопкой по нему → «Свойства») задают интервал плановой перезагрузки рабочих процессов, уровень отказоустойчивости и режим распределения нагрузки.

Интервал перезапуска, например 86400 секунд, раз в сутки освобождает память. Новый процесс поднимается до остановки старого, но долгие операции в старом процессе прерываются.

Ручное «Выключить» рабочего процесса в консоли обрывает все сеансы, которые в нём работают: пользователи потеряют несохранённые данные. Делайте это вне рабочего времени или после предупреждения пользователей.

Добавление информационных баз в кластер

Базу можно зарегистрировать двумя путями. Результат одинаковый.

Через консоль кластера

  1. В кластере правой кнопкой по «Информационные базы» → Создать → Информационная база.
  2. Заполните: имя базы в кластере (латиница без пробелов удобнее, например buh_main), защищённое соединение, сервер СУБД, тип СУБД, имя базы в СУБД, пользователя и пароль СУБД.
  3. Для MS SQL укажите смещение дат 2000. Для PostgreSQL смещение не используется.
  4. Включите «Создать базу данных в случае её отсутствия», если базы в СУБД ещё нет.
  5. Отметьте «Разрешить выдачу лицензий сервером 1С:Предприятия», если на сервере стоит ключ.
  6. Для копии рабочей базы сразу включите «Блокировка регламентных заданий включена». Иначе копия начнёт загружать банк, отправлять почту и обмениваться данными от имени рабочей.

Через окно запуска клиента

В списке баз нажмите «Добавить» → «Создание новой информационной базы» → вариант «На сервере 1С:Предприятия». Поля те же: кластер (srv1c или srv1c:1641), имя базы в кластере, параметры СУБД.

Перенос существующей файловой базы в кластер: создайте пустую базу на сервере, откройте её в Конфигураторе и через Администрирование → Загрузить информационную базу загрузите выгрузку .dt, сделанную из файловой версии.

Строка подключения клиента к серверной базе выглядит так:

Srvr="srv1c";Ref="buh_main";

Публикация для веб-клиента

Если пользователи будут входить через браузер или мобильное приложение, базу из кластера дополнительно публикуют на веб-сервере. Это делают на машине с IIS или Apache через Конфигуратор: Администрирование → Публикация на веб-сервере. Конфигуратор для этого запускают от имени администратора Windows.

Мониторинг кластера и ускорение работы

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

Что смотреть в консоли

  • 👥 Сеансы — кто работает, в какой базе, с какого компьютера, сколько памяти и времени вызовов набрал сеанс.
  • 🔒 Блокировки — кто держит управляемые блокировки. Долгие блокировки объясняют «зависания» при проведении.
  • ⚙️ Рабочие процессы — память, число соединений и колонка «Доступная производительность». Если она стабильно падает, процессу тяжело.
  • 📋 Лицензии — сколько лицензий выдано и кем: сервером или клиентом.

То же доступно из командной строки через сервер администрирования ras и утилиту rac. Сначала поднимите ras в режиме кластера (по умолчанию слушает порт 1545), затем:

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

Остальные команды и параметры смотрите в rac help.

Технологический журнал

Для разбора медленных операций и ошибок включают технологический журнал. Настройка — файл logcfg.xml в каталоге conf платформы, например C:\Program Files\1cv8\conf\. Платформа подхватывает его без перезапуска службы.

Ограничивайте журнал событиями и сроком хранения. Журнал «всё подряд» за сутки забивает диск на десятки гигабайт.

Что реально ускоряет кластер

  1. Держите СУБД и сервер 1С в одной быстрой сети, лучше — на одной машине при небольшой нагрузке.
  2. Отдайте СУБД достаточно памяти и ограничьте её сверху, чтобы она не вытеснила процессы 1С.
  3. Включите регламентные операции СУБД: обновление статистики и обслуживание индексов.
  4. Отключите на сервере энергосбережение: в схеме электропитания Windows выберите «Высокая производительность».
  5. Исключите каталог srvinfo и файлы баз СУБД из проверки антивирусом в реальном времени.

Ошибки при запуске кластера 1С и как их снять

Большинство проблем первого запуска сводится к сети, версиям и лицензиям. Разберите свой симптом:

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

Частые промахи при настройке

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

Частые вопросы о кластере серверов 1С

Можно ли запустить два кластера на одном сервере?
Да. Создайте второй кластер в консоли с другим портом менеджера и непересекающимся диапазоном портов. Для полной изоляции ставят второй экземпляр службы агента со своими портами и каталогом srvinfo.
Нужна ли отдельная лицензия на каждый рабочий сервер?
Да, лицензия сервера нужна на каждый компьютер, где запускаются рабочие процессы. Клиентские лицензии считаются отдельно.
Можно ли держать СУБД и сервер 1С на разных машинах?
Можно. Важна скорость сети между ними: задержки сильно влияют на проведение документов. При небольшой нагрузке проще держать всё на одном сервере.
Как узнать, какой версии сервер 1С?
Посмотрите путь к ragent.exe в свойствах службы агента: номер сборки входит в имя каталога. В консоли версия видна в свойствах рабочих процессов.
Чем кластер отличается от файловой базы на сетевом диске?
В файловом варианте каждый клиент сам читает файл базы по сети. В кластере код и запросы выполняет сервер, а клиент получает только результат. Это быстрее при многих пользователях и надёжнее при обрывах сети.