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

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

Как запустить кластер серверов 1С

Как запустить кластер серверов 1С: установка агента, создание центрального сервера, настройка рабочих процессов, требований назначения и проверка отказоустойчивости.

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

Запуск кластера сводится к нескольким обязательным шагам: установить сервер 1С, убедиться, что служба агента работает, зарегистрировать центральный сервер в консоли администрирования и создать рабочий кластер с нужными параметрами. Дальше к нему подключают базы, настраивают рабочие процессы и, при необходимости, добавляют второй сервер для отказоустойчивости.

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

Что понадобится перед запуском

Для работы кластера нужен выделенный сервер (физический или виртуальный) с установленной платформой 1С:Предприятие в варианте «Сервер 1С:Предприятия». Разрядность платформы должна соответствовать ожидаемой нагрузке: 64-разрядный сервер снимает ограничения по памяти на рабочий процесс и является стандартным выбором для производственных систем.

Кроме самой платформы потребуется сервер СУБД — чаще всего Microsoft SQL Server или PostgreSQL (в том числе сборка Postgres Pro). Кластер 1С не хранит данные сам: он управляет сеансами, фоновыми заданиями и взаимодействием с СУБД. Поэтому перед запуском убедитесь, что СУБД установлена, доступна по сети и для неё создана учётная запись с правами на создание баз.

Также заранее проверьте сетевые условия: порты кластера (по умолчанию 1540, 1541 и диапазон 1560–1591 для рабочих процессов) должны быть открыты в брандмауэре, а имя сервера должно корректно разрешаться в DNS со всех клиентских машин. Проблемы с DNS — одна из самых частых причин «невидимого» кластера.

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

Запустите установщик платформы и выберите компоненты «Сервер 1С:Предприятия» и «Администрирование сервера 1С:Предприятия». Последняя компонента ставит консоль управления кластером — без неё настраивать кластер придётся через утилиту командной строки rac, что менее наглядно.

После установки проверьте, что служба «Агент сервера 1С:Предприятия» запущена. В Windows это делается через оснастку services.msc, в Linux — через systemctl. Если служба не стартует, чаще всего причина в правах учётной записи службы или в занятом порте 1540.

bash
sc query "1C:Enterprise 8.3 Server Agent"  # Windows: статус службы
systemctl status srv1cv83                 # Linux: статус службы

Каталог srvinfo (обычно внутри Program Files или в каталоге данных агента) — это рабочее хранилище кластера: реестр кластера, список баз, журналы. Не удаляйте и не перемещайте его при работающем агенте. Если планируется размещать журналы на отдельном диске, настройте это до запуска нагрузки.

Создание кластера в консоли администрирования

Откройте консоль «Администрирование серверов 1С:Предприятия». При первом запуске список пуст: консоль сама ничего не знает о ваших серверах. Через контекстное меню добавьте центральный сервер — укажите его имя или IP-адрес. Если консоль запущена на той же машине, достаточно имени localhost.

После регистрации сервера в дереве появится узел «Кластеры», а в нём — локальный кластер с портом 1541, который создаётся автоматически при первом запуске агента. Если вы разворачиваете кластер вручную (например, через rac), кластер создаётся явно с указанием порта и имени.

Порядок действий
  1. 1
    Установите компоненты «Сервер 1С» и «Администрирование сервера» на выделенную машину
  2. 2
    Проверьте, что служба агента сервера запущена и порт 1540 слушается
  3. 3
    Откройте консоль администрирования и добавьте центральный сервер по имени или IP
  4. 4
    Убедитесь, что в узле «Кластеры» есть кластер с портом 1541
  5. 5
    Добавьте информационную базу: укажите тип СУБД, сервер БД, имя базы и учётные данные
  6. 6
    Подключитесь клиентом 1С через строку Srvr="ИмяСервера";Ref="ИмяБазы" и проверьте сеанс

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

Подключение информационных баз

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

После добавления базы проверьте подключение толстым или тонким клиентом. Строка подключения к клиент-серверной базе выглядит как Srvr="ИмяСервера";Ref="ИмяБазы". Если клиент не подключается, проверяйте по цепочке: доступен ли сервер по имени, открыт ли порт 1541, работает ли СУБД, верны ли учётные данные.

Контрольные точки

Как проверить результат

Служба агента сервера
Норма

Статус «Работает», порт 1540 прослушивается (netstat -an)

Тревожный признак

Служба остановлена или падает сразу после старта

Кластер в консоли
Норма

Кластер виден, рабочие процессы в статусе «работает»

Тревожный признак

Кластер не отображается или процессы не стартуют

Подключение клиента
Норма

Сеанс открывается, в консоли виден активный сеанс

Тревожный признак

Ошибка соединения или таймаут на клиенте

Журнал регистрации кластера
Норма

Нет повторяющихся ошибок подключения к СУБД

Тревожный признак

Ошибки аутентификации или недоступности СУБД

Настройка рабочих процессов и отказоустойчивости

