Содержание

Обновление архитектуры Корпоративный сервер 2024 Middle до актуальной версии

На схеме отображена архитектура с установленной версией Корпоративный сервер 2024.

Далее описана инструкция по обновлению этой архитектуры до актуальной версии Корпоративный сервер 2024.

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

Обновление НЕ изменит файлы конфигурации.

Но предварительно настоятельно рекомендуем создать снэпшоты и бэкапы обновляемых сервисов и базы данных.

Для проверки текущей версии перейдите по URL:

https://cddisk.ваш-домен/version

Где:

  • cddisk — адрес Р7-Диск;
  • ваш-домен — используемый домен для работы портала.

Скачать дистрибутив и патч обновления возможно по ссылке: Скачать «Р7-Офис. Корпоративный сервер».

1. Обновление документ сервера

Для обновления можно воспользоваться инструкцией по ссылке.

2. Обновление Сервиса поиска SearchApi

Подключитесь к каждому из серверов с вынесенным сервисом SearchApi.

При проведении обновлении с версии 4400 до 14752 и выше выполните следующие действия:
Если установлен dotnet 3, удалите его, при обновлении установится dotnet 6.

Команды для удаление dotnet 3.1 по порядку для ОС Astra Linux, РЕД ОС, Альт Linux:

apt remove dotnet-sdk-3.1
dnf remove dotnet-sdk-3.1
apt-get remove dotnet-sdk-3.1

2.1. Скачайте на серверы любым удобным способом файл с обновлением

cd /mnt
wget https://download.r7-office.ru/disk/update/Patch_<версия>.zip

Распакуйте скрипт обновления из архива с обновлением в эту же папку:

unzip Patch_<версия>.zip Patch/update.sh -d /mnt

Запустите скрипт обновления с параметром -s и названием обновляемого сервиса:

bash Patch/update.sh -s search Patch_<версия>.zip

Где:

  • update.sh — скрипт обновления
  • -s — ключ для обновления бэкенда
  • Patch_<версия>.zip — полный путь до скачанного на ВМ патча для обновления SearchApi

3. Обновление Р7-диск и БД

Перед обновлением на версию 2025.1.18.15276 потребуется на сервере БД выполнить команды:

sudo -i -u postgres psql -c "CREATE DATABASE pagesdb OWNER cddisk;"
sudo -i -u postgres psql -c "GRANT ALL privileges ON DATABASE pagesdb TO cddisk;"

Для Alt Линукс:

su - postgres -s /bin/bash -c "psql -c \"CREATE DATABASE pagesdb OWNER cddisk;\""
su - postgres -s /bin/bash -c "psql -c \"GRANT ALL privileges ON DATABASE pagesdb TO cddisk;\""

Укажите параметры подключения на сервере БД в /var/lib/pgsql/data/pg_hba.conf или /etc/postgresql/11/main/pg_hba.conf адрес подключения с Корпоративного сервера:

host cddisk cddisk 192.168.27.52/32 trust
host pagesdb cddisk 192.168.27.52/32 trust

После обновления возможно изменить на md5 и выполнить перезапуск БД

systemctl restart postgresql

Скачайте на сервер любым удобным способом файл с обновлением (Patch) и дистрибутив.

cd /mnt
wget https://download.r7-office.ru/disk/update/Patch_<версия>.zip # для всех ОС
wget https://download.r7-office.ru/disk/deb/CDinstall_<версия>.zip # для Astra linux
или
wget https://download.r7-office.ru/disk/rpm/RedOS_<версия>.zip # для Red OS
или
wget https://download.r7-office.ru/disk/alt/AltServer_<версия>.zip

Распакуйте скрипт обновления из архива с обновлением в эту же папку:

unzip Patch_<версия>.zip Patch/update.sh -d /mnt

Во время обновления будет происходить:

  • Обновление базы данных с помощью SQL скриптов до актуальной, для версии патча.
  • Обновление api, apisso, filestorage, registry и processing до версии патча. Конфигурационные файлы остаются без изменений.
  • Установка версии dotnet 6 и удаление dotnet 3;

Обновите зависимости. Файл update.sh необходимо взять из архива с патчем Patch_<версия>.zip.

Подходит для инсталляций «всё в одном».

Команды для Astra Linux:

sudo bash Patch/update.sh -c CDinstall_<версия>.zip # для Astra
sudo bash Patch/update.sh -a Patch_<версия>.zip # для Astra

Команды для РЕД ОС (обратите внимание на пункт 7.2):

