Как настроить совместную работу консолей серверов 1С:Предприятия 8.2 и 8.3 на одном компьютере?

Системный администратор 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

При сопровождении информационных баз 1С нередко возникает необходимость параллельного запуска двух платформ разных версий (например, 1С:Предприятие 8.2 и 8.3) на одной операционной системе. Разделение сетевых портов для служб агентов серверов обычно не вызывает трудностей, однако системные администраторы часто сталкиваются с конфликтом оснасток администрирования MMC (1cv8.msc): центральные серверы дублируются в обеих консолях, изменение параметров в одной версии затрагивает другую, а при попытке указать другое имя центрального сервера система выдает ошибку о неизвестном хосте.

Разберем причины возникновения таких конфликтов и рассмотрим пошаговое руководство по полной изоляции двух серверов и их консолей управления.

Проанализируем природу проблемы. Конфликт возникает из-за трех основных факторов:

  1. Регистрация системной библиотеки: Консоль MMC обращается к серверу через COM-библиотеку radmin.dll. В операционной системе Windows одновременно может быть зарегистрирована только одна библиотека определенной версии. Если запущена оснастка 8.2, но в реестре зарегистрирована DLL от 8.3, консоль будет работать через интерфейс старшей версии.
  2. Имя центрального сервера: При создании узла в консоли платформа выполняет проверку сетевого имени. Если задано произвольное имя, не сопоставленное с локальным адресом, система сообщает о невозможности найти сетевой узел.
  3. Общие пути хранения данных: Если службам не указаны явные рабочие каталоги кластеров через параметр -d, они могут обращаться к общим ресурсам.

Шаг 1. Разделение каталогов данных и портов служб

Убедимся, что для каждой службы 1С:Предприятия заданы собственные сетевые порты и независимые каталоги кластеров. Настройка выполняется в свойствах службы или через редактирование ключа реестра ImagePath в ветке HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services.

Параметры запуска первой службы (например, 1С 8.2) оставляем стандартными:

  1. Порт главного агента (-port): 1540
  2. Порт главного менеджера кластера (-regport): 1541
  3. Диапазон рабочих процессов (-range): 1560:1591
  4. Каталог данных (-d): "C:\Program Files\1cv82\srvinfo"

Для второй службы (1С 8.3) смещаем диапазоны портов и явно указываем изолированный каталог данных:

  1. Порт главного агента (-port): 2540
  2. Порт главного менеджера кластера (-regport): 2541
  3. Диапазон рабочих процессов (-range): 2560:2591
  4. Каталог данных (-d): "C:\Program Files\1cv8\srvinfo"

Посмотрим на пример строки запуска второй службы в параметре реестра ImagePath:


"C:\Program Files\1cv8\8.3.24.1342\bin\ragent.exe" -srvc -agent -regport 2541 -port 2540 -range 2560:2591 -d "C:\Program Files\1cv8\srvinfo"

Шаг 2. Разделение сетевых имен для консолей

Чтобы обе консоли не путали узлы и корректно открывали структуру кластера, назначим центральным серверам разные имена хостов. Самый простой вариант — использовать в одной консоли реальное сетевое имя сервера (NetBIOS-имя), а во второй — системный псевдоним localhost или IP-адрес 127.0.0.1.

Если требуется назначить более понятные имена, проанализируем настройку локального файла hosts. Откроем файл C:\Windows\System32\drivers\etc\hosts с правами администратора и добавим псевдонимы для локального адреса:


127.0.0.1  srv1c-82
127.0.0.1  srv1c-83

После сохранения файла зарегистрируем центральные серверы в оснастках:

  1. В оснастке для платформы 8.2 создаем центральный сервер с именем srv1c-82 (или сетевым именем компьютера) и портом 1540.
  2. В оснастке для платформы 8.3 создаем центральный сервер с именем srv1c-83 (или localhost) и портом 2540.

Шаг 3. Изоляция COM-библиотек консолей администрирования

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

Командный файл для запуска консоли 1С:Предприятия 8.2 (run_console_82.cmd):


regsvr32 /s "C:\Program Files\1cv82\8.2.19.130\bin\radmin.dll"
start "" "C:\Program Files\1cv82\8.2.19.130\bin\1cv8.msc"

Командный файл для запуска консоли 1С:Предприятия 8.3 (run_console_83.cmd):


regsvr32 /s "C:\Program Files\1cv8\8.3.24.1342\bin\radmin.dll"
start "" "C:\Program Files\1cv8\8.3.24.1342\bin\1cv8.msc"

Примечание: Если на 64-битной операционной системе установлена 32-разрядная версия сервера 1С, пути к каталогам необходимо скорректировать на Program Files (x86).

Шаг 4. Настройка стабильного автозапуска служб

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

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

  1. Откроем системную оснастку управления службами (services.msc).
  2. Для службы второй платформы (например, 1С 8.3) выберем тип запуска Автоматически (отложенный запуск). Это позволит первой службе занять свои ресурсы без конкуренции.
  3. Назначим службам зависимость от сетевых компонентов (Tcpip и LanmanServer). Для этого запустим командную строку от имени администратора и выполним команду:

sc config "1C:Enterprise 8.3 Server Agent" depend= LanmanServer/Tcpip

Такой комплекс мер полностью устраняет взаимное влияние серверов 1С:Предприятия версий 8.2 и 8.3, обеспечивая стабильную работу служб и раздельное администрирование через консоли MMC.

← На главную