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

· 10 мин

Содержание

В поле «Кластер серверов 1С:Предприятия» указывают сетевое имя компьютера, где работает центральный сервер 1С, и при нестандартном порте — порт кластера через двоеточие: srv1c или srv1c:1641. В поле «Имя информационной базы в кластере» — имя базы так, как оно зарегистрировано в кластере (видно в консоли администрирования), а не имя базы данных на SQL Server или PostgreSQL. Порт по умолчанию — 1541, его можно не писать.

Больше ничего клиенту не нужно: ни IP рабочих процессов, ни логина к СУБД, ни имени самого кластера из консоли.

Какие имена путают при настройке кластера серверов 1С

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

Что этоГде задаётсяНужно ли клиенту
Сетевое имя сервера (srv1c, srv1c.corp.local)Имя компьютера в Windows/Linux, DNS✅ Да — первая часть поля «Кластер серверов»
Имя кластера («Локальный кластер», «Бухгалтерия-прод»)Свойства кластера в консоли❌ Нет, это просто подпись
Имя информационной базы в кластере (buh)Регистрация базы в кластере✅ Да — поле «Имя информационной базы в кластере»
Имя базы данных в СУБД (buh_2024)SQL Server / PostgreSQL❌ Нет, его знает только кластер

Имя кластера — логическая подпись для администратора. Его видно в дереве консоли, но клиент к нему не обращается. Переименование кластера на подключение пользователей не влияет.

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

Регистр букв в имени базы в кластере значения не имеет: Buh и buh — одно и то же. А вот лишний пробел в конце, скопированный из письма админа, — уже другое имя.

Физическое имя сервера: короткое или полное

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

  • 🖥️ имя сервера должно разрешаться с каждого клиента — через DNS или файл hosts;
  • 🔁 если сервер зарегистрирован как srv1c, а клиенты находят его только по srv1c.corp.local, первое соединение пройдёт, а следующее — к рабочему процессу — может упасть;
  • 🚫 нельзя оставлять в свойствах рабочего сервера имя localhost: удалённые клиенты попытаются соединиться сами с собой.

Формат адреса и порты подключения к кластеру

Строка подключения клиент-серверной базы в списке баз (ibases.v8i) выглядит так:

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

Srvr — то, что вы вписали в поле «Кластер серверов», Ref — имя базы в кластере. Варианты записи Srvr:

ЗаписьКогда использовать
srv1cОдин кластер на сервере, порт по умолчанию 1541
srv1c:1641На сервере несколько кластеров или служба установлена со смещёнными портами
192.168.10.15Временная проверка, когда DNS не работает. Для постоянной работы лучше имя
srv1c:1541,srv1c-rez:1541Резервирование: в кластере есть резервный менеджер на втором сервере

Какие порты за что отвечают

Сервер 1С 8.3 по умолчанию использует три группы портов. Клиенту нужен доступ ко всем, кроме, при желании, порта агента.

ПортКто слушаетКто подключается
1540Агент сервера (ragent)Консоль администрирования, сервер администрирования RAS
1541Главный менеджер кластера (rmngr)Клиенты: именно этот порт указывают в адресе кластера
1560–1591Рабочие процессы (rphost)Клиенты после того, как менеджер выдал им процесс
1545Сервер администрирования RAS (если запущен)Утилита rac

Диапазон 1560–1591 задаётся в свойствах рабочего сервера, а не кластера. Если его поменяли, открывать в брандмауэре нужно новый диапазон.

Самая частая причина «подключение то работает, то нет» — открыт только 1541. Менеджер отвечает, а соединение с рабочим процессом блокируется. Открывайте в брандмауэре сервера весь диапазон рабочих процессов.

Несколько кластеров на одном сервере

Когда на одном компьютере стоят две службы сервера 1С (например, разных версий платформы), вторая устанавливается со смещением портов: агент 1640, кластер 1641, процессы 1660–1691. Тогда в клиенте пишут srv1c:1641. Без порта клиент уйдёт на 1541 — в первый кластер — и сообщит, что базы там нет.

