Настройка требований назначения функциональности 1с

Обновлено: 01.07.2024

Как я уже писал предыдущей статье Настройка кластера 1С 8.3 (ч. 1) , в кластере 1С Предприятие 8.3 значительно расширились настройки для оптимизации производительности.

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

Основные настройки сервера в кластере 1С 8.3

Диапазоны ip-портов:

Диапазон портов рабочих процессов. Можно расширить, если сеансов очень много (несколько тысяч) и портов на все соединения не хватает, то целесообразно расширить этот диапазон.

Настройка сервера в кластере 1С 8.3. Диапазоны портов Настройка сервера в кластере 1С 8.3. Диапазоны портов
Так же такая ситуация может возникнуть при нагрузочном тестировании, например на 5000 онлайн пользователей и более.

Параметры рабочих процессов и количество соединений на процесс:

Рекомендуется оставлять по умолчанию. Изменять есть смысл только тогда, когда много слабо нагруженных баз, можно увеличить их количество на 1 процесс, чтобы не плодить rphost-ы.

Настройка сервера 1С 8.3. параметры рабочих процессов Настройка сервера 1С 8.3. параметры рабочих процессов

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

Безопасный расход памяти за 1 вызов:

Данная настройка используется очень редко и рекомендуется оставлять значения по умолчанию.

"Срабатывание" настройки делится на несколько этапов:

  1. Критический объем памяти процессов;
  2. Безопасный расход памяти за один вызов;
  3. Временно допустимый объем памяти процессов;
  4. Интервал превышения допустимого объема памяти процессов.
Если превышает указанное значение, то пользователь получит ошибку «Недостаточно памяти для выполнения операции».

Центральный сервер (ЦС):

Определяет, является ли сервер центральным, т.е.:

  1. через который можно подключиться к кластеру.
  2. на котором работает главный менеджер кластера.
Именно ЦС указывается при подключении к базе данных (к кластеру).

Второй центральный сервер 1С 8.3

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

В отличие от уровня отказоустойчивости, в данном случае, даже при падении одного ЦС, кластер будет жить, а пользователи могут даже не заметить проблем.

Требования и назначения функциональности

Имеет смысл только если в кластере более 1 сервера. Дает возможность назначить конкретный сервис на конкретный сервер. После установки 1С , рекомендуется удалить локальный кластер (через панель администрирования), потому что он не используется.

Ниже рассмотрю ключевые сервисы, которые рекомендуется выделять.

Сервис лицензирования:

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

Так же не будет проблем с дублями используемых лицензий в случае "Уровня Отказоустойчивости" > 0.

Сервис заданий:

Дает возможность указать отдельный сервер для выполнения фоновых заданий. Таким образом снизить нагрузку на оперативную деятельность, а все расчеты вынести на фоновые задания на отдельную машину или виртуалку. Так же можно вынести выполнение фоновых заданий, например, на OS MS Windows, если требуется использование COM-объектов, таких как S Office или внешних компонент. При это большая часть кластера будет работать под Linux.

Сервис сеансовых данных / Сервис журналов регистрации / Сервис полнотекстового поиска:

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

то для исправления этой ошибки - серверу необходимо назначить функциональность:

1. Откройте Панель Администрирования серверов и перейдите в раздел Требования назначения функциональности


2. Добавите общую функциональность с типом требования Назначить


3. Примените требования


4. Все должно работать

Я указал общие требования, т.к. баз на сервере мало, нагрузки практически нет, Но требования назначения функциональности имеют более глубокий смысл:

Требование назначение функциональности определяет:

Для какого объекта требования создается требование. В качестве объекта требования могут выступать некоторые сервисы 1 кластера, клиентские соединения и произвольный объект требования. В качестве объекта требования могут выступать следующие сервисы кластера:

  • Блокировок объектов.
  • Времени.
  • Журналов регистрации.
  • Заданий.
  • Нумерации.
  • Полнотекстового поиска.
  • Пользовательских настроек.
  • Сеансовых данных.
  • Транзакционных блокировок.
  • Работы с внешними источниками данных через ODBC.
  • Работы с внешними источниками данных через XMLA.
  • Сервис лицензирования.
  • Сервис фонового обновления конфигурации базы1 данных.
  • Сервис тестирования.
  • Сервис внешнего управления сеансами.

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

