Продукты Р7
Корпоративный сервер 2024
Корпоративный сервер 2024
Сервер документов
Сервер документов
Редакторы
Редакторы
Корпоративный сервер 2019
Корпоративный сервер 2019
Графика
Графика
Команда
Команда
Мобильные редакторы
Мобильные редакторы
Облачный офис
Облачный офис
Почта
Почта
Органайзер
Органайзер
Дополнительно
Часто задаваемые вопросы
Разработчикам
Интеграции
Новые возможности

Установка Корпоративный сервер 2024 через инсталлятор в docker-compose (Архитектура для нагруженных систем)

Обновлено: 02.02.26

1. Подготовка

1.1. Схема взаимодействия контейнеров

1.2. Подготовка серверов для настройки

Подготовьте 9 серверов для развертывания. Расчет производительности для каждого сервера нужно проводить для каждого конкретного случая использования

В нашем случае будет:

Нода Назначение сервера IP-адрес
нода-1 Сервер документов 192.168.0.11
нода-2 Сервер RabbitMQ 192.168.0.12
нода-3 Сервер PostgreSQL 192.168.0.13
нода-4 Сервер SearchApi 192.168.0.14
нода-5 Серверы FileStorage и Registry 192.168.0.15
нода-6 Сервер Processing 192.168.0.16
нода-7 Сервер Draw 192.168.0.17
нода-8 Серверы Api и SsoApi 192.168.0.18
нода-9 Сервер FrontEnd 192.168.0.19

1.3. Настройки Python

На каждой ноде должен быть установлен Python версии не ниже 3.7.

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

python3 --version

Пример вывода в терминале:

Python 3.11.2

1.4. Настройки firewall для каждой ноды

На каждой ноде обязательно должен быть установлен iptables для корректной работы Docker.

На firewall должны быть открыты порты:

Нода Открытые порты
нода-1 80, 443
нода-2 5672
нода-3 5432
нода-4 2664
нода-5 11580, 11581, 7777
нода-6
нода-7 3005
нода-8 38033, 38034
нода-9 80, 443

1.4.1. Пример настройки firewalld.service для ноды-1

Добавим порты https-443 и http-80:

firewall-cmd --permanent --add-service=http --add-service=https

Применим настройки:

firewall-cmd --reload

1.4.2. Пример настройки firewalld.service для ноды-5

Добавим порты https-443 и http-80:

firewall-cmd --permanent --add-port=11580/tcp --add-port=11581/tcp --add-port=7777/tcp

Применим настройки:

firewall-cmd --reload

1.5. Остальные настройки

Подготовьте файлы сертификата, ключа к сертификату и файл лицензии, запомните их расположение.

Также скачайте архив с дистрибутивом. Вам потребуется скачать архив на каждый сервер.

Уточнение

Для всех нод используется одинаковый пакет инсталлятора.

Отключите SELinux на всех нодах и добавьте А-записи для имен сайтов в DNS-сервер.

Для установки потребуется wildcard сертификат.

Например: *.domain.ru

Примеры сайтов:

  • admin.domain.ru — сайт Р7-Управление;
  • disk.domain.ru — сайт Р7-Диск;
  • mail.domain.ru — сайт Р7-Почта;
  • contacts.domain.ru — сайт Р7-Контакты;
  • calendar.domain.ru — сайт Р7-Календарь;
  • projects.domain.ru — сайт Р7-Проекты;
  • doc.domain.ru — сайт Р7-Сервер документов;
  • draw.domain.ru — сайт Р7-Графика;
  • mx.domain.ru — fqdn-имя почтового сервера;

Копии сертификата и ключа (fullchain.crt, privkey.key) к сертификату расположите на нодах 1 и 8 и 9 во всех следующих папках:

./configs/ssl

Файл лицензии расположите в папке на ноде 1:

./license/

2. Распаковка архива на всех нодах

Обратите внимание

Выполняется на всех нодах.

Важно

Для установки потребуется 9 нод, на каждую ноду необходимо скачать инсталлятор.

Скачайте архив в папку /tmp и распакуйте в папку /opt/r7-office:

cd /tmp

mkdir -p /opt/r7-office

unzip r7-office* -d /opt/r7-office

3. Установка

3.1. Запуск установщика

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

Уточнение

Установка запускается одинаково для обеих нод.

cd /opt/r7-office/

./installer

3.2. Установка whiptail и Docker (на всех нодах)

В процессе установки на каждой ноде будут повторятся вопросы об установке библиотеке whiptail и Docker.

Если не установлен Whiptail, установщик предложит установить его, введите «Y» или «Yes»:

Если не установлен Docker, установщик предложит установить его, для продолжения установки необходимо согласие, либо установите docker самостоятельно:

3.3. Старт установки

Обратите внимание

Выполняется на всех нодах.

Прочтите лицензионное соглашение, дальнейшее использование программы означает ваше согласие с ним.

Выберите пункт Корпоративный сервер 2024, Сервер документов и Почтовый сервер:

3.4. Выбор типа установки (Установка разнесенной архитектуры Р7 для нагруженных систем)

Обратите внимание

Выполняется на всех нодах.

Выберите «Установка разнесенной архитектуры Р7 для нагруженных систем» для просмотра лицензионного соглашения:

4. Установка на нода-1 (192.168.0.11)

4.1. Установка на ноде-1 сервисов Сервера документов

Выберите «Установка сервисов Сервера документов Р7»:

4.2. Настройка для RabbitMQ Сервера документов

Введите имя пользователя для RabbitMQ Сервера документов Р7:

Дважды введите пароль для этого пользователя (пароль для RabbitMQ может содержать только буквы и цифры, без спецсимволов):

4.3. Настройка FQDN и префикса

Укажите ваш FQDN для Сервера документов (будет совпадать с FQDN для Корпоративного сервера):

Укажите префикс для Сервера документов:

4.4. Установка настроек PostgreSQL для Сервера документов

Укажите имя БД для сервера документов:

Укажите пользователя для БД сервера документов:

Введите ваш пароль для этого пользователя дважды:

4.5. Расположение базы данных

Укажите путь, где будет хранится БД сервера документов. Если директория не существует, она будет создана:

4.6. Создание JWT-токена

Укажите JWT-секрет дважды для взаимодействия Корпоративного сервера и Сервера документов (потребуется вводить также на других нодах):

4.7. Каталог для хранения временных файлов сервера документов

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

4.8. Каталог для хранения логов сервера документов

Укажите путь для хранения файлов логов Cервера документов. Если директория не существует, то она будет создана:

4.9. Установка сертификата SSL

Необходимо указать путь до расположения сертификата и ключа (имена могут быть любыми):

Далее будут представлены проверки ваших сайзингов с которыми вы можете согласиться либо отказаться от установки для изменения значений.

На этом действия на ноде-1 окончены. Будут установлены и запущены контейнеры ds-rabbitmq, ds-postgres, ds-redis, ds-frontend, ds-docserver.

После завершения установки по адресу https://doc.domain.ru вы должны увидеть окно приглашения «Сервер документов».

5. Установка на нода-2 (192.168.0.12)

5.1. Установка на ноде-2 сервиса CS-RabbitMQ для Корпоративного сервера

Выберите пункт «Установка сервисов CS-RabbitMQ»:

5.2. Установка настроек для RabbitMQ Корпоративного сервера

Укажите пользователя RabbitMQ для Корпоративного сервера (потребуется вводить также на других нодах):

Дважды введите пароль для этого пользователя (пароль для RabbitMQ может содержать только буквы и цифры, без спецсимволов, потребуется вводить также на других нодах):

На этом действия на ноде-2 окончены. Будет установлен и запущен контейнер сs-rabbitmq.

6. Установка на нода-3 (192.168.0.13)

6.1. Установка на ноде-3 сервиса CS-PostgreSQL для Корпоративного сервера

Выберите пункт «Установка сервисов CS-PostgreSQL»:

6.2. установка настроек для PostgreSQL Корпоративного сервера

Укажите FQDN для Корпоративного сервера (будет совпадать для Корпоративного сервера и Сервера документов):

Укажите все префиксы для FQDNю

Префикс Сервера документов:

Префикс модуля Диск Корпоративного сервера:

Префикс модуля Управления Корпоративного сервера:

Префикс Почтового модуля Корпоративного сервера:

Префикс модуля Контактов Корпоративного сервера:

Префикс модуля Календаря Корпоративного сервера:

Префикс модуля Проектов Корпоративного сервера:

Префикс модуля Графика Корпоративного сервера:

Префикс модуля Страницы:

Префикс модуля Формы:

6.3. Создание JWT-токена

Укажите JWT-секрет дважды для взаимодействия Корпоративного сервера и Сервера документов (указанный ранее для ноды-1):

6.4. Установка настроек PostgreSQL для Корпоративного сервера

Укажите имя БД Корпоративного сервера:

Укажите имя пользователя БД Корпоративного сервера (потребуется вводить также на других нодах):

Укажите пароль дважды для БД Корпоративного сервера (потребуется вводить также на других нодах).

6.5. Расположение базы данных.

