Сервер 1С:Предприятия 8.3 от установки до мониторинга: что и где настроить
Содержание
Правильная настройка сервера
1С сводится к пяти вещам: служба агента под отдельной учётной записью, открытые порты 1540, 1541 и 1560–1591, ограничения памяти рабочих процессов, грамотно созданные базы на СУБД и включённый технологический журнал. Всё остальное — тонкая подстройка под нагрузку.
Ниже порядок для платформы 8.3 (сборки 8.3.2x) на Windows Server 2016 и новее и на Linux (Ubuntu, Debian, РЕД ОС, Astra). Настройки кластера и баз в обеих ОС одинаковые, различаются только установка и управление службой.
Что подготовить: железо, ОС и учётная запись
Сервер 1С выполняет каждый серверный вызов в одном потоке. Поэтому для неё важнее высокая частота ядра, чем их количество. Процессор с частотой 3,5+ ГГц на ядро даст заметно больше, чем «много медленных ядер».
Ориентировочные конфигурации (примерно, для типовых БП, ЗУП, УТ):
| Пользователей | Процессор | Память | Диски |
|---|---|---|---|
| до 15 | 4 ядра | 16 ГБ | SSD |
| 15–50 | 8 ядер | 32–64 ГБ | NVMe под базы и tempdb |
| 50+ | СУБД и 1С на разных серверах | 64 ГБ+ на каждом | NVMe, отдельный том под журналы транзакций |
Что сделать в ОС до установки:
- ⚡ Схема электропитания. В Windows переключите на «Высокая производительность»: в режиме «Сбалансированная» частота процессора плавает, и серверные вызовы проседают.
- 🕒 Время. Синхронизация с NTP. Расхождение часов между сервером 1С и СУБД ломает регламентные задания и отборы по дате.
- 🧑💻 Учётная запись службы. Заведите отдельного пользователя, например
USR1CV8. Ему нужны права «Вход в качестве службы» и членство в группе «Пользователи журналов производительности». Права локального администратора не давайте. - 🌐 Имя сервера. Клиенты должны разрешать имя сервера в IP (DNS или файл
hosts). Сервер 1С возвращает клиенту адреса рабочих процессов по имени, и если имя не резолвится, подключение рвётся уже после соединения с агентом.
В Linux дополнительно проверьте локаль ru_RU.UTF-8 (locale -a) и установите пакеты шрифтов, если сервер формирует печатные формы в PDF.
Как установить сервер 1С и поднять кластер
Windows
- Запустите
setup.exeиз дистрибутива «Технологическая платформа». Выберите вариант для 64-разрядной ОС. - В списке компонентов включите «Сервер 1С:Предприятия 8» и «Администрирование сервера 1С:Предприятия».
- На шаге установки сервера отметьте «Установить 1С:Предприятие как сервис Windows
» и укажите созданного пользователя
USR1CV8с паролем. - После установки откройте
services.mscи убедитесь, что служба «Агент сервера 1С:Предприятия 8.3» запущена и стоит в автозапуске.
Чтобы открыть консоль кластера, оснастку нужно зарегистрировать для своей версии платформы. Это главный шаг, на котором спотыкаются: консоль пишет, что не может создать объект, или подключается не к той версии.
regsvr32 "C:\Program Files\1cv8\8.3.24.1548\bin\radmin.dll"
Номер версии подставьте свой. После каждого обновления платформы команду повторяют для новой папки. Затем откройте «Администрирование серверов 1С Предприятия», добавьте центральный сервер по имени — локальный кластер на порту 1541 создаётся при первом запуске службы автоматически.
Linux
Начиная с 8.3.20 дистрибутив поставляется одним файлом setup-full-8.3.xx.xxxx-x86_64.run. Запустите его с ключом установки сервера (список ключей покажет --help), а затем подключите службу через systemd. С 8.3.21 в комплекте есть готовый юнит:
sudo systemctl link /opt/1cv8/x86_64/8.3.24.1548/srv1cv8-8.3.24.1548@.service
sudo systemctl enable srv1cv8-8.3.24.1548@default
sudo systemctl start srv1cv8-8.3.24.1548@default
sudo systemctl status srv1cv8-8.3.24.1548@default
Графической консоли в Linux нет. Управлять кластером можно с Windows-машины через ту же оснастку либо из командной строки: поднимите сервер администрирования ras (в той же папке есть юнит ras-8.3.xx.xxxx.service) и обращайтесь к нему утилитой rac. Порт ras по умолчанию — 1545.
/opt/1cv8/x86_64/8.3.24.1548/rac localhost:1545 cluster list
Порты, которые нужно открыть
| Порт | Кто слушает | Зачем |
|---|---|---|
1540 | Агент сервера (ragent) | Первичное подключение клиента и консоли |
1541 | Менеджер кластера (rmngr) | Координация кластера |
1560–1591 | Рабочие процессы (rphost) | Собственно работа пользователей |
1545 | Сервер администрирования ras | Только если управляете через rac |
Диапазон рабочих процессов задаётся в свойствах рабочего сервера. Если меняете его, откройте в брандмауэре новый диапазон, иначе клиенты будут подключаться к агенту и падать на следующем шаге.
Память и рабочие процессы: какие параметры кластера трогать
По умолчанию кластер не ограничивает память. Одна тяжёлая обработка может съесть всю оперативку и уронить работу остальных. Поэтому лимиты ставят сразу после установки.
Откройте в консоли Кластер → Рабочие серверы → <имя сервера> → Свойства. Там настраиваются:
- 📏 Критический объем памяти процессов. Общий потолок для всех
rphostна этом сервере. При превышении платформа обрывает самый тяжёлый вызов. Практичный ориентир — 70–80% от памяти, которая остаётся после ОС и СУБД. - 🧮 Временно допустимый объем памяти процессов и интервал его превышения. Мягкий порог: если процессы держатся выше него дольше заданного интервала, платформа завершает самый объёмный вызов.
- 🧯 Безопасный расход памяти за один вызов. Лимит на одну операцию. Защищает от «зависшего» отчёта без отборов. Для бухгалтерских баз разумно 2–4 ГБ.
- 🧩 Количество ИБ на процесс и Количество соединений на процесс. По умолчанию 8 и 128. Для крупной базы с сотней пользователей ставят 1 ИБ на процесс: тогда её кэш метаданных не делит процесс с другими базами.
В свойствах самого кластера смотрите:
- Интервал перезапуска — плановая перезагрузка рабочих процессов, например раз в сутки (
86400секунд). Помогает от медленных утечек памяти. - Допустимый объем памяти и интервал превышения — перезапуск процесса, если он разросся сверх нормы.
- Принудительно завершать проблемные процессы — включайте: зависший
rphostиначе будет висеть до ручного вмешательства.
Перезапуск рабочего процесса переводит пользователей на новый процесс, но длинные операции, которые выполнялись в момент перезапуска, обрываются. Ставьте интервал так, чтобы он не попадал на закрытие месяца и ночные обмены.
Пример расчёта
Сервер с 64 ГБ, СУБД на нём же. MS SQL ограничен 28 ГБ, ОС оставляем 4 ГБ. Под 1С остаётся 32 ГБ. Критический объем — около 24 ГБ (75%), временно допустимый — 20 ГБ с интервалом 300 секунд, безопасный расход за вызов — 3 ГБ.
Файловые и клиент-серверные базы: как их разместить
Файловая база работает без сервера 1С и без СУБД: клиент открывает файл 1Cv8.1CD напрямую. Кластер файловыми базами не управляет и лимиты памяти на них не действуют.
Файловый вариант оправдан для 1–5 одновременных пользователей и баз до нескольких гигабайт. Если людей больше или база растёт, переводите её в клиент-серверный режим: выгрузка .dt в Конфигураторе → создание новой базы на кластере → загрузка .dt.
Если файловая база всё-таки лежит в сетевой папке, держите её на сервере с SSD, а не на NAS. И не открывайте её одновременно из разных версий платформы.
Создание базы на кластере
В консоли Информационные базы → Создать:
- Имя — то, под которым база видна в кластере. Латиница без пробелов, например
buh_ooo_romashka. - Защищенное соединение — «Выключено» в локальной сети, «Только соединение» при работе через внешние каналы.
- Тип СУБД —
MSSQLServerилиPostgreSQL. - Сервер баз данных, имя базы данных, пользователь и пароль СУБД.
- Смещение дат —
2000для MS SQL. - Отметьте «Создать базу данных в случае ее отсутствия».
- Блокировка регламентных заданий — включите для копий и тестовых баз. Иначе копия начнёт отправлять отчётность, загружать курсы и запускать обмены от имени рабочей организации.
- Разрешить выдачу лицензий сервером 1С:Предприятия — включите, если программные лицензии активированы на сервере.
Настройки СУБД, которые влияют на 1С
| Параметр | MS SQL Server | PostgreSQL |
|---|---|---|
| Сборка | Обычная редакция Standard/Enterprise | Сборка с патчами для 1С (от 1С или Postgres Pro) |
| Ограничение памяти | max server memory, оставить ОС и 1С их долю | shared_buffers около 25% ОЗУ |
| Параллелизм | MAXDOP = 1 | Параметры параллельных запросов не завышать |
| Модель восстановления | Full + бэкапы журнала для рабочих баз, Simple для тестовых | Архивирование WAL при необходимости PITR |
| Обслуживание | Перестроение индексов, обновление статистики | VACUUM ANALYZE, контроль автовакуума |
Обычный «ванильный» PostgreSQL без патчей с 1С не работает . Берите дистрибутив, который предназначен для 1С, и проверяйте, что его версия поддерживается вашей версией платформы.
Права и безопасность кластера
После установки кластер открыт: любой, у кого есть консоль и сетевой доступ к порту 1540, может удалить базу или сбросить сеансы. Закрывают это в первую очередь.
- Администратор центрального сервера. В консоли на узле центрального сервера
Администраторы → Создать. Можно указать логин с паролем или аутентификацию ОС. После этого анонимный доступ к агенту пропадает. - Администратор кластера. То же самое в ветке
Кластер → Администраторы. Без этого кто угодно меняет параметры кластера. - Учётная запись СУБД. Для 1С заведите отдельного пользователя СУБД с правами на создание баз, а не
saилиpostgres. - Профили безопасности. В ветке кластера
Профили безопасностиможно запретить коду конфигурации доступ к файлам, COM-объектам, внешним компонентам и сети. Профиль назначают базе в её свойствах. Это защита от вредоносных внешних обработок. - Сеть. Порты кластера открывайте только для локальной сети. Удалённым сотрудникам — VPN, RDP или веб-публикация, но не проброс
1540в интернет.
Пароль администратора кластера хранится в служебных файлах каталога srvinfo. Сделайте резервную копию каталога srvinfo сразу после настройки. Если пароль потеряли, порядок такой: остановить службу в нерабочее время (все сеансы оборвутся), восстановить файлы реестра кластера из копии, запустить службу.
Каталог srvinfo по умолчанию: в Windows C:\Program Files\1cv8\srvinfo, в Linux — в домашнем каталоге пользователя службы, /home/usr1cv8/.1cv8/1C/1cv8.
Как следить за сервером и что делать регулярно
Ежедневная картина в консоли
- 👥 Сеансы — кто и в какой базе сидит, сколько занимает процессорного времени и памяти. Сортировка по «Память (текущая)» показывает, кто сейчас грузит сервер.
- 🔒 Блокировки — кто держит управляемые блокировки. Полезно, когда пользователи жалуются на «зависание» при проведении.
- ⚙️ Рабочие процессы — объём памяти каждого
rphost, доступная производительность. Если доступная производительность одного процесса падает сильно ниже соседних, он перегружен или тормозит.
Из командной строки то же самое получают через rac: список кластеров — rac cluster list, сеансы с лицензиями — rac session list --cluster=<id> --licenses. Остальные подкоманды смотрите в rac help.
Технологический журнал
Без журнала разбор «почему тормозит» превращается в гадание. Файл настройки logcfg.xml кладут в каталог conf платформы: C:\Program Files\1cv8\conf\ в Windows или /opt/1cv8/conf/ в Linux. Сервер подхватывает его без перезапуска.
Минимальный журнал, который стоит держать включённым всегда, — исключения:
<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="http://v8.1c.ru/v8/tech-log">
<log location="D:\1c_logs\excp" history="48">
<event>
<eq property="name" value="EXCP"/>
</event>
<property name="all"/>
</log>
</config>
history — сколько часов хранить файлы. Для разбора тормозов временно добавляют события длинных запросов к СУБД и ожиданий на блокировках, а после разбора отключают: подробный журнал быстро съедает диск.
Регламент обслуживания
| Задача | Как часто | Чем |
|---|---|---|
| Полная резервная копия базы | Ежедневно | Средствами СУБД (план обслуживания MS SQL, pg_dump) |
| Копия журнала транзакций | Каждые 15–60 минут | Для MS SQL в модели Full |
| Обновление статистики | Ежедневно ночью | План обслуживания / VACUUM ANALYZE |
| Перестроение индексов | Раз в неделю | План обслуживания MS SQL |
| Проверка свободного места | Ежедневно | Мониторинг дисков ОС |
Копия srvinfo | После любых изменений кластера | Копирование каталога при остановленной службе |
Выгрузку .dt для ежедневного бэкапа серверной базы не используйте. Она медленная, требует монопольного доступа и на больших базах занимает часы.
Типовые сбои после настройки
После обновления платформы на сервере старая служба остаётся зарегистрированной. Перед удалением старой версии остановите её службу в нерабочее время: все сеансы пользователей на ней оборвутся. Затем установите службу новой версии и перенесите в неё каталог srvinfo, если новая служба создала пустой реестр кластера.
Частые вопросы
Можно ли держать на одном сервере 1С и СУБД?
Нужна ли отдельная лицензия на сервер 1С?
Сколько рабочих процессов должно быть?
Как запустить отладку на сервере 1С?
-debug. Делайте это только на тестовом сервере: режим отладки нагружает процессы и даёт доступ к исполняемому коду.Можно ли поставить на один сервер две версии платформы?
2540, 2541 и диапазон 2560–2591. Клиент тогда указывает сервер как имя:2541.