Рабочий процесс (rphost) обслуживает сеансы пользователей. Один процесс на большой базе рано или поздно упирается в память или становится единой точкой отказа: при его аварийном завершении сеансы обрываются. Поэтому в продуктивной среде настраивают несколько рабочих процессов и ограничения по памяти на процесс.

В свойствах кластера полезно задать «Допустимый объем памяти» для рабочих процессов и «Интервал перезапуска». Перезапуск по расписанию (например, раз в сутки в нерабочее время) сбрасывает накопленную фрагментацию памяти и утечки — это штатная практика, а не признак проблемы.

Для настоящей отказоустойчивости нужен второй сервер с установленным агентом, добавленный в тот же кластер как рабочий сервер. Уровень отказоустойчивости в свойствах кластера определяет, сколько узлов может выйти из строя без потери работоспособности. Учтите: резервирование касается сеансов и соединений, но не данных — за сохранность базы отвечают резервные копии на стороне СУБД.

Требования назначения функциональности

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

Типовой сценарий: на одном сервере разрешены только клиентские соединения, на втором — фоновые задания и регламентные операции. Тогда тяжёлый отчёт в фоне не будет конкурировать за ресурсы с интерактивной работой пользователей. Настраивается это в консоли, в узле рабочего сервера, через список требований с признаками «Требовать», «Не требовать», «Автоматически».

Типичные ошибки
01
Привязка кластера к IP вместо имени: при смене адреса все клиенты теряют подключение, а DNS-имя позволило бы переключиться прозрачно
02
Закрытые порты 1540–1591 в брандмауэре: консоль видит сервер, но клиенты не подключаются
03
Один рабочий процесс без ограничения памяти: при утечке процесс съедает всю память сервера и роняет сеансы
04
Все виды нагрузки на одном сервере при наличии второго: фоновые задания душат интерактивную работу
05
Нет резервных копий СУБД: отказоустойчивый кластер не заменяет бэкапы и не защищает данные

Проверка работоспособности и мониторинг

Минимальная проверка после запуска: кластер виден в консоли, рабочие процессы активны, тестовый клиент открывает сеанс, в списке сеансов он отображается. Дальше стоит понаблюдать за счётчиками: загрузка памяти процессами rphost, количество соединений, длительность вызовов. В Windows это делается через Performance Monitor со счётчиками процессов, в Linux — через стандартные средства мониторинга процессов.

Для диагностики узких мест включите технологический журнал на ограниченное время и с фильтрами по событиям — бесфильтровый журнал на нагруженном сервере быстро заполняет диск. Журнал регистрации самой базы покажет ошибки на уровне прикладной логики, а журналы СУБД — проблемы с запросами и блокировками.

Полезно сразу зафиксировать «эталонное» состояние: сколько памяти занимают процессы rphost в простое и под типовой нагрузкой. Когда через месяц пользователи начнут жаловаться на тормоза, сравнение с эталоном сразу покажет, ушло ли потребление памяти вверх или проблема в другом звене.
ПЗ
Практическое замечание

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

Можно ли запустить кластер 1С на одной машине с СУБД?

Технически да, и для небольших внедрений это рабочий вариант. Ограничение — конкуренция за память и процессор между рабочими процессами 1С и СУБД. На одной машине обязательно ограничьте память SQL-сервера, иначе он может занять почти всю память и оставить рабочие процессы 1С без ресурсов.

Чем отличаются порты 1540 и 1541?

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

Служба агента не стартует. С чего начать?

Проверьте три вещи: не занят ли порт 1540 другим процессом (например, второй установленной версией сервера), есть ли у учётной записи службы права на каталог srvinfo и не повреждён ли реестр кластера в этом каталоге. Точную причину обычно показывает журнал событий операционной системы.

Нужен ли второй сервер для отказоустойчивости?

Для защиты от сбоя оборудования — да: один сервер физически не может пережить собственный отказ. Но половину типовых проблем (падение рабочего процесса, утечки памяти) закрывает грамотная настройка нескольких процессов и их перезапуск на одном сервере. Второй узел добавляйте, когда стоимость простоя превышает стоимость дополнительного сервера и лицензий.

Как безопасно перезапустить кластер днём?

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

Что делать, если клиент видит сервер, но не подключается к базе?

Разделите проблему на два этапа. Если ошибка на этапе соединения — проверяйте порт 1541 и имя сервера. Если соединение есть, но база не открывается — проблема на стороне СУБД: проверьте, запущен ли сервер баз данных, существует ли база и есть ли у учётной записи, указанной в свойствах ИБ, права на неё.

Итог

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

Запуск кластера 1С — это установка сервера, работающая служба агента, регистрация центрального сервера в консоли и добавление баз. Стабильность обеспечивают несколько рабочих процессов с ограничением памяти, а отказоустойчивость — второй сервер в кластере. Резервные копии СУБД обязательны в любом случае: кластер защищает сеансы, но не данные.