Содержание

Технические требования

  • 6 Виртуальных машин (без slave и файлового сервера — 4);
  • Для сервера NFS дополнительно 3 диска (для Р7-Диск, для Сервера документов, для Сервера поиска);
  • ТХ Машин, для тестирования, возможно использовать:
  • от 2 CPU;
  • от 4Гб RAM (для ролей Поиска и Р7-диска рекомендуем использовать от 8Гб);
  • от 20Гб свободного пространства на диске;
  • Более конкретные данные рассчитываются по обращению в ТП;
  • Отключение или перевод selinux в режим permissive для корректной работы сервисов.

1. Архитектура

1.1. Схема

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

1.2. Описание

1.2.1. Роль Р7-Диск

Фронт и бэкенд сервиса Р7-Диска, модули Р7-Диск, Р7-Почта, Р7-Админ, Р7-Календарь и т.д. Хранение и обработка пользовательских сессий и файлов

1.2.2. Роль PostgreSQL

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

1.2.3. Роль Поиск

Отвечает за поиск файлов и писем в продукте Р7-Диск, крайне требователен к ресурсам сервера. Чем больше данных и чаще ведётся поиск, тем больше требуется ресурсов.

1.2.4. Роль NFS сервер

Является файловым хранилищем, в данном примере является хранилищем пользовательских файлов и индексов в Р7-Диске и Сервисе Поиска, а также хранение кеша и лицензии Сервера документов.

1.2.5. Роль Сервер документов

Отвечает за функционал редактирования документов

2. Установка NFS сервера

Рассмотрим вариант простого nfs хранилища на RedOS 7.3, для примера.

Также файловый сервер возможно заменить монтированием дополнительных дисков на ВМ.

При включенной службе firewalld необходимо выполнить настройку для nfs.

# Добавляем службу:
sudo firewall-cmd --permanent --zone=public --add-service=nfs
  
# Перезапускаем службу firewalld:
sudo firewall-cmd --reload
  
# Проверяем правила для зоны public:
sudo firewall-cmd --zone=public --list-all

2.1. Установите пакеты:

sudo dnf install nfs-utils nfs4-acl-tools -y

2.2. Запустите сервис

sudo systemctl enable nfs-server --now

2.3. Создайте директории

В данные директории рекомендуется примонтировать отдельные диски для каждого сервиса, удобным Вам способом

# для сервера документов
mkdir -p /mnt/ds/cache
mkdir /mnt/ds/license
# для сервиса поиска
mkdir /mnt/search
# для Р7-Диск
mkdir /mnt/disk

2.3.1. Как примонтировать диск в ОС

2.3.1.1. Добавьте к ВМ новый диск доступным способом
2.3.1.2. Найдите его обозначение
fdisk -l

Вывод:

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

В нашем примере 3 новых диска,

  • /dev/sdb,
  • /dev/sdc
  • /dev/sdd
2.3.1.3. Создайте простым способом раздел

Далее команды предоставляются, как пример создания раздела и монитирования

fdisk /dev/sdb

Далее наберите один раз n и Enter до появления строки

Создан новый раздел 1 с типом ‘Linux’ и размером 5 GiB.

Далее введите w и нажмите Enter

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

Создан раздел /dev/sdb1, с которым и будет далее работать

2.3.1.4. Отформатируйте в etx4
mkfs.ext4 /dev/sdb1

Вывод:

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

Запомните UUID.

2.3.1.5. Добавьте в fstab и монтируем

Откройте на редактирование

nano /ets/fstab

Добавьте запись следующего вида

UUID="79af1b76-ceec-4846-81f3-1580dff3beb3" /mnt/ds ext4 defaults 0 0

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

Где,

  • UUID=»79af1b76-ceec-4846-81f3-1580dff3beb3″ — id файловой системы диска /dev/sdb1;
  • /mnt/ds — куда монтировать раздел;
  • ext4 — тип файловой системы;
  • defaults — опции монтирования;
  • 0 — Индикатор необходимости делать резервную копию (как правило не используется и равно 0);
  • 2 — Порядок проверки раздела (0 — не проверять, 1 — устанавливается для корня, 2 — для остальных разделов).

После монтирования в /mnt/ds, повторите команды создания каталогов в этой директории

mkdir /mnt/ds/cache
mkdir /mnt/ds/license

Повторяем процедуру с остальными дисками, монтируя в оставшиеся каталоги

Конечный результат:

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

2.3.1.6. Выполните команду монтирования
mount -a

Проверьте

df -hT

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

Также рекомендуем перезагрузить ВМ и повторно проверить состояние монтирования.

2.4. Добавьте файл лицензии

По данному пути добавьте файл лицензии с именно таким именем license.lic для Сервера документов

/mnt/data/license.lic

3. Роль PostgreSQL. Общая настройка

При включенной службе firewalld необходимо выполнить настройку для PostgreSQL.

# Добавляем службу:
sudo firewall-cmd --permanent --zone=public --add-service=postgresql
  
# Перезапускаем службу firewalld:
sudo firewall-cmd --reload
  
# Проверяем правила для зоны public:
sudo firewall-cmd --zone=public --list-all

Рекомендация

Рекомендуем монтировать дополнительный диск на сервера СУБД в директорию /var/lib/pgsql (путь на момент написания статьи) до инсталляции, чтобы данная файловая система не была загружена процессами ОС. Можно воспользоваться пунктом 2.3.1 данной инструкции.

3.1. Установите PostgreSQL

sudo dnf install postgresql-server -y

3.2. Инициализируйте БД

/usr/bin/postgresql-setup --initdb --unit postgresql

3.3. Добавьте сервис в автозагрузку

sudo systemctl enable postgresql

3.4. Приведите файл pg_hba.conf к виду

Находится по пути

/var/lib/pgsql/data/pg_hba.conf

Приведите к виду

# "local" is for Unix domain socket connections only
local all all peer
# IPv4 local connections:
host all all 127.0.0.1/32 md5
  
# Указать сервер Р7-Диска
host cddisk cddisk 192.168.27.52/32 md5
  
# IPv6 local connections:
host all all ::1/128 md5
# Allow replication connections from localhost, by a user with the
# replication privilege.
local replication all peer
host replication all 127.0.0.1/32 md5
host replication all ::1/128 md5

Где, строки вида

  • host cdidks cddisk 192.168.25.234/32 md5 — Это доступ к БД cddisk пользователю cddisk с ip 192.168.25.234 по методу md5

3.5. Отредактируйте файл postgresql.conf

Путь до файла

/var/lib/pgsql/data/postgresql.conf

Приведите параметры к следующему виду и раскомментируйте их

listen_addresses = 'localhost, 192.168.27.211'
port = 5432

Где,

  • localhost, 192.168.25.102 — интерфейсы, которые должен слушать PostgreSQL на ВМ, где он установлен. Можно также указать ‘*’, чтобы слушались все интерфейсы

3.6. Перезапустите сервис

sudo systemctl restart postgresql

Проверьте

sudo systemctl status postgresql

3.7. Проверьте, что СУБД слушает нужные интерфейсы

ss -tln | grep 5432

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

4. Роль PotgreSQL. Настройка Master

4.1. Создайте пользователя и БД

sudo -i -u postgres psql -c "CREATE USER cddisk WITH password 'cddisk';"
sudo -i -u postgres psql -c "CREATE DATABASE cddisk OWNER cddisk;"
sudo -i -u postgres psql -c "GRANT ALL privileges ON DATABASE cddisk TO cddisk;"

4.2. Создайте пользователя для репликации

su - postgres
createuser --replication -P repluser

Запросит ввод пароля для новой роли, сохраните его

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

4.3. Отредактируйте конфиг postgresql.conf

/var/lib/pgsql/data/postgresql.conf

Приведите следующие параметры к виду

wal_level = replica
max_wal_senders = 2
max_replication_slots = 2
hot_standby = on
hot_standby_feedback = on

