Как правильно лицензировать переход 1С с файловой базы на клиент-серверную архитектуру

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

Переход с файловой базы данных «1С:Предприятие» на клиент-серверный режим работы — стандартный этап масштабирования информационной системы при росте числа пользователей, объема данных или требований к отказоустойчивости. Однако при этом часто возникает путаница: какие именно лицензии необходимо приобрести, распространяется ли требование клиентских лицензий на веб-клиентов и тонких клиентов, и можно ли сэкономить. Разберем по шагам полную структуру лицензирования стека «1С + СУБД + Windows Server», проанализируем правила вендоров и рассмотрим альтернативные варианты развертывания.

Полный состав лицензий при классическом стеке на базе MS SQL Server

Рассмотрим типовой сценарий: в компании работают 30 пользователей с базой 1С, сервер развернут на базе ОС Windows Server, а в качестве СУБД планируется использовать MS SQL Server. Для полной юридической чистоты и корректной работы инфраструктуры требуется приобрести четыре уровня лицензий:

  1. Клиентские лицензии 1С:Предприятие 8 на рабочие места. Если у вас уже есть 30 пользовательских лицензий 1С (программных или аппаратных USB), повторно покупать их не нужно — они универсальны и подходят как для файлового, так и для клиент-серверного режима.
  2. Лицензия на сервер «1С:Предприятие 8.3». Необходима для запуска службы кластера серверов 1С (ragent, rmngr, rphost). Для современных 64-разрядных операционных систем приобретается лицензия уровня x86-64.
  3. Лицензия на СУБД MS SQL Server и клиентские лицензии SQL CAL. Лицензируется серверный экземпляр СУБД плюс доступ каждого конечного пользователя к данным (либо приобретается лицензия на вычислительные ядра процессора).
  4. Клиентские лицензии Windows Server CAL. Доступ пользователей локальной сети к службам Windows Server также подлежит лицензированию вне зависимости от того, обращаются ли они к серверу напрямую или через промежуточное звено.

Особенности лицензий MS SQL Server Runtime для 1С

Фирма «1С» совместно с Microsoft предлагает совместные лицензии MS SQL Server Runtime. Рассмотрим их отличия от стандартных лицензий Full-use:

Лицензии категории Runtime стоят значительно дешевле обычных коммерческих поставок Microsoft, однако имеют строгое юридическое ограничение: данный экземпляр СУБД разрешено использовать исключительно для работы с базами данных «1С:Предприятие». Размещение в этом же экземпляре СУБД сторонних баз данных, прямое обращение внешних систем к таблицам SQL в обход сервера 1С или использование служб аналитики (SSAS, SSIS, SSRS) вне контура 1С является нарушением лицензионного соглашения.

При выборе схемы «Server + CAL» для 30 пользователей приобретается серверная часть MS SQL Server Standard Runtime и пакет клиентских лицензий SQL CAL Runtime на 30 рабочих мест (например, комплекты на 10 и 20 р.м.).

Принцип мультиплексирования и клиентские лицензии CAL

Распространенное заблуждение: «Если пользователи подключаются через тонкий клиент 1С или веб-браузер к серверу 1С, а сам сервер 1С обращается к SQL под одной служебной учетной записью, то на SQL и Windows Server нужна всего 1 лицензия». Выясним причину, почему это не так.

В правилах лицензирования Microsoft четко определено понятие мультиплексирования (Multiplexing). Сервер приложений 1С (как и веб-серверы IIS или Apache) признается промежуточным средством мультиплексирования соединений (пулом соединений). Использование шлюзов, пулов сессий или серверов приложений не уменьшает требуемое количество клиентских лицензий доступа (CAL). Количество лицензий Windows Server CAL и SQL Server CAL должно строго соответствовать числу физических пользователей или устройств, которые инициируют запросы к данным.

Проанализируем разницу типов CAL:

  1. User CAL (лицензия на пользователя). Закрепляется за конкретным физическим сотрудником. Выгодна, если один сотрудник заходит в систему с нескольких устройств (ПК в офисе, ноутбук, домашний компьютер).
  2. Device CAL (лицензия на устройство). Закрепляется за конкретным компьютером/терминалом. Выгодна при сменном графике работы (несколько сотрудников работают по очереди за одним ПК).

Правило переназначения CAL: постоянные лицензии CAL (как User, так и Device) нельзя динамически перераспределять между сотрудниками в течение дня. Переназначить лицензию на другого пользователя или ПК разрешается не чаще одного раза в 90 дней (за исключением случаев увольнения сотрудника или полного выхода оборудования из строя).

Лицензирование MS SQL Server по ядрам (Per Core)

Если в компании планируется постоянный рост числа пользователей или организован внешний доступ большого количества контрагентов через веб-клиент, расчет модели «Server + CAL» может оказаться экономически невыгодным. В таком случае рассмотрим лицензирование по ядрам процессора (Per Core):

  1. При лицензировании по ядрам клиентские лицензии SQL CAL покупать не требуется — количество пользователей не ограничено.
  2. Лицензии приобретаются на все физические или виртуальные ядра сервера, на котором запущен MS SQL Server (минимальный пакет лицензирования — 4 ядра на один процессор/виртуальную машину).
  3. Для оптимизации затрат СУБД часто выносят в отдельную виртуальную машину с фиксированным выделением небольшого числа высокопроизводительных ядер (например, 4 или 8 ядер), что существенно снижает итоговую стоимость пакета Core-лицензий.

Ограничения бесплатной редакции MS SQL Server Express

Иногда для небольших баз рассматривают установку бесплатного MS SQL Server Express. Проанализируем технические рамки этого решения:

  1. Размер базы данных: ограничение не более 10 ГБ на одну информационную базу (размер файлов .mdf; журнал транзакций .ldf в этот лимит не входит).
  2. Оперативная память: экземпляр Express использует не более 1410 МБ RAM под буферный пул (Buffer Pool), что вызывает постоянные дисковые задержки при активной работе 30 пользователей.
  3. Процессор: задействуется не более 1 физического сокета или 4 ядер CPU (меньшее из двух значений).
  4. Отсутствие SQL Server Agent: автоматическое резервное копирование, дефрагментация индексов и обновление статистик штатными планами обслуживания не поддерживаются. Приходится настраивать запуск скриптов через системный планировщик задач ОС (Task Scheduler).

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

Альтернативное решение: PostgreSQL и Linux

Если бюджет ограничен, а требования к производительности высоки, наиболее эффективным решением является переход на свободно распространяемое системное ПО:

  1. Операционная система: Linux (Ubuntu, Debian, Astra Linux, РЕД ОС и др.). Полностью исключает затраты на лицензии ОС и Windows CAL.
  2. СУБД: специализированная сборка PostgreSQL для 1С (адаптированные дистрибутивы от фирмы 1С или Postgres Pro). Использование стандартной (Vanilla) версии PostgreSQL не рекомендуется, так как она не содержит патчей 1С для работы с временными таблицами и локализованными сортировками.
  3. Сервер 1С: приобретается стандартная лицензия на сервер «1С:Предприятие 8.3 (x86-64)». Серверная часть 1С кроссплатформенна и полноценно работает под управлением ОС Linux.

В этом сценарии из обязательных платных компонентов остается только лицензия на сервер 1С и клиентские лицензии рабочих мест 1С, что существенно сокращает затраты на лицензирование инфраструктуры.

← На главную