Как перенести настройки кластера и восстановить подключение клиентов при переходе с 32-битного сервера 1С на 64-битный?

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

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

Причина возникновения проблемы

Проанализируем архитектурные особенности хранения данных кластера серверов 1С под управлением ОС Windows. По умолчанию при инсталляции службы агента сервера ragent.exe путь к каталогу данных кластера srvinfo формируется относительно рабочего каталога исполняемых файлов платформы:

  1. Для 32-разрядного сервера (x86) данные располагаются по пути: C:\Program Files (x86)\1cv8\srvinfo
  2. Для 64-разрядного сервера (x64) данные размещаются по пути: C:\Program Files\1cv8\srvinfo

В каталоге srvinfo хранятся файлы конфигурации кластера (список информационных баз, параметры рабочих процессов, администраторы кластера, настройки блокировок и журналы регистрации). Когда разворачивается 64-битный сервер, он создает новый, совершенно чистый каталог данных со стандартными настройками и пустым списком баз. В результате клиентские подключения терпят неудачу, так как запрашиваемых баз в новом кластере просто нет.

Способ 1. Ручной перенос файлов конфигурации кластера

Рассмотрим самый быстрый способ восстановления настроек, если 64-битная служба уже развернута со стандартными параметрами каталога данных.

Разберем по шагам порядок действий:

  1. Остановим обе службы сервера 1С через консоль services.msc (и старую 32-битную, и новую 64-битную).
  2. Откроем каталог старого сервера: C:\Program Files (x86)\1cv8\srvinfo.
  3. Скопируем файлы с расширением *.lst (в частности, 1cv8wsrv.lst — реестр центрального сервера, а также файлы 1cv8reg.lst из подкаталогов кластера) в соответствующий каталог 64-разрядного сервера: C:\Program Files\1cv8\srvinfo.
  4. Очистим временные кэши сессий (каталоги вида snccntx*) в целевой папке, чтобы исключить конфликты зависших соединений.
  5. Проверим права доступа учетной записи, от имени которой запущена служба сервера 1С (обычно USR1CV8), на каталог C:\Program Files\1cv8\srvinfo и все вложенные объекты (пользователь должен иметь полные права).
  6. Запустим службу 64-разрядного сервера 1С и проверим подключение через консоль кластера и клиентские приложения.

Способ 2. Вынесение каталога srvinfo за пределы каталогов установки

Лучшей практикой системного администрирования 1С является вынесение данных кластера в отдельный независимый каталог (например, на выделенный быстрый диск D:\1C_Data\srvinfo). В таком случае при любых будущих обновлениях платформы или смене разрядности настройки баз и журналы регистрации никогда не потеряются и не затрутся установщиком.

Разберем, как перенастроить службу сервера 1С на общий каталог данных:

  1. Остановим службу сервера «1С:Предприятие 8.3».
  2. Откроем редактор реестра Windows regedit.
  3. Перейдем в раздел:
    
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.3 Server Agent
    
  4. Найдем строковый параметр ImagePath и скорректируем ключ -d, указав постоянный путь к каталогу данных:
    
    "C:\Program Files\1cv8\8.3.X.XXXX\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "D:\1C_Data\srvinfo"
    
  5. Перенесем все содержимое из прежнего каталога srvinfo в новый путь D:\1C_Data\srvinfo.
  6. Предоставим полные права учетной записи службы 1С (USR1CV8) на созданную папку D:\1C_Data\srvinfo.
  7. Запустим службу сервера 1С.

Нюансы администрирования 64-битного сервера

Выясним дополнительные технические моменты, на которые следует обратить внимание при переходе на 64-разрядный сервер:

  1. Регистрация оснастки консоли MMC: если консоль администрирования не открывается или выдает ошибки несоответствия версий, необходимо зарегистрировать 64-битную библиотеку администрирования. Выполним команду в командной строке от имени администратора: regsvr32 "C:\Program Files\1cv8\8.3.X.XXXX\bin\radmin.dll"
  2. Драйверы и клиенты СУБД: 64-разрядный процесс сервера rphost.exe требует обязательного наличия 64-разрядных драйверов доступа к базам данных (SQL Server Native Client, OLE DB Driver, PostgreSQL x64 client).
  3. Внешние компоненты и COM-объекты: 64-битный сервер 1С не может напрямую обращаться к 32-битным COM-библиотекам и DLL. Их необходимо либо обновить до 64-битных версий, либо настраивать через приложение COM+ (dllhost.exe).
  4. Лицензирование: для запуска 64-разрядного сервера 1С требуется серверная лицензия x86-64 (лицензия 32-бит не позволяет запускать 64-битный рабочий процесс).
← На главную