Укажите путь, где будет хранится БД Корпоративного сервера. Если директория не существует, она будет создана:

6.6. Расположение сервиса Api.

Укажите IP-адрес сервиса Api (адрес ноды-8):

6.7. Создание токенов для Страниц, Форм и интеграции с Р7-Команда.

Сгенерируйте свои токены или используйте предложенные сгенерированные в окне, сохранятся в файле ./configs/tokens на текущей ноде.

Токен для модулей Страницы и Формы:

Токен для модуля интеграции с Р7 Команда:

На этом действия на ноде-3 окончены. Будет установлен и запущен контейнер сs-psql.

7. Установка на нода-4 (192.168.0.14)

7.1. Установка на ноде-4 сервиса CS-SearchApi для Корпоративного сервера Р7 (нода-4)

Выберите пункт «Установка сервисов CS-SearchApi»:

7.2. Каталог индексных файлов сервиса SearchApi Корпоративного сервера.

Укажите путь, где будут хранится индексные файлы Корпоративного сервера. Если директория не существует, она будет создана:

На этом действия на ноде-4 окончены. Будет установлен и запущен контейнер сs-search.

8. Установка на нода-5 (192.168.0.15)

8.1. Установка на ноде-5 сервисов CS-FileStorage и CS-Registry для Корпоративного сервера

Выберите пункт «Установка сервисов CS-FileStorage и CS-Registry»:

8.2. Адрес CS-FileStorage для Корпоративного сервера

Укажите ip-адрес текущей сервиса FileStorage (текущей ноды):

8.3. Каталог хранения файлов пользователей Корпоративного сервера

Укажите путь, где будут хранится файлы пользователей Корпоративного сервера. Если директория не существует, она будет создана:

8.4. Адрес сервиса CS-SearchApi

Укажите адрес сервиса SerachApi для Корпоративного сервера. Так как сервис на ноде-4, укажите ее адрес, в нашем случае 192.168.0.14:

На этом действия на ноде-5 окончены. Будут установлены и запущены контейнеры сs-filestorage, cs-registry.

9. Установка на нода-6 (192.168.0.16)

9.1. Установка на ноде-6 сервисов CS-Processing для Корпоративного сервера

Выберите пункт «Установка сервисов CS-Processing»:

9.2. Адрес сервиса RabbitMQ и доступ к нему

Укажите адрес сервиса RabbitMQ для Корпоративного сервера. Так как сервис на ноде-2, укажите ее адрес, в нашем случае 192.168.0.12:

Укажите пользователя RabbitMQ для Корпоративного сервера указанного ранее на ноде-2:

Дважды введите пароль для этого пользователя указанного ранее на ноде-2 (пароль для RabbitMQ может содержать только буквы и цифры, без спецсимволов):

9.3. Адрес сервиса CS-PostgreSQL и доступ к нему

Укажите адрес сервиса PostgreSQL для Корпоративного сервера. Так как сервис на ноде-3, укажите ее адрес, в нашем случае 192.168.0.13:

Укажите имя БД указанные ранее на ноде-3:

Укажите пользователя БД для Корпоративного сервера указанного ранее на ноде-3:

Дважды введите пароль для этого пользователя указанного ранее на ноде-3:

9.4. Адрес сервиса CS-FileStorage

Укажите адрес сервиса FileStorage для Корпоративного сервера. Так как сервис на ноде-5, укажите ее адрес, в нашем случае 192.168.0.15:

9.5. Адрес сервиса CS-SearchApi

Укажите адрес сервиса SerachApi для Корпоративного сервера. Так как сервис на ноде-4, укажите ее адрес, в нашем случае 192.168.0.14:

На этом действия на ноде-6 окончены. Будет установлен и запущен контейнер сs-registry.

10. Установка на нода-7 (192.168.0.17)

10.1. Установка на ноде-7 сервисов CS-Draw (Р7 Графика) для Корпоративного сервера

Выберите пункт «Установка сервисов CS-Draw»:

10.2. Настройки для сервиса CS-Draw (Р7 Графика) для Корпоративного сервера

Укажите FQDN для Корпоративного сервера (будет совпадать для Корпоративного сервера и Сервера документов):

10.3. Расположение сервиса Api

Укажите ip-адрес сервиса Api (адрес ноды-8):

На этом действия на ноде-7 окончены. Будет установлен и запущен контейнер сs-draw.

11. Установка на нода-8 (192.168.0.18)

11.1. Установка на ноде-8 сервисов CS-Api и CS-SsoApi для Корпоративного сервера

Выберите пункт «Установка сервисов CS-Api и CS-SsoApi»:

11.2. Адрес сервиса RabbitMQ и доступ к нему

Укажите адрес сервиса RabbitMQ для Корпоративного сервера. Так как сервис на ноде-2, укажите ее адрес, в нашем случае 192.168.0.12:

Укажите пользователя RabbitMQ для Корпоративного сервера указанного ранее на ноде-2:

Дважды введите пароль для этого пользователя указанного ранее на ноде-2 (пароль для RabbitMQ может содержать только буквы и цифры, без спецсимволов):

11.3. Настройки FQDN для сервиса CS-Api

Укажите FQDN для Корпоративного сервера (будет совпадать для Корпоративного сервера и Сервера документов):

Укажите префиксы для модулей Администрирования, Формы и Страницы Корпоративного сервера (по умолчанию admin, pages и forms):

11.4. Адрес сервиса CS-PostgreSQL и доступ к нему

Укажите адрес сервиса PostgreSQL для Корпоративного сервера. Так как сервис на ноде-3, укажите ее адрес, в нашем случае 192.168.0.13:

Укажите имя БД указанные ранее на ноде-3:

Укажите пользователя БД для Корпоративного сервера указанного ранее на ноде-3:

Дважды введите пароль для этого пользователя указанного ранее на ноде-3:

11.5. Ввод секретов сгенерированных ранее

Далее введите необходимые токены и секреты, сохранены на ноде-3 CS-Postgres в файле ./configs/tokens
Вы создавали их ранее в пункте 6.7:

11.6. Адрес сервиса CS-FileStorage

Укажите адрес сервиса FileStorage для Корпоративного сервера. Так как сервис на ноде-5, укажите ее адрес, в нашем случае 192.168.0.15:

11.7. Адрес сервиса CS-SearchApi

Укажите адрес сервиса SerachApi для Корпоративного сервера. Так как сервис на ноде-4, укажите ее адрес, в нашем случае 192.168.0.14:

11.8. Путь к сертификату и ключу

Укажите путь к фалу ключа и сертификата:

На этом действия на ноде-8 окончены. Будут установлены и запущены контейнеры сs-api, cs-sso.

12. Установка на нода-9 (192.168.0.19)

12.1. Установка на ноде-9 сервисs CS-Frontend для Корпоративного сервера

Выберите пункт «Установка сервисов CS-Frontend»:

12.2. установка настроек для Frontend Корпоративного сервера

Укажите FQDN для Корпоративного сервера (будет совпадать для Корпоративного сервера и Сервера документов):

Укажите все префиксы для FQDN.

Префикс Сервера документов:

Префикс модуля Диск Корпоративного сервера:

Префикс модуля Управления Корпоративного сервера:

Префикс Почтового модуля Корпоративного сервера:

Префикс модуля Контактов Корпоративного сервера:

Префикс модуля Календаря Корпоративного сервера:

Префикс модуля Проектов Корпоративного сервера:

Префикс модуля Графика Корпоративного сервера:

Префикс модуля Страницы Корпоративного сервера:

Префикс модуля Формы Корпоративного сервера:

12.3. Каталог для хранения логов сервиса CS-Frontend Корпоративного сервера

Укажите путь, где будут хранится файлы логов сервиса CS-Frontend Корпоративного сервера. Если директория не существует, она будет создана:

12.4. Адрес сервиса CS-Api

Укажите адрес сервиса Api для Корпоративного сервера. Так как сервис на ноде-8, укажите ее адрес, в нашем случае 192.168.0.18:

12.5. Установка сертификата SSL

Необходимо указать путь до расположения сертификата и ключа (имена могут быть любыми):

12.6. Адрес сервиса CS-Draw (Р7-Графика)

Укажите адрес сервиса CS-Draw (Р7-Графика) для Корпоративного сервера. Так как сервис на ноде-7, укажите ее адрес, в нашем случае 192.168.0.17:

На этом действия на ноде-9 окончены. Будет установлен и запущен контейнер сs-frontend.

12.7. Завершение установки

По окончании установки будет выведено дополнительное окно об успешности установки:

13. Логи

13.1. Сбор логов (на любой ноде)

После завершения установки, можно зайти в пункт обслуживания и собрать лог-файлы для технической поддержки:

Лог-файлы для техподдержки собраны:

Расположение файлов будет указано в сообщении.

14. Проверка установки (на любой ноде)

После завершения установки, можно проверить наличие запущенных контейнеров, введя  команду:

docker ps

После чего отобразиться список контейнеров запущенных на текущей ноде.

15. Запуск

Пройдите по адресу, указанному при завершении установки:

 

Уточнение

Учетные данные по умолчанию:

Логин: superadmin

Пароль: superadmin