Подключение и настройка кластера серверов 1С:Предприятия 8.3

· 10 мин

Содержание

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

Частое заблуждение: «кластер» — это несколько физических серверов. На деле кластер есть даже на одной машине. Это логическая группа процессов, которая обслуживает базы. Один сервер с одной службой — уже полноценный кластер серверов 1С:Предприятия.

1. Из чего состоит кластер 1С и как процессы общаются между собой

Прежде чем настраивать, полезно знать, какой процесс за что отвечает. Это сильно экономит время, когда что-то не подключается.

КомпонентПроцессПорт по умолчаниюЧто делает
Агент сервераragent1540Принимает первое обращение клиента, хранит список кластеров
Менеджер кластераrmngr1541Управляет базами, сеансами, блокировками, лицензиями
Рабочие процессыrphost1560–1591Выполняют код конфигурации и запросы к СУБД
Сервер администрированияras1545Нужен для утилиты rac и сторонних консолей
Сервер СУБДMS SQL, PostgreSQL и др.свойХранит сами данные базы

Как проходит подключение клиента:

  1. 🖥️ Клиент обращается к агенту или сразу к менеджеру кластера по имени сервера.
  2. 🔀 Менеджер выбирает рабочий процесс и сообщает клиенту его порт из диапазона.
  3. 🔗 Клиент открывает соединение уже с rphost, и вся работа идёт через него.

Отсюда главное правило: клиент должен видеть сервер по имени и иметь доступ ко всем портам диапазона, а не только к 1541. Если открыть один порт, подключение «почти получится» и оборвётся на втором шаге.

Сервер СУБД может стоять на той же машине, что и сервер 1С, или на отдельной. Для небольших компаний (до 30–50 пользователей) обычно хватает одной машины, если на ней достаточно памяти.

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

Половина проблем с кластером закладывается ещё до установки. Пройдитесь по списку.

  • 🏷️ Имя сервера. Задайте понятное имя (например, srv1c) до установки. Кластер регистрируется по имени компьютера, и переименование потом приводит к ошибкам подключения.
  • 🌐 Разрешение имени. Клиенты должны находить сервер по имени: через DNS или через файл hosts. Проверка простая: ping srv1c с рабочего места.
  • 🔑 Лицензия на сервер. Нужна отдельная лицензия на сервер 1С:Предприятия (32- или 64-разрядный, либо КОРП). Клиентские лицензии её не заменяют.
  • 🗄️ СУБД. Установите MS SQL Server или PostgreSQL заранее и создайте пользователя с правом создавать базы.
  • 🔢 Версия платформы. Определитесь с номером сборки. На всех клиентах будет нужна ровно такая же.

Версия платформы на клиенте должна совпадать с версией сервера до последней цифры. Если сервер 8.3.24.1548, а клиент 8.3.24.1691 — подключиться не получится.

3. Установка серверной части платформы 1С

На Windows

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

Если служба работает от доменного пользователя, у него должно быть право «Вход в систему в качестве службы» и полный доступ к каталогу srvinfo (по умолчанию C:\Program Files\1cv8\srvinfo).

На Linux

Серверные пакеты ставятся из дистрибутива для Linux: в новых версиях это единый установщик, в старых — набор deb- или rpm-пакетов. Служба запускается через systemd. Её точное имя зависит от версии платформы, найти его можно так:

systemctl list-units --type=service | grep -i 1c

После установки проверьте, что процессы поднялись и слушают нужные порты:

ss -tlnp | grep -E '154[015]'

Открытие портов в брандмауэре

Для Windows правило можно добавить одной командой из консоли администратора:

netsh advfirewall firewall add rule name="1C Server" dir=in action=allow protocol=TCP localport=1540-1541,1560-1591

Если планируете утилиту rac, добавьте ещё порт 1545 — но открывайте его только для подсети администраторов.

4. Регистрация кластера и создание информационной базы

Подключение консоли администрирования

Консоль «Администрирование серверов 1С Предприятия» — это оснастка MMC. На Windows её нужно один раз зарегистрировать для нужной версии платформы:

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

Номер версии в пути подставьте свой. Консоль можно ставить и на рабочее место администратора — сервер для этого не нужен.

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

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

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

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

В ветке кластера откройте «Информационные базы» → Создать → Информационная база и заполните форму:

ПолеЧто указать
ИмяКороткое имя без пробелов, например buh — по нему подключаются клиенты
Сервер баз данныхИмя сервера СУБД, для именованного экземпляра MS SQL — srv1c\SQL2019
Тип СУБДMSSQLServer, PostgreSQL или другой
База данныхИмя базы в СУБД, удобно совпадающее с именем в кластере
Пользователь и парольУчётная запись СУБД с правом создавать базу
Смещение датДля MS SQL — 2000; для PostgreSQL поле не используется
Создать базу данных в случае ее отсутствияВключить для новой базы
Разрешить выдачу лицензий серверомДа, если клиентские лицензии стоят на сервере

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

Подключение клиента к базе в кластере

  1. В окне запуска нажмите Добавить → Добавление в список существующей информационной базы.
  2. Выберите «На сервере 1С:Предприятия».
  3. В поле «Кластер серверов 1С:Предприятия» укажите srv1c (или srv1c:1541, если порт нестандартный).
  4. В поле «Имя информационной базы в кластере» — buh.

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

Srvr="srv1c";Ref="buh";

Её удобно раздавать пользователям через общий файл списка баз ibases.v8i или через 1CEStart.cfg, чтобы не настраивать каждое рабочее место вручную.

5. Права администраторов, пользователи и лицензии на сервере