Где

  • wal_level — указывает, сколько информации записывается в WAL (журнал операций, который используется для репликации);
  • max_wal_senders — количество планируемых слейвов;
  • max_replication_slots — максимальное число слотов репликации;
  • hot_standby — определяет, можно или нет подключаться к postgresql для выполнения запросов в процессе восстановления;
  • hot_standby_feedback — определяет, будет или нет сервер slave сообщать мастеру о запросах, которые он выполняет.

4.4. Редактируйте файл pg_hba.conf

Находится по пути

/var/lib/pgsql/data/pg_hba.conf

Добавьте строки в конце

host replication repluser 127.0.0.1/32 md5
host replication repluser 192.168.27.211/32 md5
host replication repluser 192.168.27.137/32 md5
  • Данной настройкой Вы разрешаете подключение к базе данных replication пользователю repluser с локального сервера (localhost и 192.168.27.211) и сервера 192.168.27.137 (slave).

4.5. Перезапустите службу postgresql

systemctl restart postgresql

5. Роль PostgreSQL. Настройка Slave (опционально)

5.1. Остановите PostgreSQL

sudo systemctl stop postgresql

5.2. Сделайте бэкап

sudo tar -czvf /tmp/psql.tar.gz /var/lib/pgsql/data

5.3. Удалите содержимое