Порт агента (1640) в поле клиента не пишут: клиенту нужен порт кластера.

Подключение к кластеру 1С в доменной сети

В домене Active Directory подключение работает и с паролем 1С, и со сквозной аутентификацией Windows. Для второй нужна настройка Kerberos.

  1. Служба сервера 1С должна работать от доменной учётной записи (часто её называют usr1cv8), а не от локальной.
  2. Для этой учётной записи регистрируют имя участника службы (SPN). Это делает администратор домена:
setspn -A usr1cv8/srv1c.corp.local CORP\usr1cv8
setspn -A usr1cv8/srv1c CORP\usr1cv8
  1. В свойствах пользователя информационной базы включают аутентификацию операционной системы и указывают пользователя в формате \\CORP\ivanova.
  2. Клиенты подключаются по тому имени сервера, для которого зарегистрирован SPN.

Почему две строки setspn: клиент может обратиться к серверу и по короткому, и по полному имени. Kerberos сверяет имя, по которому пришли, с зарегистрированным SPN. Нет записи для короткого имени — сквозной вход по srv1c не сработает, а по srv1c.corp.local пройдёт.

Проверить, что SPN уже есть, можно командой setspn -L CORP\usr1cv8. Дубли одного SPN на разных учётных записях ломают Kerberos — их нужно убрать.

Если клиент не в домене или заходит через VPN без доступа к контроллеру домена, сквозной вход не сработает. Таким пользователям оставляют аутентификацию 1С с паролем.

Что указывать, если в кластере несколько рабочих серверов

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

Что настраивает администратор, а не пользователь:

  • 🧩 добавляет рабочие серверы в кластер в консоли администрирования;
  • ⚙️ в свойствах каждого рабочего сервера задаёт диапазон портов процессов и параметры количества баз и соединений на процесс;
  • 🎯 при необходимости задаёт требования назначения функциональности — например, вынести фоновые задания определённой базы на отдельный сервер;
  • 🛡️ включает второй центральный сервер, если нужна отказоустойчивость: тогда кластер можно обслуживать с двух машин.

Именно для отказоустойчивого варианта клиентам прописывают список серверов через запятую — srv1c:1541,srv1c-rez:1541. Если первый недоступен, клиент попробует второй. В обычной схеме с одним центральным сервером список не нужен.

Требование для всех: каждое имя рабочего сервера должно разрешаться с клиентов, а порты процессов на каждом сервере — быть открыты. Клиент может получить процесс на любом из них.

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

Проверка адреса до того, как звонить админу

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

  1. Проверить имя: ping srv1c. Нет ответа на имя, а по IP есть — проблема в DNS или hosts.
  2. Проверить порт кластера из PowerShell:
Test-NetConnection srv1c -Port 1541
Test-NetConnection srv1c -Port 1560

TcpTestSucceeded : True по обоим — сеть в порядке. Второй порт — первый из диапазона рабочих процессов.

  1. Проверить, под каким именем база зарегистрирована. Откройте консоль администрирования серверов 1С: Кластеры → <кластер> → Информационные базы. Имя из дерева и есть то, что пишут в поле Ref.
  2. На Linux-сервере или без консоли — через RAS и rac:
rac srv1c:1545 cluster list
rac srv1c:1545 infobase summary list --cluster=<UUID кластера>

UUID берут из вывода первой команды. Если на кластере задан администратор, понадобятся его логин и пароль — параметры смотрите в rac help infobase.

  1. Сравнить версии платформы. Клиент должен подключаться той же версией платформы, что установлена на сервере, до последней цифры. Номер версии сервера видно в консоли администрирования; клиентская версия задаётся в свойствах базы в списке баз, поле «Версия 1С:Предприятия».

Ошибки подключения к кластеру серверов 1С и их причины

