Когда фирме нужен сервер 1С и как его правильно собрать

· 10 мин

Содержание

Сервер 1С — это программа «Сервер 1С:Предприятия 8.3», которая выполняет код конфигурации и работает с базой, хранящейся в СУБД (MS SQL Server или PostgreSQL). Пользователи подключаются к нему тонким клиентом по сети, а не открывают файл базы напрямую. Его ставят, когда в одной базе одновременно работают больше 5–10 человек, база растёт за десятки гигабайт или нужен доступ из нескольких офисов.

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

Как устроен клиент-серверный вариант 1С изнутри

В клиент-серверной схеме три уровня: клиент, кластер серверов 1С и СУБД. Клиент только показывает формы и передаёт команды. Вся тяжёлая работа — запросы, проведение, расчёты — идёт на сервере 1С, который сам обращается к СУБД.

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

ПроцессРольПорт по умолчанию
ragentАгент сервера: принимает первое подключение клиента и консоли1540
rmngrМенеджер кластера: реестр баз, сеансы, блокировки, сервисы1541
rphostРабочие процессы: выполняют код конфигурации1560–1591
rasСервер администрирования для утилиты rac (ставится отдельно)1545

Порядок подключения такой: клиент стучится к агенту на 1540, агент направляет его к менеджеру кластера на 1541, тот назначает рабочий процесс из диапазона портов. Диапазон задаётся в свойствах рабочего сервера, а не кластера.

Если между клиентами и сервером стоит межсетевой экран, откройте не только 1540 и 1541, но и весь диапазон рабочих процессов. Иначе клиент «видит» сервер, но падает при входе в базу.

СУБД может стоять на той же машине или на отдельной. Для 1С 8.3 на практике используют MS SQL Server и PostgreSQL; для PostgreSQL берут сборки, адаптированные под 1С. Сервер 1С работает и под Windows Server 2016 и новее, и под Linux.

Файловая база или сервер 1С: чем они различаются на практике

В файловом режиме вся база — один файл 1Cv8.1CD. Каждый клиент открывает его по сети и сам выполняет запросы. Блокировки ставятся на целые таблицы: пока один бухгалтер проводит документ, второй ждёт.

В клиент-серверном режиме СУБД блокирует отдельные записи. Сеть нагружается меньше: по ней ходят команды и результаты, а не куски файла базы.

КритерийФайловый вариантКлиент-серверный вариант
Одновременных пользователейкомфортно до 5–10десятки и сотни
Размер базыдо 10–20 ГБ без заметных проблемограничен возможностями СУБД
Блокировкина уровне таблицна уровне записей
Резервное копированиекопия файла или выгрузка .dt при выходе всех пользователейсредствами СУБД, без остановки работы
Риск повреждения базывыше: сбой сети или питания у клиентаниже: транзакции ведёт СУБД
Стоимостьтолько клиентские лицензии+ лицензия на сервер 1С, СУБД, железо
Администрированиепочти не нужнонужен человек, который понимает кластер и СУБД

Когда сервер 1С ставить рано

  • 🟢 2–4 пользователя, одна база до нескольких гигабайт, офис в одной сети.
  • 🟢 Нет никого, кто будет следить за СУБД и резервными копиями.
  • 🟢 Работа идёт через облако или аренду 1С, где сервер уже обслуживает провайдер.

Признаки, что пора переходить

  • 🔴 Пользователи регулярно видят «ожидание блокировки» в часы закрытия месяца.
  • 🔴 Файл базы перевалил за 10–15 ГБ, и выгрузка .dt идёт часами.
  • 🔴 Через VPN или удалённые офисы файловая база открывается минуты.
  • 🔴 База повреждалась после сбоев сети, и приходилось запускать тестирование и исправление.
  • 🔴 Нужны регламентные задания, которые должны работать круглосуточно: обмены, загрузка банка, ЭДО.
Какой вариант подходит вашей фирме?

Какое железо нужно для сервера 1С

Для 1С важнее частота ядра, чем их число: проведение одного документа выполняется в одном потоке. Процессор с 8 ядрами по 4 ГГц для типичной фирмы полезнее, чем 32 ядра по 2,2 ГГц.

Второе узкое место — диски. Базу СУБД и файлы журнала транзакций держат только на SSD, лучше NVMe. HDD для рабочей базы — главная причина «сервер мощный, а 1С тормозит».

Ориентиры для случая, когда сервер 1С и СУБД стоят на одной машине:

ПользователейПроцессорПамятьДиски
до 154–6 ядер, от 3,5 ГГц16–32 ГБNVMe SSD 500 ГБ–1 ТБ
15–508–12 ядер, от 3,5 ГГц32–64 ГБNVMe SSD, отдельный диск под копии
50–10016+ ядер; СУБД лучше вынести64–128 ГБ на каждый серверNVMe в RAID 1 или RAID 10
100+отдельные серверы 1С и СУБД, несколько рабочих серверов128 ГБ и вышебыстрый массив, отдельные тома под данные, журнал и tempdb

Это ориентиры, а не норма: тяжёлая УТ или ERP с обменами съест больше, чем Бухгалтерия на тех же пользователях.

Что проверить в конфигурации машины

  1. Схема электропитания Windows — Высокая производительность. В режиме экономии частота процессора падает, и 1С заметно медленнее.
  2. Память СУБД ограничена. У MS SQL параметр max server memory по умолчанию не ограничен, и СУБД забирает почти всю память, оставляя рабочим процессам 1С крохи. Оставьте 1С и системе 25–40% объёма.
  3. Антивирус не сканирует каталог данных СУБД и каталог кластера srvinfo. Проверка этих файлов на лету тормозит каждую транзакцию.
  4. Виртуальная машина получает выделенные ядра и память, без переподписки.
  5. Под резервные копии — отдельный диск или сетевое хранилище, а не тот же том, где база.

Лицензии и ключи защиты для сервера 1С

Сервер 1С требует двух видов лицензий, и их часто путают:

  • 🔑 Лицензия на сервер 1С:Предприятия — одна на каждый рабочий сервер кластера. Без неё сервер не обслуживает клиентов. Бывает обычная и КОРП. КОРП нужна крупным внедрениям с расширенными возможностями управления кластером; маленькой и средней фирме хватает обычной.
  • 👥 Клиентские лицензии — по числу одновременных подключений, а не по числу сотрудников. Продаются комплектами на 1, 5, 10, 20, 50, 100 и более мест.
  • 🗄️ Лицензия СУБД — отдельная история. MS SQL Server лицензируется Microsoft, PostgreSQL бесплатен.

Ориентировочно лицензия на сервер обычного уровня стоит порядка 80–100 тыс. руб., КОРП — в несколько раз дороже. Точные цены и условия уточняйте у партнёра 1С: они меняются.

Программные ключи и USB-ключи

Лицензию защищают двумя способами.

Программная лицензия активируется пин-кодом и привязывается к параметрам компьютера. Файлы лицензий лежат в каталоге C:\ProgramData\1C\licenses. Если заменить материнскую плату, диск или пересоздать виртуальную машину, лицензия «слетит» — её активируют заново резервным пин-кодом из комплекта.

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

Клиентские лицензии в клиент-серверном режиме удобно держать на сервере 1С. Тогда пользователи получают лицензию при подключении, и не нужно активировать её на каждом компьютере.

Сохраните конверт с пин-кодами и регистрационными данными комплекта. Без них повторная активация после замены железа превращается в переписку с центром лицензирования.

Сколько лицензий занято прямо сейчас, видно в консоли администрирования, в списке сеансов, или через утилиту:

rac cluster list
rac session list --cluster=<UUID кластера> --licenses

Как настроить кластер серверов 1С после установки

После установки сервера 1С служба «Агент сервера 1С:Предприятия 8.3» запускается автоматически, а кластер с портом 1541 создаётся по умолчанию. Дальше работа идёт в консоли администрирования серверов.

Шаг 1. Подготовьте консоль

Консоль — оснастка MMC. Если она не открывается или не видит сервер, зарегистрируйте библиотеку той версии платформы, что стоит на сервере. Командную строку запускайте от имени администратора:

regsvr32 "C:\Program Files\1cv8\8.3.XX.XXXX\bin\radmin.dll"

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

Шаг 2. Задайте администратора кластера

В дереве консоли откройте Кластеры → кластер → Администраторы и создайте администратора с паролем. Без этого кластером может управлять любой, кто дотянется до порта 1540.

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

Шаг 3. Создайте информационную базу

  1. В ветке Информационные базы нажмите Создать → Информационная база.
  2. Укажите имя базы в кластере — его пользователи будут вводить при подключении.
  3. Выберите тип СУБД, сервер баз данных, имя базы в СУБД, пользователя и пароль СУБД.
  4. Поставьте флажок Создать базу данных в случае ее отсутствия.
  5. Если база будет копией рабочей — включите Установить блокировку регламентных заданий, чтобы копия не начала обмены и загрузки за рабочую базу.
  6. Загрузите в созданную базу выгрузку .dt через Конфигуратор.

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

Srvr="srv-1c";Ref="buh";

