1С СЕРВЕР ВЗАИМОДЕЙСТВИЯ: ЧТО ЭТО, КОМПОНЕНТЫ И УСТАНОВКА
Сервер взаимодействия — что за зверь?
Сервер взаимодействия, система взаимодействия — это механизм, позволяющий обмениваться сообщениями и событиями между клиентскими приложениями, сервером 1С:Предприятия и пользователями одной или нескольких информационных баз в реальном времени. На нём построены чаты 1С, уведомления о событиях и push-подписки.
В состав дистрибутива входят три компонента:
- Сервер системы взаимодействия — ядро, принимает WebSocket-соединения от клиентов.
- Распределённое хранилище Hazelcast. В нём хранятся сессии пользователей, подписки на события, очереди сообщений.
- Поисковый кластер Elasticsearch. Используется для подбора пользователей и полнотекстового поиска по истории сообщений.
Сервер взаимодействия можно установить на Windows или Linux. Под Windows в дистрибутиве есть программа-инсталлятор, которая ставит все три компонента на одну машину и стандартным образом настраивает их между собой — самый простой вариант для старта. Под Linux компоненты разворачиваются отдельными пакетами вручную.
Способы установки — что выбрать
У сервера взаимодействия четыре типовых сценария развёртывания. Ниже — короткое сравнение, у каждого варианта есть отдельная подробная инструкция:
- Windows Server (этот материал, раздел ниже) — официальный инсталлятор с GUI, минимум ручной настройки. Подходит, если у вас уже есть инфраструктура на Windows Server и не хочется разбираться с Linux-командами.
- Ubuntu Server (без Docker) — установка deb-пакетами напрямую на голый Linux, полный контроль над каждым сервисом (OpenJDK, PostgreSQL, Hazelcast, Elasticsearch по отдельности). Подходит, если хотите управлять сервисами через systemd напрямую.
- Docker — Dockerfile + docker-compose, всё поднимается одной командой, легко переносить между серверами и включать в CI/CD.
- Yandex Cloud — не установка с нуля, а переезд уже работающего сервера (обычно с Windows) на Ubuntu-ВМ в облаке, с переносом истории сообщений.
Отдельно — обмен файлами через Amazon S3: это не способ установки, а надстройка над уже работающим сервером взаимодействия для передачи файлов через объектное хранилище.
Лицензирование и цена
Сервер взаимодействия распространяется в составе технологической платформы 1С:Предприятие 8 и требует действующей лицензии на сервер 1С — отдельно «лицензия на сервер взаимодействия» не продаётся. Вопрос обычно не «сколько стоит сервер взаимодействия», а «какая лицензия сервера 1С нужна, чтобы он заработал». Актуальные цены и условия поставки уточняйте в официальном прайс-листе фирмы «1С» или у своего партнёра-франчайзи — эти цифры меняются, поэтому здесь мы их сознательно не приводим.
Установка на Windows Server
Вот и я в своё время решил разобраться с этой системой. Скачал официальный дистрибутив 1С:Сервер взаимодействия, посмотрел ролики по установке — развернул чистую виртуалку и повторил шаги. Сходу ничего не заработало.
Прогнал по инструкции с ИТС — тоже мимо. Попробовал другую версию дистрибутива — не завелась. Начал разбираться в логах и обнаружил, что после установки инсталлятором не создаётся один из конфигурационных файлов — из-за этого сервис не мог подняться. Проблема решается вручную через утилиту ring, которая идёт в комплекте с дистрибутивом.
Устанавливать будем сервер взаимодействия версии 8.0.15 (платформа 1С — 8.3.17 и новее). Официальный дистрибутив для Windows скачивается с сайта ИТС и запускается обычным GUI-мастером — он ставит сервер, Hazelcast и Elasticsearch на одну машину и настраивает их между собой автоматически.
Типичная проблема после установки: не настроен WebSocket
Если после установки инсталлятором сервис поднимается, но клиенты не могут подключиться — почти наверняка не заданы параметры WebSocket-сервера. Задаются они через утилиту ring из командной строки:
ring cs --instance cs websocket set-params --hostname localhost
ring cs --instance cs websocket set-params --port 9000
После этого проверьте, что сервис поднялся, обратившись к health-эндпоинту:
http://localhost:8087/rs/health
Если в ответ приходит JSON со статусом "status":"UP" — сервис работает. Если не отвечает вовсе — проверьте те же параметры WebSocket и посмотрите логи сервиса; похожая диагностика подробно разобрана в инструкции по Ubuntu — там процесс полностью ручной и каждый шаг виден в консоли, что удобно и для диагностики похожих проблем на Windows.
FAQ
Сервер взаимодействия — это то же самое, что сервер 1С:Предприятия?
Нет. Сервер 1С:Предприятия обслуживает информационные базы и бизнес-логику конфигураций. Сервер взаимодействия — отдельный сервис для обмена сообщениями, подписок и уведомлений между клиентами; он подключается к информационной базе, но не заменяет собой рабочий сервер 1С.
За что отвечает сервер взаимодействия в связке с СУБД?
Сам сервер взаимодействия не хранит бизнес-данные в СУБД информационной базы — он использует собственное хранилище (PostgreSQL для очереди и истории сообщений в связке с Hazelcast и Elasticsearch, см. раздел «Из чего состоит» выше). С основной СУБД информационной базы 1С он напрямую не связан.
Можно ли поставить сервер взаимодействия без Docker и без облака?
Да, это самый гибкий вариант — см. установку на голый Ubuntu Server.
Нужен ли отдельный сервер, или можно на той же машине, где стоит 1С?
Технически можно развернуть на одной машине с сервером 1С, но Hazelcast и Elasticsearch заметно нагружают память и диск — на продакшене с активной перепиской лучше выносить сервер взаимодействия на отдельную виртуалку.