Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.
Комментарий: добавил команду sudo в некоторые строки

Оглавление
printablefalse

Одним из важных нововведений в версии 2.7 в ЕССМ является обновление версии PostgreSQL с 14.10 на 16.11, а также обновление плагинов timescale и timescaledb-tools до версий 2.24.0 и 1.22.0 соответственно.

...

Создание резервной копии

Подсказка

 Для Для возможности отката к предыдущей версии перед началом обновления рекомендуем создать резервную копию данных. В случае если ECCM установлен на сервере с использованием виртуализации, следует сделать Snapshot системы. В ином случае — создать резервную копию базы данных данных eccm средствами PostgreSQL. Подробная инструкция по созданию резервной копии базы данных приведена в разделе "Резервное копирование базы данных ЕССМ".

...

Когда ЕССМ запущен в отказоустойчивой системе из трех узлов, для остановки старой версии ЕССМ необходимо выполнить следующую команду на каждом узле системы: 

Блок кода
cd <путь до каталога с файлами запуска ECCM 2.6>
sudo ./compose-tools.sh --stop
Раскрыть
titleОстановка сервисов ЕССМ при запуске в отказоустойчивой системе с БД на отдельном сервере

Когда ЕССМ запущен в отказоустойчивой системе из пяти узлов, для остановки старой версии ЕССМ необходимо произвести сначала остановку каждого узла из кластера приложений при помощи следующей команды:

Блок кода
titleОстановка узлов кластере приложений
cd <путь до каталога с файлами запуска ECCM 2.6>
sudo ./compose-tools.sh --stop

 Далее необходимо произвести остановку каждого узла из кластера баз данных при помощи следующей команды:

Блок кода
titleОстановка узлов кластере приложений
cd <путь до каталога с файлами запуска ECCM 2.6>/postgres
sudo docker compose stop



Также произведите остановку утилиты Keepalived на узлах мастера Master и слейва Slave при помощи следующей команды:

...

ОпцияОписание
--rollback

Откат обновления PostgreSQL с версии 16.11 на версию 14.10

Примечание

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

--backup-dir <path>Указание расположения для бэкапа БД. По умолчанию используется путь в контейнере /var/lib/postgresql/backup 
--env-file <path>Указание конфигурационного файла контейнера с БД. По умолчанию используется файл из директории postgres относительно корневой директории системы
--skip-optimization

Пропустить этап оптимизации базы данных

Примечание

Использовать только по указанию технической поддержки.

Обновление базы данных при однохостовой установке

...

Блок кода
cd <путь до каталога с файлами запуска ECCM 2.7>/db-tools
bash sudo ./postgres-upgrade.sh

После успешного обновления БД произведите запуск новой версии ЕССМ.

...

Блок кода
cd <путь до каталога с файлами запуска ECCM 2.7>/db-tools
bash sudo ./postgres-upgrade.sh

После успешного обновления БД произведите запуск новой версии ЕССМ.

...

Раскрыть
titleОбновление до версии 2.6.1 для стандартной схемы отказоустойчивой системы

Если предыдущая версия ЕССМ была 2.6.0, первоначально произведите запуск системы на версии 2.6.1. Перед запуском необходимо перенести перенесите сертификаты и файл конфигурации отказоустойчивой системы в директорию с новой версией ЕССМ при помощи выполнения следующих команд на каждом хосте:

Блок кода
sudo cp <путь до каталога с файлами запуска ЕССМ 2.6.0>/cluster-cert/* <путь до каталога с файлами запуска ЕССМ 2.6.1>/cluster-cert/
sudo cp <путь до каталога с файлами запуска ЕССМ 2.6.0>/.env.cluster <путь до каталога с файлами запуска ЕССМ 2.6.1>

Далее запустите ЕССМ на мастере:

Блок кода
titleMaster: eccm/2.6.1/
sudo ./compose-tools.sh --pull --start <IP ADDRESS> --cluster master

После того как мастер будет инициализирован и готов к работе, произведите запуск остальных узлов:

Блок кода
titleSlave: eccm/2.6.1/
sudo ./compose-tools.sh --pull --start <IP ADDRESS> -- cluster slave
Блок кода
titleWitness: eccm/2.6.1/
sudo ./compose-tools.sh --pull --start <IP ADDRESS> -- cluster witness

После успешного запуска ЕССМ на версии 2.6.1, произведите остановку системы при помощи выполнения следующей команды на каждом хосте:

Блок кода
sudo ./compose-tools.sh --stop
Раскрыть
titleОбновление до версии 2.6.1 для отказоустойчивой системы с БД на отдельном сервере

Если предыдущая версия ЕССМ была 2.6.0, первоначально произведите запуск системы на версии 2.6.1. Перед запуском перенесите сертификаты и файл конфигурации отказоустойчивой системы в директорию с новой версией ЕССМ при помощи выполнения следующих команд на каждом хосте:

Блок кода
sudo cp <путь до каталога с файлами запуска ЕССМ 2.6.0>/cluster-cert/* <путь до каталога с файлами запуска ЕССМ 2.6.1>/cluster-cert/
sudo cp <путь до каталога с файлами запуска ЕССМ 2.6.0>/.env.cluster <путь до каталога с файлами запуска ЕССМ 2.6.1>

Далее произведите запуск мастера базы данных, предварительно перейдя в директорию postgres/:

Блок кода
titleMaster: eccm/2.6.1/
cd postgres/
 sudo docker compose --env-file=.env ==env-file=../.env.cluster -f docker-compose.cluster.yml up -d

После того как база данных на Master-db будет проинициализирована, перейдите на сервер Slave-db. Перейдите в директорию postgres/ и запустите базу данных:

Блок кода
titleSlave-db: eccm/2.6.1/
cd postgres/
 sudo docker compose --env-file=.env ==env-file=../.env.cluster -f docker-compose.cluster.yml up -d

Во время инициализации Slave-db запустите Witness-узел, перейдя на сервер Witness-node. При помощи bash-скрипта произведите запуск Witness с необходимыми параметрами. Пример запуска с обязательными параметрами:

Блок кода
titleWitness: eccm/2.6.1/
sudo ./compose-tools.sh --pull --start <IP ADDRESS> -- cluster witness

После полной инициализации всего кластера баз данных перейдите на сервер Master-ECCM. При помощи bash-скрипта произведите запуск мастера с необходимыми параметрами. Пример запуска с обязательными параметрами:

Блок кода
titleMaster-app: eccm/2.6.1/
 sudo ./compose-tools.sh -s <MASTER_ECCM_HOST> --cluster master --database-host <MASTER_DB_HOST> --database-port <MASTER_DB_PORT> --backup-database-host <SLAVE_DB_HOST> --backup-database-port <SLAVE_DB_PORT>

Перейдите на сервер Slave-узла. При помощи bash-скрипта произведите запуск Slave с необходимыми параметрами. Пример запуска с обязательными параметрами::

Блок кода
titleSlave-app: eccm/2.6.1/
 sudo ./compose-tools.sh -s <SLAVE_ECCM_HOST> --cluster slave --database-host <MASTER_DB_HOST> --database-port <MASTER_DB_PORT> --backup-database-host <SLAVE_DB_HOST> --backup-database-port <SLAVE_DB_PORT>

После успешного запуска ЕССМ на версии 2.6.1, повторно произведите остановку системы. Для этого сначала остановите кластер приложений при помощи следующей команды:

Блок кода
titleОстановка узлов кластере приложений
cd <путь до каталога с файлами запуска ECCM 2.6>
sudo ./compose-tools.sh --stop

Далее необходимо произвести остановку каждого узла из кластера баз данных при помощи следующей команды:

Блок кода
titleОстановка узлов кластере приложений
cd <путь до каталога с файлами запуска ECCM 2.6>/postgres
sudo docker compose stop

Перенесите сертификаты в директорию с новой версией ЕССМ при помощи выполнения следующей команды на каждом хосте:

...

В ЕССМ 2.7 было добавлено резервирование сервиса RabbitMQ, поэтому  поэтому файл конфигурации отказоустойчивой системы претерпел значительные изменения. Повторно заполните заполните .env.cluster в каталоге с файлами запуска ЕССМ 2.7 в соответствии с разделом Запуск ЕССМ в отказоустойчивой системе.

...

Для отказоустойчивой системы после успешной остановки старой версии ЕССМ, на каждом узле необходимо изменить файл eccm/2.7/.env.cluster, изменив значение параметра RESTARTRECONFIGURE_CLUSTER на true

Предупреждение

Изменение параметра RESTARTRECONFIGURE_CLUSTER инициализирует  инициализирует принудительное назначение ролей. При отсутствии изменения данного параметра узел slave не будет обновлен.

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

Блок кода
cd <путь до каталога с файлами запуска ECCM 2.7>/db-tools
bash sudo ./postgres-upgrade.sh

После успешного обновления БД на мастере, произведите запуск новой версии ЕССМ.

Раскрыть
titleОбновление базы данных в отказоустойчивой системе с БД на отдельном сервере

При использовании отказоустойчивой системы с БД на отдельном сервере произведите обновление базы данных на хосте с мастером базы данных при помощи следующей команды:

Блок кода
titleMaster-db: eccm/2.7/
cd db-tools/
 sudo ./postgres-upgrade.sh


Запуск новой версии ЕССМ

Подсказка

Для offline-установки воспользуйтесь инструкцией, приведенной в разделе "Инструкция по установке и запуску".

...

Блок кода
cd <путь до каталога с файлами запуска ECCM 2.7>/postgres
sudo docker compose./compose-tools.sh --env-file=../eccm/.env up -dpull --start <IP ADDRESS> --database-only

На сервере с ЕССМ:

Блок кода
cd <путь до каталога с файлами запуска ECCM 2.7>
sudo ./compose-tools.sh --pull --start <IP ADDRESS> --database-host <IP ADDRESS DATABASE> --database-port <PORT DATABASE>

...

Для запуска новой версии ЕССМ в отказоустойчивой системе при стандартной схеме необходимо произвести запуск узла мастера:

...

В рамках версии скрипт keepalived/check_app.sh для Keepalived был изменен. Для получения доступа к веб-интерфейсу восстановите работу Keepalived в соответствии с инструкцией по Настройке по настройке VIP.