Не назначать - означает, что рабочий сервер, для которого создано данное требование, не будет назначен для обслуживания объекта требования, подходящего под условия, заданные в требовании.

Назначать - означает, что рабочий сервер, для которого создано данное требование, будет являться одним из кандидатов на обслуживание данного объекта требования (если рабочих серверов будет несколько).

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

Тип требования Авто - имеет смысл использовать тогда, когда в списке требований рабочего сервера есть требование с более широким набором условий, и необходимо иметь требование для более узкого набора условий. Например, данный сервер не может обслуживать соединения клиентских приложений для всех информационных баз, кроме одной информационной базы, для которой такое обслуживание разрешено.

Дополнительные параметры, необходимые кластеру серверов для принятия решения в ряде случаев:

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

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

Для указания конкретного фонового задания:

Рассмотрим, как работает кластер серверов при обработке требований.

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

1. На всех серверах, входящих в состав кластера, выполняется обработка заданных для этих серверов требований назначения функциональности. Обход серверов и требований выполняется в порядке следования этих объектов в консоли кластера.2.

2. В каждом списке требований определяется первое требование, которое удовлетворяет размещаемому объекту: по собственно объекту, информационной базе и дополнительному параметру.

3. Затем полученный список рабочих серверов сортируется по признаку типа требования так, что первыми оказываются рабочие сервера с явным указанием использования. Рабочие сервера, для которых подходящее требование содержит явный запрет на использование - исключаются из списка доступных рабочих серверов. При этом назначение выполняется следующим образом:

Ставя очередное обновление Бухгалтерии получил ошибку "Я работаю только на 8.3.4", ну вот. пришло время поставить 8.3.4. и так:

Процесс скачивания и установки новой платформы я описывать не буду, там все просто.

title

Запускаем Агента и Открываем консоль Администрирования серверов 1С и создаем кластер 8.3
Указал имя сервера и настроил на порт 1740 (на 1540 работает 8.2)

title

Создаем кластер + чуток оптимизировал( У меня всего небольшой ОДИН сервер, поэтому - указываю Интервал перезапуска рабочих процессов и объем памяти. т.к у меня один сервер - уровень отказоустойчивости - 0)

Теперь подробнее:
1. Интервал перезапуска: 86400 сек (24 часа). Момент перезапуска не регламентируется, видимо с момента установки параметров, либо запуска сервера приложений.
2. Также можно указать допустимый объем памяти: 3000000 Кб (3 Гб) - Для сервера с 4 ГБ оперативы, Если ее меньше, то не заполняйте этот параметр!.
3. Интервал превышения допустимого объема памяти — это непрерывный интервал времени превышения допустимого объема памяти, после которого сервер перезапустит процесс. Если указано 0 сек — будет ждать вечно.
4. Количество Рабочих процессов расчитывается автоматически на основании Ваших настроек
5. Уровень отказоустойчивости можно задавать уровень отказоустойчивости кластера как количество рабочих серверов, которые могут одновременно выйти из строя, и это не приведет к аварийному завершению работы пользователей. Резервные сервисы запускаются автоматически в количестве, необходимом для обеспечения заданной отказоустойчивости; в реальном режиме времени выполняется репликация активного сервиса на резервные.
6. Режим распределения нагрузки, который можно использовать либо для повышения производительности системы вцелом, либо использовать новый режим «экономии памяти», который позволяет работает «с ограниченной памятью» в случаи если используемая конфигурация «любит отъедать память».

title

Рабочий сервер
Сервер у меня простенький, 2 Gb оперативы всего и на нем будет всего 2 базы, поэтому настрою его так:

параметр Количество ИБ на процесс ставлю равным 1, т.е. хочу чтобы для каждой ИБ запускался свой процесс - это позволит уменьшить взаимное влияние как по надежности, так и по производительности. Вы же настраивате под характеристики своего сервера!

