Установка сервера взаимодействия 1с linux

Настройка 1С:Сервера взаимодействия

Для обмена файлами в системе взаимодействия необходимо подключиться на сервере взаимодействия к хранилищу файлов.Хранилище должно поддерживать протокол S3 (V2 или V4).

Можно развернуть собственное хранилище:

Или подключиться к существующим:

  1. Amazon
  2. Amazon CDN
  3. Google Cloud
  4. Google Cloud CDN
  5. Croc Cloud
  6. Техносерв

Необходимо выбрать только один вариант использования хранилища файлов:

  • Подготовка хранилища: Копировать в буфер обмена $ sudo mkdir -p /opt/minio
    $ sudo chown user:user /opt/minio
    $ sudo mkdir -p /var/minio
    $ sudo chown user:user /var/minio
    $ cd /opt/minio
    $ wget https://dl.min.io/server/minio/release/linux-amd64/minio
    $ sudo chmod +x minio
  • Открыть порт: Копировать в буфер обмена $ sudo firewall-cmd —zone=»public —add-port=9000/tcp» —permanent
    $ sudo firewall-cmd —reload
  • Запуск сервера хранилища в качестве службы:
    Пример взят с https://github.com/minio/minio-service/tree/master/linux-systemd

Для доступа к серверу хранилища, необходимо задать логин и пароль в переменных среды MINIO_ACCESS_KEY и MINIO_SECRET_KEY, соответственно. Чтобы значения этих переменных устанавливалиь при старте, занесем их инициализацию в /etc/default.

MINIO_VOLUMES=»»/var/minio/&»quot;
MINIO_ACCESS_KEY=»minio
MINIO_SECRET_KEY=»minio123

$ sudo vi /etc/systemd/system/minio.service

[Unit]
Description if [ -z \»$\» ]; then echo \»Variable MINIO_VOLUMES not set in /etc/default/minio\»; exit 1; fi»
ExecStart=/opt/minio/minio server $MINIO_OPTS $MINIO_VOLUMES
Restart=always
LimitNOFILE=65536
TimeoutStopSec=infinity
SendSIGKILL=no

Копировать в буфер обмена http://IP-адрес-сервера-хранилища:9000
Создайте новое хранилище, например cs-bucket

Логин: значение переменной MINIO_ACCESS_KEY,
Пароль: значение переменной MINIO_SECRET_KEY

Для добавления хранилища файлов в базу сервера взаимодействия:

  • Создать файл:
    Копировать в буфер обмена $ su postgres
    $ vi /tmp/create_bucket.sql
  • Текст файла:
    Копировать в буфер обмена 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)
    VALUES(
    uuid_generate_v4(), ‘AMAZON’, ‘http://ИМЯ СЕРВЕРА ИЛИ IP:9000′,’http://ИМЯ СЕРВЕРА ИЛИ IP:9000/$’,
    ‘cs-bucket’,
    »,
    ‘minio’,
    ‘minio123’,
    ‘V2’, false, 1073741824, 1073741824, 104857600, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, NULL, NULL, NULL, ‘ACTIVE’, false, true, 0, 0, NULL);
  • Выполнить запрос:
    Копировать в буфер обмена $ psql -U postgres —dbname=cs_db —file=/tmp/create_bucket.sql

  • В браузере открыть ссылку https://console.aws.amazon.com/s3
  • Войти или создать аккаунт.
  • Нажать кнопку Create bucket .
  • Задать имя хранилища, например 1c-cs-bucket-2.
  • Перейти по ссылке https://console.aws.amazon.com/iam/home
  • В верхнем правом углу нажать на логин и в выпадающем меню выбрать My Security Credentials .
  • Раскрыть пункт: Access keys (access key ID and secret access key) .
  • Нажать Create New Access Key .
  • Нажать Show Access Key .
  • Скопировать себе Access Key ID и Secret Access Key. Эти данные понадобятся в запросе на добавление хранилища в базу данных.

Если вы планируете работать в web-клиенте, то необходимо настроить CORS:

Для добавления хранилища файлов в базу сервера взаимодействия:

Источник

