Сервер 1С с нуля: от чистого Windows до опубликованной базы

· 9 мин

Содержание

Серверный вариант 1С ставят, когда в базе работает больше 5–10 человек, когда файловая база начинает «подвисать» или когда нужен веб-доступ. Для небольшой фирмы на 3–4 пользователей хватит файлового режима. Для остальных нужны три компонента: сервер 1С:Предприятия, СУБД и, при необходимости, веб-сервер.

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

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

Решите заранее три вопроса. От них зависит, сколько раз придётся переустанавливать.

Один сервер или два

Есть два типовых варианта:

ВариантКогда подходитМинус
Всё на одной машине (1С + СУБД)до 20–30 пользователей, одна-две базыпроцессы 1С и СУБД делят память и диск
Отдельно сервер 1С и сервер СУБД30+ пользователей, тяжёлые отчётынужна быстрая сеть между машинами, две лицензии на ОС

Начинать можно с одной машины. Перенести СУБД на отдельный сервер потом проще, чем кажется: меняется только адрес в настройках информационной базы.

Ориентиры по железу

Цифры примерные, под нагрузку «бухгалтерия плюс торговля»:

  • 🖥️ 10 пользователей — 4 ядра, 16 ГБ памяти;
  • 🖥️ 30 пользователей — 8 ядер, 32 ГБ памяти;
  • 💾 диск — только SSD, лучше отдельные тома под систему, базы СУБД и журнал транзакций;
  • 🌐 сеть — гигабит, статический IP-адрес.

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

Что скачать и проверить

  • Дистрибутив платформы «Технологическая платформа 1С:Предприятия для Windows» (полный комплект, с серверной частью).
  • Сборку СУБД. Для PostgreSQL берут либо сборку для 1С от разработчика платформы, либо Postgres Pro. Обычный PostgreSQL «из коробки» с 1С работает хуже и не поддерживается.
  • Имя компьютера: латиница, без пробелов и подчёркиваний. Менять имя после установки больно.
  • Сервер включён в домен или стоит в рабочей группе: выберите сразу.

Установка платформы и серверного компонента

Запустите setup.exe из дистрибутива платформы от имени администратора. В мастере выберите «Установка» и на шаге выбора компонентов отметьте:

  1. «1С:Предприятие» — основной компонент, нужен всегда.
  2. «Сервер 1С:Предприятия» — это и есть кластер серверов .
  3. «Администрирование серверов 1С:Предприятия» — оснастка, если хотите управлять кластером с этой же машины.
  4. «Модули расширения веб-серверов» — если будете публиковать базы.
  5. Язык интерфейса — русский.

На последнем шаге мастер предложит установить сервер как службу Windows. Соглашайтесь. В поле пользователя оставьте предложенное имя USR1CV8: учётная запись создаётся автоматически.

Учётная запись службы и права на каталоги

Служба 1C:Enterprise 8.3 Server Agent работает от имени USR1CV8. Ей нужны права на каталог кластера. По умолчанию это папка srvinfo в каталоге установки, но на системном диске её лучше не держать.

Если оставить srvinfo на системном диске, он забьётся журналами регистрации и кэшем. Перенесите его на отдельный том до создания баз.

Как перенести:

  1. Остановите службу агента сервера.
  2. Создайте на нужном диске папку, например D:\srvinfo.
  3. Выдайте учётной записи USR1CV8 полный доступ к этой папке.
  4. В свойствах службы добавьте параметр -d D:\srvinfo в строку запуска, после -srvc -agent.
  5. Запустите службу.

Проверьте в диспетчере задач, что работают процессы ragent, rmngr и rphost. Если виден только ragent, кластер ещё не создан или менеджер не запустился.

Кластер серверов: порты, регистрация, администрирование

После установки на сервере уже есть локальный кластер. Он поднимается автоматически на порту 1541, агент слушает 1540. Для рабочих процессов отведён диапазон 1560–1591.

Что такое кластер на практике

Три процесса, которые надо различать:

  • ⚙️ ragent — агент сервера, принимает подключения и запускает остальное;
  • ⚙️ rmngr — менеджер кластера, распределяет сеансы и держит блокировки;
  • ⚙️ rphost — рабочий процесс, в нём исполняется код и открываются сеансы пользователей.

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

Подключение к кластеру из консоли

Откройте оснастку «Администрирование серверов 1С:Предприятия» (в составе компонента «Администрирование серверов»). В дереве нажмите правой кнопкой по «Центральные серверы 1С:Предприятия» и создайте новый центральный сервер: имя компьютера и порт 1540. Если консоль стоит на другой машине, имя сервера должно резолвиться по DNS или через файл hosts.

Для администрирования без графики есть утилита rac и служба администрирования ras. Запуск ras на порту 1545:

ras cluster --port=1545 localhost:1540

Затем команда rac cluster list покажет кластер и его идентификатор. Через rac удобно автоматизировать создание баз и снятие сеансов.

Администратор кластера

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

Подключение СУБД: PostgreSQL и MS SQL Server

Сервер 1С сам данные не хранит. Все базы лежат в СУБД, а 1С только обращается к ней.

Если выбрали PostgreSQL

  1. Установите сборку для 1С. В мастере задайте пароль суперпользователя postgres и порт 5432.
  2. Откройте postgresql.conf и проверьте параметры, которые обычно трогают:
    • shared_buffers — примерно 25% оперативной памяти сервера, отданной под СУБД;
    • max_connections — с запасом на число рабочих процессов, обычно хватает 200–300;
    • work_mem — осторожно: умножается на число одновременных запросов.
  3. В pg_hba.conf разрешите подключение с адреса сервера 1С (если СУБД на другой машине).
  4. Перезапустите службу PostgreSQL.

Если выбрали MS SQL Server

  1. Поставьте экземпляр SQL Server, включите режим аутентификации SQL Server и Windows (смешанный).
  2. Включите протокол TCP/IP в диспетчере конфигурации.
  3. В свойствах сервера ограничьте максимум памяти: оставьте 2–4 ГБ для ОС и службы 1С, если на одной машине.
  4. Для баз 1С задайте простую или полную модель восстановления осознанно. При полной модели журнал транзакций надо резервировать, иначе он раздувается.

Создание информационной базы

В консоли администрирования откройте кластер, правой кнопкой по «Информационные базы» → «Создать». Укажите:

  • 📌 имя базы в кластере;
  • 📌 тип СУБД (PostgreSQL или Microsoft SQL Server);
  • 📌 адрес сервера СУБД и имя базы данных в СУБД;
  • 📌 пользователя СУБД и его пароль;
  • 📌 флаг «Создать базу данных в случае её отсутствия»;
  • 📌 смещение дат: 0, в 8.3 оно не нужно;

Следом база добавляется в список запуска. Строка подключения для клиента выглядит так: Srvr="server1c";Ref="buh";.

Готовую базу из файлового режима переносят через выгрузку в .dt («Администрирование» → «Выгрузить информационную базу») и загрузку в новую серверную базу .

Веб-публикация базы на Apache или IIS

Веб-клиент и мобильное приложение работают через опубликованную базу. Публикация делается из Конфигуратора: «Администрирование» → «Публикация на веб-сервере».

Подготовка IIS

  • В «Включение или отключение компонентов Windows» поставьте «Службы IIS» с поддержкой ASP.NET и «Расширения ISAPI».
  • Установите «Модули расширения веб-серверов» из дистрибутива платформы (если не отметили в основном мастере).
  • Права: на каталог публикации нужны права IIS_IUSRS и учётная запись пула приложений.

Публикация в Конфигураторе

  1. Откройте базу в Конфигураторе под администратором.
  2. «Администрирование» → «Публикация на веб-сервере…».
  3. Укажите веб-сервер (Apache 2.2 / 2.4 или IIS), имя публикации и каталог.
  4. Отметьте нужные доступы: «Публиковать стандартный интерфейс OData» и «Публиковать веб-сервисы» ставьте только если они нужны.
  5. Нажмите «Опубликовать». Перезапустите веб-сервер.

Проверка: откройте в браузере http://имя-сервера/имя-публикации. Если видите окно входа 1С, всё работает. Ошибка 500 чаще всего значит нехватку прав или неправильную версию платформы в публикации.

Для внешнего доступа ставьте веб-сервер за обратным прокси с HTTPS. Не открывайте напрямую в интернет порты 1540, 1541 и диапазон 1560–1591: кластер не рассчитан на прямое подключение извне.

Лицензии и защита сервера

Подключение к серверу требует лицензий двух видов: клиентских и серверной.

Что считается

  • 🔑 Серверная лицензия снимает ограничение на число рабочих процессов и обрабатываемых ядер; без неё сервер работает с ограничениями.
  • 🔑 Клиентские лицензии считаются по числу одновременных сеансов. Один пользователь с двумя открытыми окнами занимает две лицензии, если они не от одного клиента.
  • 🔑 Лицензии бывают программные (привязка к компьютеру) и аппаратные (USB-ключ). Для виртуальных машин обычно берут программную.

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

Базовая защита

Минимум, который стоит сделать в первый день:

  • Закрыть порты кластера на межсетевом экране для внешних адресов.
  • Создать пользователей СУБД с минимальными правами: владелец только своей базы.
  • Отключить в 1С вход без пароля.
  • Ограничить доступ к srvinfo и каталогам 1Cv8 только для служб и администраторов.
  • Настроить резервное копирование : ночью выгрузка средствами СУБД, раз в неделю проверка восстановления.

Резервная копия, которую ни разу не пробовали развернуть, не копия.

Что проверить после запуска: диагностика и производительность

Сервер поднялся, пользователи зашли. Дальше смотрим, как он живёт под нагрузкой.

Первая неделя

  • В консоли кластера следите за списком сеансов и рабочих процессов: нет ли процессов, которые постоянно перезапускаются.
  • В журнале регистрации ищите ошибки уровня «Ошибка» от службы сервера, они покажут блокировки и таймауты.
  • Включите технологический журнал только на время разбора проблемы: он быстро набирает гигабайты.
  • Для долгих операций откройте «Анализ производительности» (замер по ключевым операциям) в вашей конфигурации, если он там есть.

Типичные причины тормозов

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

Что ещё стоит автоматизировать

  • Перезапуск службы сервера по расписанию ночью не нужен как норма, но разрешён как временная мера, если есть утечка памяти.
  • Раз в месяц проверка размера srvinfo и очистка устаревших кэшей.
  • Скрипт на rac, снимающий зависшие сеансы перед обновлением конфигурации.
Проверка после запуска сервера
Выполнено: 0 / 5

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

Можно ли ставить сервер 1С на Linux?
Да, серверная часть платформы есть для Linux. Но для начинающего администратора Windows проще по настройке и поддержке, особенно если рядом работают клиентские приложения.
Сколько баз можно держать в одном кластере?
Жёсткого лимита нет, ограничение даёт железо. На практике в одном кластере держат от нескольких баз до нескольких десятков, если у каждой своя нагрузка.
Нужен ли отдельный сервер под СУБД?
Не сразу. До 20–30 пользователей хватает одной машины. Отдельный сервер СУБД имеет смысл, когда не хватает памяти или нужна независимая отказоустойчивость.
Как узнать, что кластер упёрся в память?
В диспетчере задач рабочие процессы rphost занимают почти всю память, а в журнале регистрации появляются ошибки связи. Это сигнал добавить память или ограничить лимит на процесс.
Что делать, если после обновления платформы публикация перестала работать?
Опубликуйте базу заново из Конфигуратора: публикация привязана к версии платформы и модулю расширения веб-сервера.