sudo bash Patch/update.sh -r RedOS_<версия>.zip # для РЕД ОС
sudo bash Patch/update.sh -a Patch_<версия>.zip # для РЕД ОС

Команды для Альт Linux:

sudo bash Patch/update.sh -l AltServer_<версия>.zip # для Альт Linux
sudo bash Patch/update.sh -a Patch_<версия>.zip # для Альт Linux

Где:

  • update.sh — скрипт обновления;
  • -c — ключ для обновления Astra Linux;
  • -r — ключ для обновления РЕД ОС;
  • -l — ключ для обновления Альт Linux;
  • -a — ключ для обновления всех компонентов (веб, база данных, бэкенд);

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

sudo bash Patch/update.sh -s api Patch_<версия>.zip — для обновления api
sudo bash Patch/update.sh -s processing Patch_<версия>.zip — для обновления processing
sudo bash Patch/update.sh -s sr Patch_<версия>.zip — для обновления registry
sudo bash Patch/update.sh -s sso Patch_<версия>.zip — для обновления apisso
sudo bash Patch/update.sh -s fs Patch_<версия>.zip — для обновления filestorage

4. Перечень вопросов во время инсталляции

4.1. Префиксы для новых модулей

4.1.1. Для модуля Р7-Страницы

Обновление архитектуры Корпоративный сервер 2024 Middle до актуальной версии

4.1.2 Для модуля Р7-Формы

Обновление архитектуры Корпоративный сервер 2024 Middle до актуальной версии

4.1.3 Для Сервера Документов укажите ранее используемый

Обновление архитектуры Корпоративный сервер 2024 Middle до актуальной версии

4.1.4 Добавьте в DNS записи на эти модули

4.2. Обновлять Базу данных?

4.2.1. Ответить Нет

Не будет запущен процесс обновления БД.

Актуально, если обновление БД не требуется, и она уже обновлена до версии этого патча

4.2.2. Ответить Да

Будет обновлена БД бэкенда до актуального состояния

4.3 Обновлять веб?

4.3.1 Ответить Да

Будет запущен процесс обновления веба

4.3.2 Ответить Нет

Обновление веба будет пропущено.

Актуально, если ваш веб-сервер находится на отдельной виртуальной машине

5. Команды проверки версии dotnet

Команда для Astra:

apt-cache depends cddisk |grep dotnet

Команда для РЕД ОС:

rpm -qR cddisk |grep dotnet

Команда для Альт Linux:

rpm -qR cddisk |grep dotnet

6. Логирование скрипта

Лог выводится в консоль в реальном времени, также дублируется в системный лог в файл каталога /var/log/log-date+time-update.sh.log.

7. Известные проблемы после обновления

7.1 Если после обновления на портале у пользователей пропали аватары (изображения профилей), то выполните следующее обновление в базе данных:

sudo -i -u postgres psql cddisk
 
update public."Users" set "PhotoId"=(SELECT "AvatarId" FROM public."ChatAvatarRelations" r where r."EntityId"=public."Users"."Id" and r."Type"=1 order by r."Id" desc limit 1) where "PhotoId" IS NULL;
 
\q

7.2 Для РедОС обновление до версий 14752 и 15276. После проведения обновления на основном сервере проверьте конфигурацию /etc/nginx/nginx.conf

user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
 
http {
include /etc/nginx/mime.types;
 
map $http_x_forwarded_proto $the_scheme {
default $scheme;
"https" "https";
}
 
default_type application/octet-stream;
log_format main '3603remote_addr - 3603remote_user [3603time_local] "3603request" '
'3603status 3603body_bytes_sent "3603http_referer" '
'"3603http_user_agent" "3603http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
keepalive_timeout 65;
 
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}

и выполните команды:

sudo sed -i 's/proxy_set_header Connection \$proxy_connection;/proxy_set_header Connection "";/g' /etc/nginx/sites-available/*
systemctl restart nginx

После обновления проверьте конфигурацию Postfix (в случае если установлен почтовый сервер). В /etc/postfix/master.cf проверьте корректность строк:

dovecot unix - n n - - pipe
# flags=DRhu user=vmail:vmail argv=/usr/lib/dovecot/deliver -f ${sender} -d ${recipient}
 flags=DRhu user=vmail:vmail argv=/usr/libexec/dovecot/deliver -f ${sender} -d ${recipient}
Была ли полезна статья?
Позвольте нам стать лучше
Дополнительные материалы