Настройка 1С:Сервера взаимодействия и медиасервера

  1. Установить Java по инструкции:
    https://bell-sw.com/pages/repositories/#yum
  2. Скачать дистрибутивы (версии могут отличаться): Сервер взаимодействия:
    https://releases.1c.ru/version_file?nick=CollaborationSystem&ver=10.0.47&path=CollaborationSystem\10_0_47\1c_cs_10.0.47_linux_x86_64.tar.gz PostgreSQL:
    https://releases.1c.ru/version_file?nick=AddCompPostgre&ver=11.5-19.1C&path=AddCompPostgre\11_5_19_1C\postgresql_11.5_19.1C_x86_64_rpm.tar.bz2
    https://releases.1c.ru/additional_file?nick=AddCompPostgre&path=AddCompPostgre\Extrafiles\centos_7.7.1908.x64.tar.gz
  3. Распаковать архивы: Копировать в буфер обмена $ tar xvzf 1c_cs_10.0.47_linux_x86_64.tar.gz
    $ tar xvjf postgresql_11.5_19.1C_x86_64_rpm.tar.bz2
  4. Установка сервера взаимодействия: Копировать в буфер обмена $ sudo ./1ce-installer-cli install
  5. Установка PostgreSQL: Копировать в буфер обмена $ sudo rpm -ihv libicu-50.2-3.el7.x86_64.rpm libxslt-1.1.28-5.el7.x86_64.rpm
    $ sudo rpm -ihv postgresql11-1c-11.5-19.el7.x86_64.rpm postgresql11-1c-libs-11.5-19.el7.x86_64.rpm postgresql11-1c-contrib-11.5-19.el7.x86_64.rpm postgresql11-1c-server-11.5-19.el7.x86_64.rpm
  6. Задать пароль “postgres” пользователю postgres: Копировать в буфер обмена $ sudo passwd postgres
  7. Запуск PostgreSQL: Копировать в буфер обмена $ su postgres
    $ /usr/pgsql-11/bin/initdb -D /var/lib/pgsql/11/data
    $ psql

postgres=# CREATE DATABASE cs_db;
postgres=# \c cs_db
postgres=# CREATE EXTENSION IF NOT EXISTS «uuid-ossp»;
postgres=# \q

Настройка обмена файлами в системе взаимодействия

Для обмена файлами в системе взаимодействия необходимо подключиться на сервере взаимодействия к хранилищу файлов. Хранилище должно поддерживать протокол S3 (V2 или V4).

Можно развернуть собственное хранилище:

Или подключиться к существующим:

  1. Amazon
  2. Amazon CDN
  3. Google Cloud
  4. Google Cloud CDN
  5. Croc Cloud
  6. Техносерв

Необходимо выбрать только один вариант использования хранилища файлов:

  1. Подготовка хранилища: Копировать в буфер обмена $ sudo mkdir -p /opt/minio
    $ sudo chown user:user /opt/minio
    $ sudo mkdir -p /var/minio
    $ sudo chown user:user /var/minio
    $ cd /opt/minio
    $ wget https://dl.min.io/server/minio/release/linux-amd64/minio
    $ sudo chmod +x minio
  2. Открыть порт: Копировать в буфер обмена $ sudo firewall-cmd —zone=public —add-port=9000/tcp —permanent
    $ sudo firewall-cmd —reload
  3. Запуск сервера хранилища в качестве службы:
    Пример взят с https://github.com/minio/minio-service/tree/master/linux-systemd

Для доступа к серверу хранилища, необходимо задать логин и пароль в переменных среды MINIO_ACCESS_KEY и MINIO_SECRET_KEY, соответственно. Чтобы значения этих переменных устанавливалиь при старте, занесем их инициализацию в /etc/default.
Копировать в буфер обмена $ sudo vi /etc/default/minio Копировать в буфер обмена MINIO_VOLUMES=»/var/minio/»
MINIO_ACCESS_KEY=minio
MINIO_SECRET_KEY=minio123

$ sudo vi /etc/systemd/system/minio.service

[Service]
WorkingDirectory=/usr/local/
User=user
Group=user
EnvironmentFile=/etc/default/minio
ExecStartPre=/bin/bash -c «if [ -z \»$\» ]; then echo \»Variable MINIO_VOLUMES not set in /etc/default/minio\»; exit 1; fi»
ExecStart=/opt/minio/minio server $MINIO_OPTS $MINIO_VOLUMES
Restart=always
LimitNOFILE=65536
TimeoutStopSec=infinity
SendSIGKILL=no

Создайте новое хранилище, например cs-bucket

Логин: значение переменной MINIO_ACCESS_KEY,
Пароль: значение переменной MINIO_SECRET_KEY

В данном примере будет использоваться хранилище Amazon

  1. В браузере открыть ссылку https://console.aws.amazon.com/s3
  2. Войти или создать аккаунт.
  3. Нажать кнопку Create bucket .
  4. Задать имя хранилища, например 1c-cs-bucket-2.
  5. Перейти по ссылке https://console.aws.amazon.com/iam/home
  6. В верхнем правом углу нажать на логин и в выпадающем меню выбрать My Security Credentials .
  7. Раскрыть пункт: Access keys (access key ID and secret access key) .
  8. Нажать Create New Access Key .
  9. Нажать Show Access Key .
  10. Скопировать себе Access Key ID и Secret Access Key. Эти данные понадобятся в запросе на добавление хранилища в базу данных.

Если вы планируете работать в web-клиенте, то необходимо настроить CORS:

  1. Откройте хранилище в браузере (или перейдите по ссылке https://console.aws.amazon.com/s3/buckets//?region=eu-west-1)
  2. Permissions / CORS Configuration
  3. Настройка с максимальным уровнем доступа:



    *
    GET
    POST
    DELETE
    *

  4. На сервере взаимодействия выполните команду Копировать в буфер обмена $ curl -Sf -X POST -H ‘Content-Type: application/json’ -d ‘< "type": "AMAZON", "baseUrl": "https://s3.amazonaws.com", "containerUrl": "https://$.s3.$.amazonaws.com", "containerName": "Имя хранилища", "region": "eu-west-1", "accessKeyId": "Access Key ID", "secretKey": "Secret Access Key", "signatureVersion": "V4", "uploadLimit": 1073741824, "downloadLimit": 1073741824, "fileSizeLimit": 104857600, "bytesToKeep": 104857600, "daysToKeep": 31, "pathStyleAccessEnabled": false >‘ -u admin:admin http://localhost:8087/admin/storage_server

Подключение информационной базы к серверу взаимодействия

Подключение медиасервера для проведения видеоконференций

  1. Установить git: Копировать в буфер обмена $ sudo yum install git
  2. Создать папку сбора дистрибутива Копировать в буфер обмена $ mkdir ~/distr
    $ cd ~/distr
  3. Установить пакеты из репозитория Копировать в буфер обмена $ sudo yum install epel-release
    $ sudo yum install wget ninja-build meson jansson-devel openssl-devel libsrtp-devel sofia-sip-devel glib2-devel opus-devel libogg-devel libcurl-devel pkgconfig gengetopt libconfig-devel libtool autoconf automake cmake
    $ sudo yum groupinstall ‘Development Tools’
  4. Установить пакет libnice Копировать в буфер обмена $ cd ~/distr
    $ git clone https://gitlab.freedesktop.org/libnice/libnice.git
    $ cd libnice
    $ meson —prefix=/usr build && ninja -C build && sudo ninja -C build install
  5. Установить пакет libmicrohttpd-0.9.59-2.el7.x86_64 Копировать в буфер обмена $ wget http://ftp.gnu.org/gnu/libmicrohttpd/libmicrohttpd-0.9.59.tar.gz
    $ tar xvf libmicrohttpd-0.9.59.tar.gz
    $ cd libmicrohttpd-0.9.59
    $ ./configure —libdir=/usr/lib64
    $ make
    $ sudo make install
    $ sudo ldconfig
  6. Установить пакет libsrtp Копировать в буфер обмена $ cd ~/distr
    $ wget https://github.com/cisco/libsrtp/archive/v2.2.0.tar.gz
    $ tar xfv v2.2.0.tar.gz
    $ cd libsrtp-2.2.0
    $ ./configure —prefix=/usr —enable-openssl —libdir=/usr/lib64
    $ make shared_library && sudo make install
  7. Установить пакет libwebsockets Копировать в буфер обмена $ cd ~/distr
    $ git clone https://libwebsockets.org/repo/libwebsockets
    $ cd libwebsockets
    $ mkdir build
    $ cd build
    $ cmake -DLWS_MAX_SMP=1 -DCMAKE_INSTALL_PREFIX:PATH=/usr -DCMAKE_C_FLAGS=»-fpic» -DLIB_SUFFIX=64 ..
    $ make && sudo make install
  8. Установить медиасервер janus от компании 1С Копировать в буфер обмена $ cd ~/distr
    $ git clone https://github.com/1C-Company/janus-gateway
    $ cd janus-gateway
    $ sh autogen.sh
    $ ./configure —disable-data-channels —disable-rabbitmq —disable-mqtt —prefix=/opt/janus —libdir=/usr/lib64
    $ make
    $ sudo make install
  9. Создать файлы настроек Копировать в буфер обмена $ cd /opt/janus/etc/janus
    $ sudo cp janus.eventhandler.gelfevh.jcfg.sample janus.eventhandler.gelfevh.jcfg
    $ sudo cp janus.eventhandler.sampleevh.jcfg.sample janus.eventhandler.sampleevh.jcfg
    $ sudo cp janus.eventhandler.wsevh.jcfg.sample janus.eventhandler.wsevh.jcfg
    $ sudo cp janus.jcfg.sample janus.jcfg
    $ sudo cp janus.plugin.audiobridge.jcfg.sample janus.plugin.audiobridge.jcfg
    $ sudo cp janus.plugin.echotest.jcfg.sample janus.plugin.echotest.jcfg
    $ sudo cp janus.plugin.nosip.jcfg.sample janus.plugin.nosip.jcfg
    $ sudo cp janus.plugin.recordplay.jcfg.sample janus.plugin.recordplay.jcfg
    $ sudo cp janus.plugin.streaming.jcfg.sample janus.plugin.streaming.jcfg
    $ sudo cp janus.plugin.textroom.jcfg.sample janus.plugin.textroom.jcfg
    $ sudo cp janus.plugin.videocall.jcfg.sample janus.plugin.videocall.jcfg
    $ sudo cp janus.plugin.videoroom.jcfg.sample janus.plugin.videoroom.jcfg
    $ sudo cp janus.plugin.voicemail.jcfg.sample janus.plugin.voicemail.jcfg
    $ sudo cp janus.transport.http.jcfg.sample janus.transport.http.jcfg
    $ sudo cp janus.transport.pfunix.jcfg.sample janus.transport.pfunix.jcfg
  10. Настройки Janus Копировать в буфер обмена $ sudo mkdir /var/log/janus
    $ sudo vi /opt/janus/etc/janus/janus.jcfg Копировать в буфер обмена admin_secret = пароль администратора
    event_loops = количество ядер
    no_media_timer = 2
    min_nack_queue = 500
    opaqueid_in_api = true
    ignore_mdns = true # если не нужны подключения по локальной сети
    log_to_stdout = false
    log_lo_file = /var/log/janus/janus.log Копировать в буфер обмена $ sudo vi /opt/janus/etc/janus/janus.plugin.videoroom.jcfg Копировать в буфер обмена string_ids = true
  11. Запуск janus в качестве службы Копировать в буфер обмена $ sudo vi /etc/systemd/system/janus.service
    [Unit]
    Description=Janus WebRTC Server
    After=network.target

mediaserver — имя машины или IP-адрес сервера Janus.

$ sudo vi /var/cs/cs_instance/config/video.yml video: enabled: true conference-server-based-member-limit: 34 conference-server-based-threshold: 3 # Количество участников конференции, после которого используется медиасервер, вместо прямого соединения p2p max-bandwidth: 2000 max-reference-width: 1280 max-reference-height: 720 max-reference-fps: 30

Для проверки, что конференция идет через медиасервер, необходимо создать конференцию с числом участников >= значения параметра conference-server-based-threshold. После того, как все участники конференции ответят на звонок, выполнить команду:

$ sudo netstat -antp | grep -i janus

Источник

Читайте также:  Перезагрузка сетевого интерфейса линукс
Оцените статью
Adblock
detector