Текст ошибки почти всегда подсказывает, на каком этапе оборвалось соединение: не нашли компьютер, не достучались до порта, не нашли базу.

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

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

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

При работе через браузер или тонкий клиент по HTTP пользователь вообще не видит адреса кластера: в списке баз указывают URL публикации, например https://1c.corp.local/buh. Связь с кластером прописана на веб-сервере, в файле default.vrd каталога публикации:

<point xmlns="http://v8.1c.ru/8.2/virtual-resource-system"
       base="/buh"
       ib="Srvr=&quot;srv1c&quot;;Ref=&quot;buh&quot;;">
</point>

В атрибуте ib — та же пара Srvr и Ref, что и в обычном клиенте. Кавычки внутри XML записаны как &quot;. Всё, что сказано выше про имя сервера, порт второго кластера и список резервных серверов, работает и здесь.

Публикацию можно сделать из Конфигуратора (Администрирование → Публикация на веб-сервере) или утилитой webinst из каталога bin платформы:

webinst -publish -iis -wsdir buh -dir "C:\inetpub\wwwroot\buh" -connstr "Srvr=srv1c;Ref=buh;"

Для Apache вместо -iis указывают ключ версии Apache, например -apache24, и путь к конфигурационному файлу через -confpath.

Что проверить, если публикация открывается с ошибкой:

  • 🔢 версия модулей расширения веб-сервера совпадает с версией сервера 1С — веб-сервер для кластера такой же клиент;
  • 👤 учётная запись пула приложений IIS или пользователь Apache имеет право работать с каталогом публикации;
  • 🌐 веб-сервер разрешает имя сервера 1С и достаёт до портов 1541 и 1560–1591 — если веб-сервер в DMZ, порты открывают из DMZ во внутреннюю сеть;
  • 🔐 для сквозного входа через браузер на веб-сервере настраивают отдельную аутентификацию Windows — Kerberos из раздела про домен работает для тонкого клиента напрямую, а не для публикации.

Частые ошибки и как их избежать

  • ❌ Пишут порт агента 1540 вместо порта кластера. Клиенту нужен 1541 (или ваш смещённый порт кластера). 1540 — для консоли.
  • ❌ Вписывают IP в список баз всем пользователям. Сменится адрес сервера — придётся перенастраивать каждый компьютер. Используйте имя и DNS.
  • ❌ Регистрируют базу в кластере под одним именем, а в общий список баз (ibases.v8i или файл общих баз) вносят другое. Сверяйте с деревом консоли.
  • ❌ Оставляют рабочий сервер под именем localhost. На самом сервере всё работает, у клиентов — нет.
  • ❌ Ставят клиентам «последнюю» платформу, не обновив сервер. Версии должны совпадать.

Частые вопросы о подключении к кластеру

Можно ли указать IP-адрес вместо имени сервера 1С?
Можно, для проверки это удобно. Но рабочие процессы клиенту всё равно сообщит менеджер кластера по зарегистрированному имени, поэтому имя сервера должно разрешаться с клиента в любом случае.
Нужно ли пользователю знать логин и пароль администратора кластера?
Нет. Они нужны только для действий в консоли: создание баз, завершение сеансов, изменение настроек. Для работы в базе достаточно пользователя информационной базы.
Где хранится список баз с этими настройками?
В файле ibases.v8i в профиле пользователя (%APPDATA%\1C\1CEStart\). Админ может раздать общий список через файл общих баз, указанный в настройках окна запуска.
Как подключить базу, если кластер на Linux?
Так же: имя сервера и имя базы в кластере. Клиенту неважно, на какой ОС работает сервер. Отличия только в администрировании — вместо консоли под Windows обычно используют RAS и rac.
Что указывать при подключении через интернет без VPN?
Открывать порты кластера наружу небезопасно. Правильнее опубликовать базу на веб-сервере с HTTPS и подключаться по URL публикации.