Программы, необходимые для установки
- JDK (64-разрядная) R09; версия 11. Рекомендуется Liberica JDK.
Для установки с помощью утилиты командной строки и работы сервера взаимодействия необходим вариант Standard.
Для установки с помощью графической утилиты необходим JDK с поддержкой Java FX (например, Liberica JDK вариант Full).
Лучше скачиваем версию FULL
Скачать JDK: https://libericajdk.ru/pages/downloads/ или https://bell-sw.com/pages/downloads/
- СУБД PostgreSQL R09; версия 9.6 и старше.
Рекомендуется использовать PostgreSQL версии 12.
Скачать сервер: https://www.postgresql.org/download/.
Документация: https://postgrespro.ru/docs/postgresql/.
- Установочный дистрибутив Сервера Взаимодействия (СВ) и обработка регистрации информационной базы CollaborationSystemRegister.epf
Скачать: https://releases.1c.ru/project/CollaborationSystem
Последовательность установки
- Устанавливаем JAVA JDK
- Добавляем системную переменную
- И этот же путь прописываем в переменные среды пользователя
- Перегружаем Сервер
- Устанавливаем PostgreSQL (1С советует версию 12), я ставил 14 и тоже все работает
- Запускаем утилиту администрирования pgAdmin4 и подключаемся к PostgreSQL
- Создаем пользователя: Login «cs» Pass «cs-pass»
- Создаем базу «1ce-cs»
- Открываем Query tools на созданной базе и выполняем скрипт
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
- Далее нужно запустить распаковку Сервера взаимодействия.
Устанавливаем и настраиваем Сервер Взаимодействия из командной строки
После установки файлов запускаем Командную строку от имени Администратора
Выполняем команду RING и смотрим, какие модули доступны в системе
Номер версии Сервера взаимодействия у Вас будет свой (тот, который скачали и поставили)
Создаем instance: (поместим все в отдельный каталог C:\cs\ …..)
- ring hazelcast instance create --dir C:\cs\hazelcast
- ring elasticsearch instance create --dir C:\cs\elasticsearch
- ring cs instance create --dir C:\cs\cs
Создаем сервисы для instance:
- ring hazelcast --instance hazelcast service create
- ring elasticsearch --instance elasticsearch service create
- ring cs --instance cs service create
Открываем службы и проверяем наличие наших созданных служб. Проверяем что Сервер Взаимодействия установился и работает: http://localhost:8087/rs/health
Status “UP” - свидетельствует о том что все ОК, сервер работает
Продолжаем настройку Сервера Взаимодействия.
Конфигурируем cs для доступа с других компьютеров
ring cs --instance cs websocket set-params --hostname 10.10.2.35 ( Ip адрес нашей сетевой карты где установлен СВ
ring cs --instance cs websocket set-params --port 9094 ( порт по стандарту 1С, можно указать любой)
Далее открываем Брандмауэр и создаем правило для входящих соединений на наш порт, указанный выше
Настраиваем взаимодействие с базой в Postgres
- Необходимо выполнить настройку параметров JDBC-драйверов PostgreSQL
ring cs --instance cs_instance jdbc pools --name common set-params --url jdbc:postgresql://localhost:5432/1ce-cs?currentSchema=public
ring cs --instance cs_instance jdbc pools --name common set-params --username cs
ring cs --instance cs_instance jdbc pools --name common set-params --password cs-pass
ring cs --instance cs_instance jdbc pools --name privileged set-params --url jdbc:postgresql://localhost:5432/1ce-cs?currentSchema=public
ring cs --instance cs_instance jdbc pools --name privileged set-params --username cs
ring cs --instance cs_instance jdbc pools --name privileged set-params --password cs-pass
- Инициализация базы данных
curl -Sf -X POST -H "Content-Type: application/json" -d "{ \"url\" : \"jdbc:postgresql://localhost:5432/1ce-cs\", \"username\" : \"cs\", \"password\" : \"cs-pass\", \"enabled\" : true }" -u admin:admin http://localhost:8087/admin/bucket_server
где:
1ce-cs – имя созданной базы
cs - логин пользователя созданный в п.7
cs-pass – пароль пользователя созданный в п.7
admin:admin - логин пароль по умолчанию в сервер взаимодействия ( если не меняли то не трогаем или пишем свои)
После всех успешно проделанных манипуляций имеем ссылку для регистразыы базы 1С к Серверу Взаимодействия ws://10.10.2.35:9094 по которой с помощью дополнительной обработки CollaborationSystemRegister.epf из комплекта установки СВ уже можно попытаться подключить базу.
Если при первом подключении ловим ошибку, то проверяем открытие порта в Брандмауэре и пробуем рестарт служб или лучше Сервера.
После этого все должно заработать
Если все заработало, можно приступить к настройке СВ для передачи файлов в сообщениях.
В настоящий момент проверена работа со следующими облачными хранилищами:
- Amazon/Amazon CDN.
- Google Cloud/Google Cloud CDN.
- Croc Cloud.
- T1 Cloud.
Также предоставляется возможность развернуть собственное объектное хранилище с помощью системы MinIO (https://min.io/). Описание установки системы следует смотреть в документации этого продукта: https://docs.min.io/.
Облачные хранилища по принятой в компании политике безопасности нам не подходят, будем ставить свое MinIO
Создаем папки C:\MinIO и C:\MinIOBase
Скачиваем установку сервера для Windows https://min.io/download#/windows в папку C:\MinIO в нее же помещаем файл скрипта.
Открываем PowerShell переходим с каталог cd C:\MinIO и запускаем скрипт .\Install-service.ps1 (приложен во вложении) он скачивает необходимые файлы и устанавливает MinIO в качестве службы
Открываем диспетчер задач и проверяем что появилась служба MinIO и она пока остановлена. Перед ее запуском необходимо провести определенные настройки. Они находятся в каталоге C:\MinIO в файле minio-service.xml
<service>
<id>MinIO</id>
<name>MinIO</name>
<description>MinIO is a high performance object storage server</description>
<executable>C:\MinIO\minio.exe</executable>
<env name="MINIO_ROOT_USER" value="minio"/>
<env name="MINIO_ROOT_PASSWORD" value="minio"/>
<arguments>server C:\MinIOBase --address ":9000" --console-address ":9001"</arguments>
<logmode>rotate</logmode>
</service>
Желтым – проверить пути и если нужно заменить на свои значения.
Зеленым - стандартные логин пароль для доступа в консоль MinIO, нужно придумать свои и заменить
Голубым - порты по умолчанию, если не пересекаются с другими, можно оставить или надо заменить на свободные.
Запускаем службу MinIO и подключаемся к консоли 127.0.0.1:9001
В ней нам необходимо создать Bucket (хранилище)
cs-bucket – название моего хранилища, и в каталоге C:\MinIOBase появляется папка с таким именем
Далее идем в Брандмауэр и делаем новое правило для входящих подключений для порта 9000
Запускаем pgAdmin открываем на нашей базе 1ce-cs Query Tool (запросник) и выполняем скрипт
INSERT INTO public.storage_server(id, type, base_url, container_url, container_name, region, access_key_id, secret_key, signature_version, is_deleted, upload_limit, download_limit, file_size_limit, created_at, updated_at, cdn_url, cdn_key_id, cdn_secret_key, state, cdn_enabled, path_style_access_enabled, bytes_to_keep, days_to_keep, pricing_url, api_type, storage_type, files_to_keep)
VALUES(
uuid_generate_v4(), 'AMAZON', 'http://10.10.2.35:9000','http://10.10.2.35:9000/${container_name}',
'cs-bucket',
'',
'LOGIN_MINIO',
'PASS_MINIO',
'V4', false, 1073741824, 1073741824, 104857600, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, NULL, NULL, NULL, 'ACTIVE', false, true, 0, 0, NULL, 'AMAZON', 'DEFAULT', 31);
Желтым – надо прописать свои логин пароль от MinIO
Зленым – свой IP и порт MinIO
Перезапускаем службу Сервера Взаимодействия
Открываем нашу базу 1С, переходим в обсуждения и в окне отправки сообщения должна появиться скрепка
Если скрепки нет, открываем обработку регистрации базы CollaborationSystemRegister.epf отменяем текущую регистрацию и выполняем повторную.
Все!
Наслаждаемся собой и работающей системой взаимодействия с передачей файлов и собственным сервером хранения этих файлов.
Все настройки выполнены без использования сертификатов и защищенных протоколов. Если необходимо настраивать с применением сертификатов то в Видео №1 есть такие пункты. Команды и скрипты для этого будут немного другие.
Источники, по которым самостоятельно были проделаны все описанные манипуляции, это несколько обучающих видео Низамова Ильи и описание с сайта ИТС
- https://www.youtube.com/watch?v=4vSeg5gxWwg
- https://www.youtube.com/watch?v=VfEPban39NQ&t=631s
- https://its.1c.ru/db/cs22doc
В архиве содержатся:
1) полный текст данной инструкции в формате Word
2) файл скрипта Install-service.ps1 по установке MinIO в качестве службы