Администрирование · 10 мин
Как объединить кластеры 1С
Как объединить кластеры серверов 1С:Предприятие: подготовка, перенос баз, настройка агентов и проверка. Практическая инструкция с типичными ошибками.
Объединение кластеров 1С — задача, которая возникает при консолидации инфраструктуры после слияния компаний, при миграции на новое оборудование или при сокращении числа серверов приложений. Под объединением обычно понимают два сценария: перенос информационных баз из одного кластера сервера 1С:Предприятие в другой и слияние двух физических серверов в единый кластер с общим агентом.
Важно сразу разграничить понятия: кластер серверов 1С — это логическая структура процессов ragent, rmngr и rphost, а не объединение баз данных. Сами базы данных хранятся в СУБД (MS SQL Server, PostgreSQL), и при «объединении кластеров» чаще всего достаточно перенести регистрацию баз между кластерами, не трогая данные. Полноценное слияние данных двух разных информационных баз — отдельная и гораздо более сложная задача, решаемая средствами конвертации данных.
Ниже разобраны оба сценария: перенос баз между кластерами на уровне сервера 1С и объединение данных из двух баз в одну. Выбор зависит от того, что именно требуется: свести администрирование в одну точку или получить единую учётную систему.
Определите, какой сценарий объединения вам нужен
Прежде чем что-либо менять, ответьте на вопрос: данные в базах одинаковые или разные? Если на двух серверах крутятся разные учётные базы (например, бухгалтерия на одном кластере и зарплата на другом), то задача сводится к переносу регистрации баз в один кластер — данные в СУБД остаются на месте.
Если же две организации вели учёт в двух похожих базах (например, две «Бухгалтерии предприятия» после слияния юрлиц) и требуется одна общая база, объединение кластеров — лишь малая часть работы. Основной объём займёт перенос справочников, документов и остатков с контролем дублей.
Как выбрать действие
Подготовка: что проверить перед объединением
Любые операции с кластером начинайте с резервных копий. Сделайте бэкап всех баз средствами СУБД и дополнительно выгрузите критичные базы в dt-файлы. Перенос регистрации сам по себе данные не затрагивает, но при ошибках в настройках или несовпадении версий платформы последствия могут быть серьёзными.
Проверьте версии платформы 1С:Предприятие на обоих серверах. Рабочий сервер, добавляемый в кластер, должен иметь ту же версию платформы, что и центральный сервер кластера. Также убедитесь, что агенты серверов (ragent) доступны по сети: по умолчанию используются порты 1540 (агент), 1541 (менеджер кластера) и диапазон 1560–1591 (рабочие процессы).
Составьте список информационных баз в исходном кластере: имена баз, серверы СУБД, типы СУБД, блокировки регламентных заданий. Этот список понадобится для переноса и последующей сверки.
Перенос информационных баз из одного кластера в другой
Откройте консоль администрирования серверов 1С и подключитесь к обоим кластерам. В исходном кластере найдите нужную информационную базу, откройте её свойства и зафиксируйте параметры: имя базы на сервере СУБД, сервер баз данных, тип СУБД, имя пользователя СУБД.
В целевом кластере создайте новую информационную базу, но вместо создания новой базы данных укажите параметры существующей — ту же СУБД, тот же сервер и то же имя базы данных. Платформа зарегистрирует существующую базу в новом кластере без изменения данных. После регистрации проверьте подключение через конфигуратор или тонкий клиент.
Когда база работает в новом кластере, удалите её регистрацию из старого. В диалоге удаления обязательно выберите вариант без удаления базы данных в СУБД. После переноса всех баз и проверки работы пользователей старый кластер можно остановить и вывести сервер из эксплуатации.
- 1Сделайте резервную копию базы средствами СУБД
- 2Запишите параметры базы из свойств в исходном кластере
- 3Заблокируйте сеансы и регламентные задания в исходной базе
- 4Создайте регистрацию базы в целевом кластере с указанием существующей базы данных
- 5Проверьте вход в базу через тонкий клиент и конфигуратор
- 6Удалите регистрацию из исходного кластера без удаления данных в СУБД
- 7Проверьте работу регламентных заданий и фоновых процессов в новом кластере
Объединение двух серверов в один кластер
Если цель — отказоустойчивость или распределение нагрузки, второй сервер добавляется в существующий кластер как рабочий. На втором сервере установите ту же версию платформы 1С:Предприятие и запустите службу агента сервера.
В консоли администрирования откройте целевой кластер, в ветке «Рабочие серверы» добавьте новый сервер по имени или IP-адресу. После добавления настройте требования назначения функциональности: укажите, какие сервисы и рабочие процессы могут выполняться на каждом сервере. Без явных требований кластер распределяет нагрузку автоматически, что не всегда оптимально.
Обратите внимание на реестр кластера: файл 1CV8Clst.lst и каталог srvinfo хранятся на центральном сервере. При добавлении второго сервера центральным остаётся первый; для повышения отказоустойчивости настройте резервирование кластеров — регистрацию одного кластера на нескольких серверах.
Объединение данных двух информационных баз
Если требуется слить данные двух баз с одинаковой конфигурацией, штатный путь — синхронизация данных через план обмена. В типовых конфигурациях («Бухгалтерия предприятия», «Зарплата и управление персоналом», «Управление торговлей») есть встроенные механизмы обмена, которые настраиваются в разделе администрирования.
Для нестандартных случаев используется «Конвертация данных 2.1» или «Конвертация данных 3.0»: разрабатываются правила обмена, по которым справочники и документы переносятся из базы-источника в базу-приёмник. Это проектная задача: потребуется сопоставление справочников, контроль дублей по ключевым полям и перенос остатков на дату свёртки.
Практический порядок такой: сначала переносят нормативно-справочную информацию и сверяют её, затем вводят начальные остатки на дату перехода, и только после этого переносят документы текущего периода. Попытка перенести всё разом почти всегда приводит к расхождениям в остатках и дублям контрагентов и номенклатуры.
Проверка результата после объединения
После переноса баз проверьте список баз в целевом кластере и сравните его с исходным списком, составленным на этапе подготовки. Войдите в каждую базу тонким клиентом, убедитесь, что открываются журналы документов и отчёты, выполните тестовый запуск регламентного задания.
Для объединённого кластера из двух серверов проверьте распределение рабочих процессов rphost по серверам и корректность применения лицензий — программные лицензии привязаны к серверу, и при переносе рабочих процессов может потребоваться повторная активация.
При объединении данных контрольными точками служат: оборотно-сальдовая ведомость на дату свёртки (должна совпадать с суммой данных двух исходных баз), отчёт по остаткам склада, отсутствие дублей в справочниках контрагентов и номенклатуры.
Как проверить результат
Все базы из исходного списка зарегистрированы и доступны
База отсутствует или выдаёт ошибку подключения к СУБД
Процессы распределены по серверам согласно требованиям
Все процессы висят на одном сервере или не стартуют
ОСВ на дату свёртки сходится с суммой исходных баз
Расхождения по счетам, задвоенные остатки
Задания выполняются в новом кластере по расписанию
Задания заблокированы или дублируются
Ограничения и когда лучше привлечь специалиста
Самостоятельный перенос регистрации баз между кластерами — безопасная операция при наличии резервных копий и внимательности с флажками удаления. Но есть ситуации, где риски заметно выше: кластеры с большим числом активных пользователей, интеграции через веб-сервисы, привязка программных лицензий к конкретному оборудованию, использование СУБД с репликацией.
Объединение данных двух рабочих баз почти всегда требует участия специалиста по 1С: нужно разрабатывать или адаптировать правила обмена, решать конфликты дублей и организовывать параллельную работу на период перехода. Ошибки здесь ведут к искажению учётных данных, восстановление которых обойдётся дороже самого проекта.
Что важно запомнить
Объединение кластеров 1С — это перенос регистрации баз и добавление рабочих серверов, данные в СУБД при этом не меняются. Объединение данных двух баз — отдельная задача через синхронизацию или конвертацию данных. Всегда делайте резервные копии и не удаляйте данные из исходного кластера до полной проверки работы в целевом.
Частые вопросы
Можно ли объединить кластеры с разными версиями платформы 1С?
Нет, в один кластер должны входить серверы с одной и той же версией платформы. Если версии различаются, сначала обновите платформу на отстающем сервере, проверьте совместимость конфигураций и только потом добавляйте сервер в кластер.
Что происходит с лицензиями при объединении серверов в кластер?
Программные лицензии привязываются к аппаратным параметрам конкретного сервера. При добавлении нового сервера в кластер для него может потребоваться отдельный комплект лицензий или перенос существующих с повторной активацией. Аппаратные ключи HASP работают в пределах сервера, где установлены.
Можно ли объединить две базы с разными конфигурациями?
Напрямую — нет. Нужно либо привести конфигурации к одной (например, перейти обе организации на одну типовую), либо использовать конвертацию данных с правилами сопоставления объектов разных конфигураций. Второй путь трудоёмок и требует разработки правил обмена.
Нужно ли останавливать работу пользователей при переносе базы в другой кластер?
Да, на время переноса сеансы следует завершить и заблокировать новые подключения. Сама операция регистрации занимает минуты, но без блокировки пользователи могут продолжить работу в старом кластере и потерять изменения после переключения.
Как не потерять данные при удалении базы из старого кластера?
В диалоге удаления информационной базы платформа предлагает три варианта: удалить базу данных в СУБД, очистить или оставить без изменений. Выбирайте вариант без удаления данных в СУБД. Перед удалением убедитесь, что база уже зарегистрирована и работает в новом кластере, а резервная копия существует и проверена восстановлением.