Сразу после установки кластер открыт для всех, кто имеет сетевой доступ к консоли. Это удобно для настройки и опасно в работе.

Администраторы кластера и центрального сервера

  • 👤 В узле «Администраторы» центрального сервера добавьте учётную запись администратора — она получит право управлять кластерами.
  • 👥 В узле «Администраторы» кластера добавьте тех, кто может создавать и удалять базы, завершать сеансы.
  • 🔐 Используйте аутентификацию паролем или ОС. После добавления первого администратора консоль начнёт запрашивать логин.

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

Блокировка регламентных заданий и сеансов

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

Как работают лицензии в кластере

ЛицензияГде активируетсяЗа что отвечает
Лицензия на сервер (32/64 бит, КОРП)На компьютере с сервером 1СПраво запустить кластер
Клиентские лицензииНа сервере или на рабочих местахЧисло одновременных сеансов

Программные лицензии на сервере хранятся в каталоге C:\ProgramData\1C\licenses. Если клиентские лицензии получены сервером, у базы должен стоять флаг «Разрешить выдачу лицензий сервером 1С:Предприятия».

Каждый дополнительный рабочий сервер в кластере тоже требует своей серверной лицензии. Без лицензии на сервер кластер не обслуживает базы — режима «поработать без лицензии» здесь нет.

6. Почему не подключается кластер серверов 1С: диагностика

Ошибки подключения к кластеру почти всегда сводятся к пяти причинам: имя, порты, версия, права, лицензия. Выберите свой симптом.

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

Диагностика из командной строки

Если запущен сервер администрирования ras, состояние кластера можно смотреть утилитой rac:

ras cluster --daemon   # запуск сервера администрирования на Linux; на Windows его ставят службой
rac cluster list
rac session list --cluster=<UUID кластера>

Первая команда показывает UUID кластера, вторая — активные сеансы. Остальные подкоманды смотрите в справке rac help.

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

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

Очистка кэша сервера

Когда кластер ведёт себя странно после аварийного отключения (сеансы «висят», база не открывается), помогает очистка сеансовых данных. Остановите службу, удалите папки snccntx* из каталога srvinfo\reg_1541 и запустите службу снова.

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

7. Настройка производительности кластера серверов 1С

Базовые настройки после установки рассчитаны на средний сервер. Когда пользователей становится больше 30–40, их стоит пересмотреть.

Параметры рабочего сервера

Откройте Кластер → Рабочие серверы → <ваш сервер> → Свойства:

  • 📦 Количество ИБ на процесс — сколько баз обслуживает один rphost. Значение 1 изолирует базы друг от друга: сбой в одной не затронет другие, но памяти уйдёт больше.
  • 🔌 Количество соединений на процесс — сколько клиентов на один рабочий процесс. Меньше значение — больше процессов, равномернее нагрузка на ядра.
  • 🧠 Критический объём памяти процессов — при его достижении сервер начинает принудительно обрывать тяжёлые вызовы. Ставьте с запасом относительно объёма ОЗУ, оставив память для СУБД и ОС.
  • ⏱️ Безопасный расход памяти за один вызов — защищает от «убегающих» отчётов, которые съедают всю память одним запросом.

Параметры кластера

  • 🔁 Интервал перезапуска рабочих процессов. Значение 86400 секунд (раз в сутки) освобождает накопленную память.
  • 📏 Допустимый объём памяти рабочих процессов: при превышении процесс перезапускается мягко, без обрыва сеансов.
  • ⚖️ Режим распределения нагрузки: «Приоритет по производительности» или «Приоритет по памяти».

Рекомендации по железу и СУБД

Число пользователейОЗУ сервера 1С + СУБДКомментарий
до 2016 ГБОдна машина, SSD обязательно
20–5032 ГБМожно оставить на одной машине
50–10064 ГБ и большеЛучше вынести СУБД на отдельный сервер

Цифры ориентировочные и зависят от конфигурации: ERP требовательнее Бухгалтерии в разы.

Для MS SQL ограничьте максимальную память экземпляра. Иначе СУБД заберёт почти всю ОЗУ, и рабочим процессам 1С её не хватит.

Регламентное обслуживание

  1. Настройте резервное копирование средствами СУБД, а не только выгрузкой .dt.
  2. Раз в неделю обновляйте статистику и перестраивайте индексы.
  3. Следите за размером журнала транзакций MS SQL — при модели восстановления «Полная» он растёт без ограничений, если нет копий журнала.

Перед изменением параметров кластера и любыми работами с базой сделайте резервную копию и согласуйте окно работ по регламенту.

8. Частые вопросы о подключении кластера 1С

Можно ли держать на одном сервере две версии платформы?
Да. Для второй версии устанавливают отдельную службу на другие порты, например 2540, 2541 и 2560–2591. Клиенты указывают кластер как srv1c:2541.
Нужен ли кластер, если пользователей всего пять?
Не обязательно. Файловый вариант нормально работает для небольших команд. Серверный нужен, когда пользователей больше 10–15, база крупная или нужны регламентные задания без открытого клиента.
Как перенести файловую базу в кластер?
Выгрузите базу в .dt через Конфигуратор, создайте пустую базу в кластере и загрузите в неё файл. Загрузка требует монопольного доступа к новой базе.
Можно ли подключиться к кластеру через интернет?
Напрямую по портам 1541 и 1560–1591 — не стоит. Безопаснее VPN или публикация базы на веб-сервере с доступом через тонкий или веб-клиент.
Где посмотреть, кто сейчас работает в базе?
В консоли администрирования: Информационные базы → <база> → Сеансы. Там же видно, какой рабочий процесс обслуживает сеанс.