Второй рабочий сервер 1С в кластере: установка и подключение

· 9 мин

Содержание

Второй сервер 1С ставят в два шага: на новую машину устанавливают ту же версию платформы с компонентой «Сервер 1С:Предприятия», затем в консоли администрирования добавляют её в существующий кластер как рабочий сервер. Информационные базы при этом переносить не нужно, они остаются на сервере СУБД.

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

Второй сервер не ускорит одно тяжёлое проведение или отчёт. Он распределяет сеансы, а не дробит один запрос. Если тормозит сама база или СУБД, второй сервер 1С ничего не даст.

1. Что подготовить до установки

Сначала убедитесь, что расширение имеет смысл, и соберите всё необходимое.

Проверьте узкое место. Откройте монитор ресурсов на текущем сервере в часы пик. Если процессор и память заняты рабочими процессами rphost, второй сервер поможет. Если упирается диск или SQL Server, сначала решайте это.

Что нужно на новой машине:

  • 🖥️ та же операционная система семейства, что и на первом сервере (смешивать Windows и Linux в одном кластере можно, но администрировать сложнее);
  • 💾 память с запасом: на каждый рабочий процесс закладывайте порядка 2-4 ГБ, на 100 активных пользователей обычно хватает 16-32 ГБ;
  • 🌐 быстрая сеть между серверами 1С и сервером СУБД, желательно 1 Гбит/с и выше, один сегмент или минимальные задержки;
  • 🔑 учётная запись для службы сервера 1С. Под Windows это обычно USR1CV8, под Linux — usr1cv8;
  • 📦 дистрибутив платформы точно той же версии и разрядности, что на первом сервере, вплоть до номера сборки.

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

Порты и брандмауэр

Серверы общаются между собой по нескольким портам. Откройте их в обоих направлениях между узлами кластера.

НазначениеПорт по умолчанию
Агент сервера (ragent)1540
Главный менеджер кластера (rmngr)1541
Диапазон рабочих процессов (rphost)1560-1591
Сервер администрирования (ras)1545

Клиентам нужен доступ к порту 1541 и диапазону рабочих процессов. Если вы меняли порты на первом сервере, на втором выставьте такие же.

2. Как установить платформу на второй узел

Запустите установщик платформы от имени администратора. Это обычный setup.exe, как при установке первого сервера.

  1. На шаге выбора компонентов отметьте «1С:Предприятие» и «Сервер 1С:Предприятия». Клиентские компоненты можно не ставить, на сервере они не нужны.
  2. Если нужны веб-публикации, отметьте модули расширения веб-серверов. Для простого рабочего сервера они лишние.
  3. Установщик предложит поставить сервер как службу Windows. Согласитесь.
  4. Задайте пользователя службы. Выберите «Установить от имени пользователя USR1CV8» и укажите пароль. Либо оставьте создание учётной записи установщику.
  5. Дождитесь завершения и проверьте, что служба «Агент сервера 1С:Предприятия 8.3» запущена.

На Linux порядок другой: ставят пакеты 1c-enterprise-*-common, -server и при необходимости -ws, после чего запускают службу srv1cv8. Служба стартует от usr1cv8.

Не запускайте службу под учётной записью администратора. Права USR1CV8 нужны только на каталог данных сервера и сеть. Меньше прав — меньше последствий при взломе.

Каталог служебных данных

Каждый сервер хранит свои служебные файлы кластера: по умолчанию C:\Program Files\1cv8\srvinfo (путь в параметре запуска службы -d). Создайте каталог заранее и выдайте пользователю службы полный доступ. Диск лучше взять быстрый: туда пишутся журналы регистрации и временные файлы сеансов.

3. Как добавить второй сервер в кластер

Подключитесь консолью администрирования серверов 1С к первому серверу. Консоль ставится вместе с платформой или отдельным компонентом.

Шаги в консоли

  1. Разверните «Центральные серверы 1С:Предприятия», выберите свой сервер и нужный кластер.
  2. Найдите узел «Рабочие серверы» внутри кластера.
  3. Правой кнопкой по узлу — «Создать» → «Рабочий сервер».
  4. В поле «Имя компьютера» впишите имя или адрес второй машины. Порт агента — 1540, как на первой.
  5. Не ставьте галочку «Центральный сервер». Центральным остаётся первый, главный менеджер кластера живёт на нём.
  6. Задайте лимиты (описано в следующем разделе) и нажмите «ОК».

Через несколько секунд в списке рабочих серверов появится новая строка. Если вместо неё всплыла ошибка соединения, перечитайте раздел про порты. Проверьте, что по имени второй сервер резолвится с первого: впишите его в hosts или DNS.

Что такое «центральный» и «рабочий»

Центральный сервер хранит реестр кластера и запускает главный менеджер. Рабочий только выполняет сеансы. Если центральный упал, кластер встаёт целиком: рабочие серверы без него не живут. Настоящей отказоустойчивости второй сервер сам по себе не даёт. Для этого нужен второй кластер и балансировщик перед ним, это уже другая задача.

4. Настройка рабочих процессов и распределения нагрузки

Новый сервер появился, но пока не факт, что он получит пользователей. Теперь определите, как кластер будет раздавать сеансы.

Откройте свойства нового рабочего сервера. Три параметра важнее остальных:

  • Допустимый объём памяти рабочих процессов. При превышении кластер перезапустит процесс. Для сервера на 32 ГБ разумно начать со значения около 24 ГБ суммарно и смотреть динамику.
  • Безопасный расход памяти за один вызов. Защита от одного «жадного» запроса, который съест всё. Обычно ставят порядка 1-2 ГБ.
  • Количество информационных баз на рабочий процесс и соединений на рабочий процесс. Чем меньше значения, тем больше процессов запустится и тем стабильнее каждый. Часто работает схема 8-10 баз и 40-50 соединений на процесс.

Баланс между серверами

Откройте «Требования назначения функциональности» в кластере. Там задают, что и на каком сервере исполняется. По умолчанию всё распределяется автоматически, и кластер выбирает менее загруженный сервер. Для начала оставьте автоматику.

Когда понадобится ручное управление, возможны такие схемы:

СхемаКогда подходитРиск
Всё автоматическиОднотипные базы, равные серверыТяжёлые задания могут попасть на слабый сервер
Фоновые задания на втором, пользователи на первомМного регламентных заданий и обменаЕсли второй упадёт, регламент остановится
Крупная база на втором, остальные на первомОдна база создаёт основную нагрузкуНеравномерная загрузка, ручной подбор

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

5. Лицензии при двух серверах

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

Что обычно важно знать:

  • 🔑 Клиентские лицензии (на сеансы пользователей) выдаются кластеру и делятся между серверами. Перекупать их под второй сервер не надо, если число одновременных пользователей не выросло.
  • 🖥️ Серверная лицензия (программная или аппаратная) нужна для работы серверного ядра. Если ваша лицензия привязана к конкретной машине, на втором сервере придётся получить свою. Условия зависят от поставки: уточните у франчайзи.
  • 📋 Программные лицензии активируются на компьютере, где работает процесс, запрашивающий лицензию. Для второго узла нужна отдельная активация.
  • 🔌 Аппаратный ключ доступен только той машине, куда вставлен. Рабочий процесс на другом сервере его не увидит, если не настроен проброс ключа по сети.

Практический путь: после регистрации сервера откройте в консоли кластер, перейдите во «Лицензии» и посмотрите, какие выданы и кому. Если на втором сервере рабочие процессы запросили лицензию и получили отказ, ищите причину здесь.

Не пробуйте решать нехватку лицензий «обходными» способами. Используйте только легально приобретённые лицензии и официальную активацию через личный кабинет.

6. Что происходит с базами и метаданными

Это частый вопрос, поэтому коротко. Никакой репликации метаданных между серверами 1С не происходит. Конфигурация и данные хранятся в базе на сервере СУБД. Оба сервера 1С работают с одной и той же базой. Менять конфигурацию, обновлять её и загружать расширения нужно один раз, любым подключением к базе.

Что действительно хранится на каждом сервере:

  • служебные каталоги сеансов и кэш серверной части;
  • файлы журналов технологического журнала, если он включён;
  • параметры запуска службы.

Отсюда следствие: файловые общие ресурсы между серверами для работы кластера не нужны. Если вы используете внешние обработки, шаблоны или вложения, лежащие на диске, поместите их на общий сетевой ресурс. Иначе одни и те же файлы окажутся на разных серверах в разных версиях.

7. Как проверить, что второй сервер работает

Недостаточно увидеть сервер в списке. Убедитесь, что он берёт нагрузку.

Быстрая проверка

Откройте «Рабочие процессы» в кластере. Колонка с именем сервера покажет, где запущен каждый rphost. Пусть пользователи поработают, потом проверьте распределение сеансов в узле «Сеансы». Удобно отсортировать по колонке «Компьютер» или по серверу.

Что считать нормой для двух равных серверов: примерно поровну, с перекосом не более 60 на 40. Если все сеансы по-прежнему на первом, значит назначение функциональности где-то фиксирует всё на нём.

Чек-лист запуска

Ввод второго сервера в работу
Выполнено: 0 / 8

Мониторинг

Через неделю после запуска посмотрите:

  • пиковое потребление памяти каждым rphost;
  • число перезапусков рабочих процессов по превышению лимита (журнал в консоли);
  • время отклика типовых операций: проведение документа, формирование ключевого отчёта.

Сравните с цифрами до расширения. Если улучшения нет, значит ограничивала не серверная часть.

8. Типичные проблемы после запуска

Если второй сервер не появляется, не стартует или простаивает, смотрите по симптому.

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

Частые вопросы

Можно ли поставить второй сервер с другой версией платформы?
Нет. Все рабочие серверы одного кластера должны работать на одной версии платформы, вплоть до номера сборки. Обновляйте их по очереди, останавливая пользователей на время перехода.
Нужно ли переносить базы на второй сервер?
Нет. Базы остаются в СУБД. Оба сервера 1С подключаются к одной базе, переносить или копировать ничего не нужно.
Нужен ли второй сервер СУБД?
Не обязательно. Часто хватает одного мощного сервера СУБД. Но если узким местом стала СУБД, отдельная машина под неё даёт больше, чем второй сервер 1С.
Сколько пользователей выдержит один рабочий сервер?
Зависит от конфигурации. Ориентировочно, на сервере с 16-32 ГБ памяти комфортно работают 80-150 активных пользователей типовой бухгалтерии. Для тяжёлых конфигураций цифра заметно ниже.
Можно ли отключить второй сервер без остановки работы?
Можно. Запретите ему новые сеансы, дождитесь, пока пользователи завершат работу, затем удалите из списка рабочих серверов. Текущие сеансы при этом не прерываются.