sudo rm -rf /var/lib/pgsql/data/*

5.4. Реплицируем с Master на Slave

su - postgres -c "pg_basebackup --host=192.168.27.211 --username=repluser --pgdata=/var/lib/pgsql/data --wal-method=stream --write-recovery-conf"

Где,

  • 192.168.27.211 — IP-адрес мастера;
  • /var/lib/pgsql/data — путь до каталога с данными;
  • repluser — пользователь, созданный для репликации, на Master.

После ввода команды система запросит пароль для созданной ранее учетной записи repluser — введите его.

Начнется процесс клонирования данных.

5.5. Запустите PostgreSQL

sudo systemctl start postgresql

5.6. Проверьте репликацию

5.6.1. Посмотрите статус

Статус работы репликации можете посмотреть следующими командами.

5.6.1.1. На Master
sudo -u postgres psql -x -c 'select * from pg_stat_replication;'

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

5.6.1.2. На Slave
sudo -u postgres psql -x -c 'select * from pg_stat_wal_receiver;'

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

5.6.2. Создайте тестовую базу на Master

5.6.2.1. На мастере зайдите в командную оболочку Postgres
su - postgres -c "psql"
5.6.2.2. Создайте новую базу данных
CREATE DATABASE repltest ENCODING='UTF8';

5.6.3. На Slave посмотрите список баз

5.6.3.1. Выполните команду
sudo -u postgres psql -c '\l'
5.6.3.2. Должны увидеть среди баз ту, которую создали на Master сервере

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

5.6.4. Настройка завершена

6. Роль Сервер документов (DS)

При включенной службе firewalld необходимо выполнить настройку для DS.

 

# Добавляем службу:
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --permanent --zone=public --add-service=http
  
# Перезапускаем службу firewalld:
sudo firewall-cmd --reload
  
# Проверяем правила для зоны public:
sudo firewall-cmd --zone=public --list-all

6.1. Установка

6.1.1. Установите необходимые сервисы

sudo dnf install nginx postgresql postgresql-server redis rabbitmq-server -y

6.1.2. Запустите и добавьте в автозагрузку

sudo systemctl enable redis rabbitmq-server nginx
sudo systemctl start redis rabbitmq-server nginx

6.1.3. Инициализируйте базу данных

sudo service postgresql initdb

6.1.4. Откройте конфигурационный файл pg_hba.conf

Путь до файла

/var/lib/pgsql/data/pg_hba.conf

Приведите имеющиеся строки к виду

host all all 127.0.0.1/32 trust
host all all ::1/128 trust

6.1.5. Запустите PostgreSQL

sudo systemctl enable --now postgresql

6.1.5. Создайте БД и пользователя

При необходимости, можете БД вынести на имеющийся Master, сделав соответствующие настройки и доступы

sudo -u postgres psql -c "CREATE USER r7office WITH password 'r7office';"
sudo -u postgres psql -c "CREATE DATABASE r7office OWNER r7office;"
sudo -u postgres psql -c "GRANT ALL privileges ON DATABASE r7office TO r7office;"

6.1.6. Установка Сервера документов

6.1.6.1. Откройте файл на редактирование
sudo nano /etc/yum.repos.d/r7server.repo
6.1.6.2. Добавьте следующий текст
[r7server]
name=r7server
baseurl=https://downloads.r7-office.ru/repository/r7-server-yum/
enabled=1
gpgcheck=1
gpgkey=https://download.r7-office.ru/repos/RPM-GPG-KEY-R7-OFFICE.public
sslverify=1
username=server
password=KwmuQmOzuFIw9wcJsL3zb
6.1.6.3. Обновите список репозиториев с подгружаемыми данными
sudo yum makecache
6.1.6.4. Для установки Сервера документов выполните следующую команду:
yum install r7-office-documentserver-ee
6.1.6.5. Запустите зависимые сервисы и добавьте их в автозагрузку:
sudo systemctl start ds-docservice.service
sudo systemctl start ds-converter.service
sudo systemctl start ds-metrics.service
sudo systemctl enable ds-docservice.service
sudo systemctl enable ds-converter.service
sudo systemctl enable ds-metrics.service
sudo systemctl start nginx.service
sudo systemctl enable nginx.service
6.1.6.6. Запустите скрипт настройки DS
sudo bash documentserver-configure.sh

Будут запрошены данные

6.1.6.6.1. Для PostgreSQL:
  • Host: localhost
  • Database: r7office
  • User: r7office
  • Password: r7office

Где,

  • hostip сервера с PostgreSQL или его dns имя (в данном примере localhost)
  • Database — имя Базы Данных
  • User — Имя пользователя
  • Password — Пароль от пользователя
6.1.6.6.2. Для Redis:
  • Host: localhost

Где,

  • hostip сервера с Redis или его dns имя (в данном примере localhost)
6.1.6.6.3. Для AMQP
  • Host: localhost
  • User: guest
  • Password: guest

Где,

  • hostip сервера с RabbitMQ или его dns имя (в данном примере localhost)
  • user — пользователь для подключения
  • password — пароль от пользователя
6.1.6.7. Задайте параметры

Секрет, как пример, возможно сформировать в консоли следующей командой:

cat /dev/urandom | tr -dc A-Za-z0-9 | head -c 32

Запомните значение JWT_SECRET, т.к. пригодится на шаге установки Р7-Диска

declare -x JWT_SECRET=VrTMopwWwGP1
declare -x JWT_HEADER=AuthorizationJwt
declare -x SECURE_LINK_SECRET=bC8xyZpur6WjunjL01gL

где,

  • JWT_SECRET — секрет, для формирования токена JWT;
  • JWT_HEADER — определяет http заголовок;
  • SECURE_LINK_SECRET — секрет, который используется для подписи URL.
6.1.6.8. Повторно запустите скрипт

Перейдите снова к п. 6.1.6.3. И перейдите к п. 6.2

6.2. Перевести DS на HTTPS возможно по следующей инструкции

https://support.r7-office.ru/document_server/install-document_server/document_server_linux/https_ds/

При использовании самоподписного сертификата или Let`s Encrypt воспользуйтесь инструкцией
https://support.r7-office.ru/document_server/settings-ds/dobavlenie-sertifikata-v-nodejs-dlja-servera-dokumentov-na-linux/

7. Роль Р7-Диск

Актуальная инструкция на сайте
https://support.r7-office.ru/category/r7disk/install-r7server/
Перед установкой роли потребуется выполнить следующие шаги:
1. Откройте файл на редактирование

sudo nano /etc/yum.repos.d/r7server.repo

2. Добавьте следующий текст

[r7server]
name=r7server
baseurl=https://downloads.r7-office.ru/repository/r7-server-yum/
enabled=1
gpgcheck=1
gpgkey=https://download.r7-office.ru/repos/RPM-GPG-KEY-R7-OFFICE.public
sslverify=1
username=server
password=KwmuQmOzuFIw9wcJsL3zb

3. Обновите список репозиториев с подгружаемыми данными

sudo yum makecache

7.1. Скачайте архив Р7-Диск для установки и положите его на ВМ

Рекомендуем, для корректной установки, архив разместить в директории, отличной от /root, например в /mnt или /tmp

7.2. Зайдите в директорию с архивом

cd /mnt

7.3. Распакуйте архив

unzip RedOS_*.zip

7.4. Выполните команду

sed -i "s/dnf install -y postgresql-client/dnf install -y postgresql/" CDDisk/install.sh

7.5. Установка

7.5.1. Для SSL инсталляции

Если требуется поддержка HTTPS, перед установкой скопируйте crt и key файлы в папку sslcert.

Имя файла должно содержать название домена и расширение.

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

Например, для домена r7.ru имена файлов должны быть r7.ru.crt и r7.ru.key.

7.5.2. Добавьте права на исполнение скрипту

chmod +x online_installer.sh

7.5.3. Запустите установку

sudo bash ./online_installer.sh

На запрос пароля для sudo введите его

7.5.3.1. В процессе установки:
7.5.3.1.1. Чистая установка

Если требуется выполнить чистую установку (удалит имеющуюся инсталляцию Р7-Диск и зависимости):

  • Выберите Да

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

7.5.3.1.2. Установка СУБД

PostgreSQL будет на другой ВМ:

  • Выберите Нет

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

7.5.3.1.3 Установка Сервера Документов

Важно
Если версия устанавливаемого корпоративного сервера 2024 ниже 14000, то для корректной установки Роли Р7-Диск требуется document-server. Поэтому во время установки будем использовать локальный документ сервер, а потом его вынесем на отдельную ВМ.

Установка Сервер Документов:

  • Выберите Да

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РЕД ОС

7.5.3.1.3.1 JWT Key Document Server

Укажите Секрет установленного Document Server

  • Его значение сохраняли в п. 6.1.6.4, значение jwt-secret

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РЕД ОС

7.5.3.1.3.2 Пароль для базы данных DS

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РЕД ОС

7.5.3.1.4. Установка api и web диска

Основное приложения Р7-Диска и веба (статика) сайта.

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

Для его установки:

  • Выберите Да
7.5.3.1.4.1. Тип СУБД Р7-Диск

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

  • Выберите PostgreSQL
7.5.3.1.4.2. Создание БД

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

Создание БД не требуется

  • Выберите Нет
7.5.3.1.4.3. Хост СУБД

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

СУБД установлена отдельно,

  • укажите ip или имя хоста
7.5.3.1.4.4. Порт СУБД

По умолчанию 5432 используется. Если Вы настроили другой, укажите верный.

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

7.5.3.1.4.5. Пользователь с правами БД

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

7.5.3.1.4.6. Пароль пользователя

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

7.5.3.1.5. coremachinkey от CS

Измените на актуальный, если есть Р7-Офис Корпоративный сервер 2019 и нажмите ОК,

если нет, нажмите Ок без редактирования

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

7.5.3.1.6. Настройка https

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

Если выполнили пункт 5.1

  • Выберите Да

В ином случае

  • Выберете Нет
7.5.3.1.7. Укажите домен

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

Необходимо указать домен, в котором у Вас созданы записи

Например, при домене r7.ru, необходимо создать запись disk.r7.ru. Пример записи в Selectel ниже

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

В значении укажите именно r7.ru, а не созданную А запись

7.5.3.1.8. Префикс Р7-Диск

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

Укажите имя, которое будет открываться в браузере для веб р7-Диска

Например, если Вы хотите, чтобы открылся Р7-Диск по адресу disk.r7.ru, то указать нужно именно disk, без указания домена.

Также, необходимо сделать соответствующую А запись в DNS, пример в п.5.3.1.13.

7.5.3.1.9. Префикс Р7-Админ

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

Укажите имя, которое будет открываться в браузере для веб админ панели.

Например, если Вы хотите, чтобы открылся Р7-Админ по адресу admin.r7.ru, то указать нужно именно admin, без указания домена.

Также, необходимо сделать соответствующую А запись в DNS. Пример ниже.

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

7.5.3.1.10. Префикс Р7-Почта

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

Укажите имя, которое будет открываться в браузере для веб календаря.

Например, если Вы хотите, чтобы открылся Р7-Календарь по адресу mail.r7.ru, то указать нужно именно calendar, без указания домена.

Также, необходимо сделать соответствующую А запись в DNS. Пример ниже

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

7.5.3.1.11. Префикс Р7-Календарь

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

Укажите имя, которое будет открываться в браузере для веб календаря.

Например, если Вы хотите, чтобы открылся Р7-Календарь по адресу calendar.r7.ru, то указать нужно именно calendar, без указания домена.

Также, необходимо сделать соответствующую А запись в DNS. Пример ниже

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

7.5.3.1.12. Перезагрузите систему

Для корректной работы Р7-Диска, требуется перезагрузка.

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

  • Введите Да;
  • Введите Нет, если требуется Вам выполнить дополнительные действия до перезагрузки.

Без перезагрузки Р7-Диск работать не будет

7.6 Интеграция корпоративного сервера 2024 с вынесенным сервером документов

Акутальная инструкция по ссылке

7.6.1 На сервере с БД (роль postgresql) (пункт 3) выведите информацию:

sudo -u postgres psql -d cddisk -c "SELECT * FROM public.\"MessageSettings\" WHERE \"Key\" = 'documentServerUrl';"
sudo -u postgres psql -d cddisk -c "SELECT * FROM public.\"MessageSettings\" WHERE \"Key\" = 'apiUrlInternal';"
sudo -u postgres psql -d cddisk -c "SELECT * FROM public.\"MessageSettings\" WHERE \"Key\" = 'files.docservice.secret';" - где потребуется сохранить значение files.docservice.secret
7.6.1.1 Обновите на новые значения секрет (если требуется) и адрес сервера документов в БД:
sudo -u postgres psql -d cddisk -c "UPDATE public.\"MessageSettings\" SET \"Value\"='https://ds.r7o.ru' WHERE \"Key\" = 'documentServerUrl';"
sudo -u postgres psql -d cddisk -c "UPDATE public.\"MessageSettings\" SET \"Value\"='https://cddisk.r7o.ru' WHERE \"Key\" = 'apiUrlInternal';"
  • указав вместо https://ds.r7o.ru адрес вынесенного сервера документов (если адрес вынесенного ДС одноименный — нет необходимости менять), для примера, указан в запросе — «Value»=’https://ds.r7o.ru’
  • указав вместо https://cddisk.r7o.ru ссылку на сервер документов
7.6.1.2 Секрет

На вынесенном сервере документов (установили в пункте 6) укажите секрет из запроса, по значению ключа «Key» = ‘files.docservice.secret’, в файле:/etc/r7-office/documentserver/local.json

Пример:

"secret": {       
      "inbox": {
       "string": " "   // в кавычках указать ключ из селекта п. 7.6.1, по значению ключа "Key" = 'files.docservice.secret'       
   },
   "outbox": {
       "string": " "   // в кавычках указать ключ из селекта п. 7.6.1, по значению ключа "Key" = 'files.docservice.secret'
           },
   "session": {
       "string": " "   // в кавычках указать ключ из селекта п. 7.6.1, по значению ключа "Key" = 'files.docservice.secret'
           },

Перезапустите сервис DS (на вынесенном сервере документов) и проверьте статусы сервисов:

systemctl restart ds-* --all
systemctl status ds-*

7.6.2 Перезапустите cddisk

supervisorctl restart all

7.6.3 Отключите сервер документов на сервере с ролью Р7-Диск

systemctl stop ds-*
systemctl disable ds-metrics.service ds-docservice.service ds-converter.service

7.6.4 Отредактируйте файл /etc/hosts на сервере с ролью Р7-Диск

В файле /etc/hosts на сервере с ролью Р7-Диск удалите запись с ds.r7o.ru.

127.0.0.1 ds.r7o.ru

7.6.5 Проверьте работу сервера документов

Зайдите на портал Корпоративного сервера 2024 и создайте документ. Проверьте редактирование

8. Роль Поиска

При включенной службе firewalld необходимо выполнить настройку для nfs.

# Добавляем службу:
sudo firewall-cmd --permanent --zone=public --add-port=2664/tcp
  
# Перезапускаем службу firewalld:
sudo firewall-cmd --reload
  
# Проверяем правила для зоны public:
sudo firewall-cmd --zone=public --list-all

8.1. Установите дополнительные пакеты

dnf install -y aspnetcore-runtime-3.1 aspnetcore-targeting-pack-3.1 dotnet-apphost-pack-3.1 dotnet-host dotnet-hostfxr-3.1 dotnet-runtime-3.1 dotnet-sdk-3.1 dotnet-targeting-pack-3.1 dotnet-templates-3.1 netstandard-targeting-pack-2.1 supervisor

8.2. Заархивируйте конфигурационные файлы на ВМ с ролью Р7-Диск

tar czvf search.tar.gz --selinux /opt/r7-office/SearchApi /var/log/r7-office/CDDisk/SearchApi /etc/supervisord.d/ /var/r7-office/searchindex

8.2.1. Перенесите файл удобным способом

Например, через scp

scp search.tar.gz ipВмПоиска:/root/

8.2.2. Узнайте uid/gid пользователя cddisk

id cddisk

вывод

uid=986(cddisk) gid=983(cddisk) группы=983(cddisk)

8.3. Распакуйте архив на ВМ с ролью Поиска

8.3.1. Создайте пользователя cddisk

# Создаём группу cddisk
groupadd -g 983 cddisk
# Создаём пользователя cddisk и добавляем в группу
useradd -u 986 -g 983 cddisk

8.3.2. Распакуйте архив

tar xzvf search.tar.gz --selinux -C /

8.4. Отредактируйте конфигурационный файл supervisor

8.4.1. Удалите лишние файлы

cd /etc/supervisord.d/ && rm cddisk-api.ini cddisk-filestorage.ini cddisk-registry.ini cddisk-ssoapi.ini cddisk-processing.ini -f

8.4.2. Измените файл

Файл по пути

/etc/supervisord.d/cddisk.ini

Приведите к виду

[group:cddisk]
programs=searchapi

8.4.3. Перезапустите службу

systemctl restart supervisord

8.4.4. Проверьте службу поиска

supervisorctl status all

8.5. Отредактируйте конфигурационный файл для обращения сервисов к сервису поиска на ВМ с ролью Р7-Диск

8.5.1. Измените на «ip ВМ с поиском» в конфиге

/opt/r7-office/Service.Registry/appsettings.json

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

Также повторите действия с файлами ниже (для версий, ниже 2.0.15.843)

/opt/r7-office/Api/appsettings.json
/opt/r7-office/Processing/appsettings.json

8.5.2. Удалите конфигурационный файл

rm /etc/supervisord.d/cddisk-searchapi.ini

Откройте конфигурационный файл на редактирование

/etc/supervisord.d/cddisk.ini

Привести к виду

[group:cddisk]
programs=api,filestorage,processing,registry,apisso

8.5.3. Перезапустите supervisor

systemctl restart supervisord
supervisorctl restart all

8.6. Проверьте работу поиска

8.6.1. Введите в модуле Диск, в строке поиска, символы из названия документа

Для выдачи результата понадобится время, т.к. сервис только начал работу.

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

8.6.2. Проверьте дополнительно трафик

На сервере Поиска включите tcpdump, чтобы убедится, идут ли запросы во время заполнения строки поиска

tcpdump port 2664

Вывод

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

9. Подключение сетевых каталогов NFS

9.1. На сервере с ролью DS (сервер документов)

9.1.1. Узнайте uid/gid пользователя ds

id ds

Вывод

uid=987(ds) gid=984(ds) группы=984(ds)

9.2. На сервере с ролью Р7-Диск и Поиска

9.2.1. Узнайте uid/gid пользователя cddisk

id cddisk

Вывод

uid=986(cddisk) gid=983(cddisk) группы=983(cddisk)

9.3. На сервере с ролью NFS

9.3.1. Создайте пользователя ds

# Создаём группу ds
groupadd -g 984 ds
# Создаём пользователя ds и добавляем в группу
useradd -u 987 -g 984 ds

Где,

  • 984 — gid из п.9.1.1;
  • 987 — uid из п.9.1.1.

9.3.2. Создайте пользователя cddisk

# Создаём группу cddisk
groupadd -g 983 cddisk
# Создаём пользователя cddisk и добавляем в группу
useradd -u 986 -g 983 cddisk

Где,

  • 983 — gid из п.9.2.1;
  • 986 — uid из п.9.2.1.

9.3.2. Обновите права на каталог

chown ds:ds /mnt/ds -R
chown cddisk:cddisk /mnt/search -R
chown cddisk:cddisk /mnt/disk -R

9.4. Отредактируйте файл

sudo nano /etc/exports

9.4.1. Добавьте строки

# Шара для сервера с Сервером документов
/mnt/ds 192.168.27.1/32(rw,nohide,all_squash,anonuid=984,anongid=987,no_subtree_check)
# Шара для сервера с Р7-Диск
/mnt/disk 192.168.27.2/32(rw,nohide,all_squash,anonuid=983,anongid=986,no_subtree_check)
# Шара для сервера сервисом Поиска
/mnt/search 192.168.27.3/32(rw,nohide,all_squash,anonuid=983,anongid=986,no_subtree_check)

Где,

  • 192.168.27.1 — ip сервера DS;
  • 192.168.27.2 — ip сервера с Р7-Диск;
  • 192.168.27.3 — ip сервера с сервисом Поиска.

9.4.2. Включите сетевые директории

sudo exportfs -ra

9.5. Подключение на сервере DS

9.5.1. Остановите сервис

systemctl stop ds-converter ds-docservice ds-metrics

9.5.2. Пропишите в fstab сетевой каталог

192.168.27.4:/mnt/ds/cache /var/lib/r7-office/documentserver/App_Data/cache nfs defaults 0 2
192.168.27.4:/mnt/ds/license /var/www/r7-office/Data nfs defaults 0 2

Где

  • 192.168.27.4 — ip сервера nfs
  • /mnt/ds, /mnt/ds/license — расшаренные каталоги на сервера nfs
  • /var/lib/r7-office/documentserver/App_Data/cache — куда монтируем на сервере с DS

9.5.3. Установите утилиту для монтирования NFS

sudo dnf install nfs-utils

9.5.4. Монтируйте

mount -a

9.5.5. Запустите сервисы

systemctl start ds-converter ds-docservice ds-metrics

9.5.6. Проверьте работу редактирования

И что файлы создаются на Вашем nfs сервере

Инструкция по установке Middle Корпоративный сервер 2024 архитектуры на РедОС

9.6. Подключение на сервере с Р7-Диск

9.6.1. Остановите сервисы

supervisorctl stop all

9.6.2. Установите утилиту для монтирования NFS

sudo dnf install nfs-utils

9.6.3. Пропишите в fstab

192.168.25.4:/mnt/disk /var/r7-office nfs defaults 0 2

9.6.4. Скопируйте файлы

cd /var/r7-office
mkdir /tmp/backup_cddisk
cp -pr ./ /tmp/backup_cddisk

9.6.5. Монтируйте и копируйте файлы

cd /tmp/backup_cddisk
mount -a
cp -pr ./ /var/r7-office

9.6.6. Запустите сервисы

supervisorctl start all

9.6.7. Проверьте работу редактирования

9.7. Подключение на сервере Поиска

9.7.1. Остановите сервисы

supervisorctl stop all

9.7.2. Установите утилиту для монтирования NFS

sudo dnf install nfs-utils

9.7.3. Пропишите в fstab

192.168.25.4:/mnt/search /var/r7-office nfs defaults 0 2

9.7.4. Скопируйте файлы

cd /var/r7-office
mkdir /tmp/backup_search
cp -pr ./ /tmp/backup_search

9.7.5. Монтируйте и копируйте файлы

cd /tmp/backup_search
mount -a
cp -pr ./ /var/r7-office

9.7.6. Запустите сервисы

supervisorctl start all

9.7.7. Проверьте работу поиска в модуле Диск

 

 

 

Была ли полезна статья?
Позвольте нам стать лучше