Шаг 4. Пройдитесь по свойствам рабочего сервера

Эти параметры находятся в свойствах рабочего сервера, ветка Рабочие серверы:

  • ⚙️ Диапазон IP-портов рабочих процессов — тот, что открыт на межсетевом экране.
  • ⚙️ Количество ИБ на процесс и Количество соединений на процесс — управляют тем, сколько баз и сеансов делят один rphost. Значения по умолчанию подходят для начала.
  • ⚙️ Критический объём памяти процессов и Временно допустимый объём памяти процессов — пороги, после которых кластер перезапускает «распухшие» рабочие процессы.
  • ⚙️ Менеджер под каждый сервис — выносит сервисы кластера в отдельные процессы; помогает при большой нагрузке.
  • ⚙️ Требования назначения функциональности — какие задачи выполняет этот сервер, если серверов в кластере несколько.

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

Обслуживание: что делать, чтобы сервер 1С не тормозил

Сервер 1С без регламента обслуживания со временем замедляется: растут индексы, устаревает статистика, копится кэш. Минимальный набор работ выглядит так.

Регламент на стороне СУБД

ЗадачаMS SQL ServerPostgreSQLКак часто
Обновление статистикиплан обслуживания, задача обновления статистикиANALYZE (часто через autovacuum)ежедневно ночью
Перестроение индексовплан обслуживания, перестроение или реорганизацияREINDEX по необходимостираз в неделю
Очистка «мёртвых» строкне требуетсяVACUUMautovacuum + ручной при росте
Полная копияплан обслуживания или задание агентаpg_dump или физическая копияежедневно
Копия журнала транзакцийпри модели восстановления «полная»архивирование WALкаждые 15–60 минут

Копии средствами СУБД снимаются без отключения пользователей. Выгрузку .dt держите как дополнительную страховку перед обновлениями конфигурации, а не как основной способ копирования.

Регламент на стороне сервера 1С

  • 🧹 Интервал перезапуска рабочих процессов в свойствах кластера — например, раз в сутки. Кластер поднимает новый процесс и плавно переводит на него сеансы.
  • 🧹 Технологический журнал включают файлом logcfg.xml в каталоге conf платформы, когда нужно поймать медленные запросы и взаимоблокировки. Постоянно на полной детализации его не держат: он быстро забивает диск.
  • 🧹 Обновление платформы — на сервере и всех клиентах до одного номера. Перед обновлением сервера снимите копию базы и проверьте релиз на копии.
  • 🧹 Регламентные задания в базах, которые не должны работать, блокируйте в свойствах базы в консоли.

Очистка кэша кластера

Когда сервер ведёт себя странно после аварийного отключения — сеансы «висят», база не открывается, консоль показывает несуществующие соединения, — помогает очистка сеансовых данных в каталоге srvinfo.

  1. Предупредите пользователей: все сеансы будут разорваны, несохранённые данные пропадут. Делайте это вне рабочего времени.
  2. Остановите службу агента сервера 1С.
  3. Скопируйте каталог srvinfo целиком в резервное место.
  4. В каталоге кластера reg_1541 удалите папки сеансовых данных snccntx…. Файлы реестра кластера 1CV8Clst.lst и 1CV8Reg.lst не трогайте — в них список баз и настройки.
  5. Запустите службу и проверьте вход в базы.
Еженедельная проверка сервера 1С
Выполнено: 0 / 6

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

Можно ли поставить сервер 1С и СУБД на одну машину?
Да. До 30–50 пользователей это обычная схема. Ограничьте память СУБД, чтобы рабочим процессам 1С хватало оперативной памяти.
Нужен ли сервер 1С, если база работает через RDP?
Не обязательно: на терминальном сервере файловая база может работать быстро, потому что клиенты и файл на одной машине. Но блокировки таблиц и риск повреждения файла остаются. При 10+ пользователях всё равно переходят на клиент-серверный вариант.
Можно ли перенести файловую базу на сервер 1С без потерь?
Да. Выгрузите базу в .dt в Конфигураторе, создайте базу в кластере и загрузите выгрузку. Данные, пользователи и настройки переносятся целиком.
Сколько клиентских лицензий покупать?
По максимальному числу одновременных подключений, а не по штату. Регламентные задания и фоновые обмены лицензию не занимают, а каждый открытый клиент — занимает.
Чем PostgreSQL хуже MS SQL для 1С?
Для типичных конфигураций разница в скорости невелика при правильной настройке. Зато PostgreSQL не требует покупки лицензий СУБД. MS SQL проще в администрировании для тех, кто привык к Windows.