title

Информационная база
Добавляю ИБ:

title

В стартере пописываю базу:

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

Стандартно, после создания, профиль безопасности запрещает выполнение всех потенциально опасных действий:
-обращение к файловой системе сервера;
-запуск COM-объектов;
-использование внешних компонентов 1С:Предприятия;
-запуск внешних обработок и отчётов;
-запуск приложений, установленных на сервере;
-обращение к ресурсам Интернета.
Таким образом защититься от нежелательных действий незнакомого прикладного решения очень просто: нужно создать пустой профиль безопасности и назначить его информационной базе. Далее, если есть необходимость, можно расширять этот профиль, описывая в нём действия, которые разрешается выполнять прикладному решению.

ВНИМАНИЕ! Если однажды на данном центральном сервере уже был создан кластер, то при смене варианта запуска агента сервера (сервис, приложение) или при смене пользователя, от имени которого работает агент сервера, всегда следует заботиться о правильном указании пути к каталогу служебных файлов кластера серверов. Если в процессе запуска агент сервера не обнаружит список кластеров, он создаст новый кластер на данном сервере.
В операционной системе Linux служебные файлы кластера серверов будут расположены в папке /home/usrlcv8/.lcv8/lC/lcv8 (или сокращенный вариант записи -

Инструкция по настройке рабочих серверов с Технологической Платформой 1С:Предприятие

Ниже приводится инструкция по настройке рабочих серверов с Технологической Платформой 1С:Предприятие.

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

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

1. Определить, сколько информационных баз будут использоваться в кластере для работы пользователей

Существует несколько вариантов развертывания:

  • в продуктивной среде и подготовительной зоне;
  • в тестовой зоне;
  • в зоне разработки.

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

В этих случаях желательно все нерабочие информационные базы вынести в отдельный кластер на отдельные серверы.

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

  • к копии базы не было доступа у пользователей;
  • в копии базы были выключены регламентные задания;
  • копия базы не участвовала в обменах.

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

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

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

2. Определить, сколько пользователей будет работать одновременно

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

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

  • Конфигурации системы;
  • Сценария работы пользователей;
  • Числа одновременно работающих пользователей;
  • Используемых версий программных продуктов.

3. Настроить профили пользователей ОС, от которых будут запускаться процессы кластера

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

Это может быть необходимо для того, чтобы код, который выполняется в rphost точно не мог обратиться к каким-либо определенным данным на рабочем сервере или выполнить операцию с административными правами.

Для этого нужно:

Для того, чтобы создать профили пользователей ОС достаточно один раз войти от их имени в ОС Windows.

4. Настроить логирование и дампы

Для этого необходимо настроить:

  • Технологический журнал
  • Сбор дампов процессов кластера средствами Платформы (указнием в logcfg.xml секции dump) либо Windows Error Reporting Services

Хорошей практикой будет настроить сбор WER для rmngr и ragent, но не указывать rphost.

5. Проверить настройки операционной системы

5.1. Настроить рабочий сервер

5.2. Настроить рабочий сервер

Необходимо настроить рабочий сервер в соответствии с инструкцией, которая позволяет избежать ошибки "An operation on a socket could not be performed because the system lacked sufficient buffer space or because a queue was full"

5.3. Убедиться, что брадмауэр операционной системы настроен таким образом, что не запрещает процессам кластера взаимодействовать корректно.

Информация по клиент-серверному варианту работы здесь;

Обратите внимание на используемые порты, которые указываются в параметрах центрального сервера,


в свойствах кластера серверов,


и рабочих серверов кластера.


Также необходимо открыть порт для указания сетевого порта для ras в случае использования. --port или -p указывает сетевой порт, по которому утилита администрирования будет взаимодействовать с сервером администрирования. Значение по умолчанию равно 1545.

5.4. Убедиться, что на рабочих серверах кластера одновременно не используется IPv4 и IPv6.


5.5. Убедиться, что схема управления питанием - "Высокая производительность".


5.6. Убедиться, что установлены компоненты Microsoft Data Access Components

Этот пункт нужен для настройки с СУБД MS SQL Server.

В противном случае будете получать ошибку вида: "Компоненты OLE DB провайдера не найдены".

6. Необходимо настроить сетевой стек для обеспечения возможности обработки большого числа подключений

Настройки, которые необходимо выполнить (в дополнение к настройке 5.2. Настроить рабочий сервер в соответствии с инструкцией):

  • Запустить regedit и в ветке HKLM\System\CurrentControlSet\Services\Tcpip\Parameters указать
    • MaxFreeTcbs= 100000
    • TcpTimedWaitDelay= 30
    • MaxUserPort= 65535
    • EnableDynamicBacklog= 1
    • MinimumDynamicBacklog= 20
    • MaximumDynamicBacklog= 20000
    • DynamicBacklogGrowthDelta= 10
    • Выполнить: netsh int ipv4 set dynamicport tcp start=10000 num=55536
    • Выполнить: netsh int ipv4 set dynamicport udp start=10000 num=55536

    7. Настроить кластер серверов

    7.1. Необходимо добавить рабочие серверы в кластер

    7.2. Настроить условия перезапуска

    Настроить условия перезапуска по превышению порога памяти.

    7.3. Настроить расположение каталога кластера

    Необходимо убедиться, что

    • на дисках достаточно места;
    • сеансовые данные расположены на быстрых дисках;


    7.4. Настроить число соединений и информационных баз на процесс

    Настройку необходимо выполнить с учетом конфигурации системы

    Постарайтесь выполнять настройку таким образом, чтобы она не приводила к запуску 100 процессов rphost, т.к. значительное число процессов rphost приводит к неэффективному использованию памяти процессами кластера.

    Не стоит просто так уменьшать параметр "Число соединений на процесс" или "Число информационных баз на процесс".

    Если у вас нет технического обоснования, почему именно так лучше, рекомендуем оставить значения по умолчанию


    7.5. Выполнить настройки для случая нескольких рабочих серверов в кластере.

    • Обязательно должно быть явно указано расположение:
      • сервиса журнала регистрации;
      • сервиса полнотекстового поиска данных;
      • сервиса работы с внешними источниками данных;
      • расположение клиентских и серверных лицензий и сервисов лицензирования;
      • расположение сеансовых данных.

      8. Первый запуск

      На этом этапе следует выполнить следующие шаги:

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

      9. Отказоустойчивость

      В случае необходимости настройки отказоустойчивого кластера, выполните следующие шаги.

      9.1. Проверить лицензии.

      Убедитесь, что на рабочих серверах, которые должны выполнять роль Центральных серверов достаточно лицензий для работы всех пользователей в информационной системе при отсутствии одного из Центральных серверов в случае возможного (теоретически) отказа.

      9.2. Установить флаг "Центральный сервер".

      Установить флаг как на рисунке ниже.


      9.3. Установить флаг "Уровень отказоустойчивости"

      Установить параметр, пример на рисунке ниже.


      Подробную информацию про уровень отказоустойчивости вы можете прочитать в статье

      Обратите внимание, что не нужно просто так указывать максимально возможный уровень отказоустойчивости, т.к. это приведет к избыточным накладным расходам.

      9.4. Скорректировать строку соединения

      Необходимо скорректировать строку соединения с информационной базой.

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

      Список указывается в формате Server1, Server2:Port, Server3.

      10. Замечания

      10.1. Не настраивайте exec backup (или аналогичные утилиты) на директории кластера серверов

      Причина в том, что в этих директориях могут располагаться хранилища с сеансовыми данными, выполнять backup которых не нужно, а создание backp-а которых будет приводить к избыточным накладным расходам.

      10.2. Не настраивайте сжатие данных дисков с директорией кластера


      10.3. Не забывайте про периодическое выполнение дефрагментации дисков ОС Windows.

      10.4. Настроить защиту от вирусов.

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

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

      При этом, стоит обеспечить защиту антивирусными решениями те пользовательские компьютеры, с которых выполняется доступ к рабочим серверам кластера и сетевым директориям.

      Читайте также: