Обновление версии ПО ECCM состоит из следующих этапов:
- 0. Создание резервной копии данных;
- 1. Скачивание и распаковка архива с новой версией файлов запуска ЕССМ;
- 2. Остановка старой версии ECCM;
- 3. Выполнение миграции базы данных;
- 4. Запуск новой версии ЕССМ.
Для возможности отката к предыдущей версии перед началом обновления рекомендуем создать резервную копию данных. В случае если ECCM установлен на сервере с использованием виртуализации, следует сделать Snapshot системы. В ином случае — создать резервную копию баз данных eccm и identity_provider_db средствами PotsgreSQL.
Начиная с версии 1.7 сервисы ЕССМ используют версию PostgreSQL 14.2.
Если обновление до версии 1.13 осуществляется с версии 1.6 (или более ранней), то перед выполнением шагов из данного раздела:
- Выполните обновление до версии 1.7 (так как необходимо обновить базу данных PostgreSQL с версии 12.5 до версии 14.2). Подробная инструкция по обновлению БД приведена в разделе Обновление 1.6 → 1.7.
- Выполните обновление до версии 1.8. Подробная инструкция приведена в разделе Обновление 1.7 → 1.8.
- Выполните обновление до версии 1.9. Подробная инструкция приведена в разделе Обновление 1.8 → 1.9.
- Выполните обновление до версии 1.10. Подробная инструкция приведена в разделе Обновление 1.9 → 1.10.
- Выполните обновление до версии 1.11. Подробная инструкция приведена в разделе Обновление 1.10 → 1.11.
- Выполните обновление до версии 1.12. Подробная инструкция приведена в разделе Обновление 1.11 → 1.12.
В версии 1.13 отсутствует обратная совместимость с файлами лицензий для версий старше 1.12. Для получения обновленных лицензий обратитесь в коммерческий отдел ELTEX по телефону: +7 383 274-10-01, почте: eltex@eltex-co.ru либо закажите звонок с сайта: http://eltex-co.ru
Получение и распаковка архива
Перед установкой новой версии ЕССМ необходимо предварительно скачать архив с файлами системы. Файлы, необходимые для запуска проекта, распространяются в виде архива .tar.gz. Их можно получить с общедоступного облака. Загрузите архив на сервер и распакуйте его. Рекомендуется распаковывать архив в заранее созданную отдельную директорию:
wget "https://cloud.eltex-co.ru/index.php/s/P8xDfmyo3XyEs0g/download?path=%2F&files=eccm-1.13.tar.gz" -O eccm-1.13.tar.gz mkdir eccm sudo tar -zxvf eccm-1.13.tar.gz -C eccm/
Для удобства работы рекомендуем предварительно разместить файлы для запуска новой версии в соседнюю директорию от старой, например:
$ tree -L 2 --dirsfirst . ├── 1.12 │ ├── eccm │ ├── postgres │ ├── README.md │ ├── args-compose-tools.log │ ├── compose-tools.sh │ ├── generate-cert.sh │ └── technical_support.sh └── 1.13 ├── eccm ├── postgres ├── README.md ├── args-compose-tools.log ├── compose-tools.sh ├── generate-cert.sh └── technical_support.sh
В случае многохостовой установки скачайте и распакуйте архив и на сервер с ЕССМ, и на сервер с базой данных.
Остановка старой версии ECCM
Остановка сервисов ЕССМ при однохостовой установке
Когда ECCM запущен на одном хосте (ЕССМ и база данных находятся на одном сервере), для остановки старой версии ЕССМ и удаления контейнеров выполните команду из директории с файлами запуска старой версии ECCM:
cd <путь до каталога с файлами запуска ECCM 1.12> sudo ./compose-tools.sh --delete-containers
Остановка сервисов ЕССМ при многохостовой установке
Когда ECCM запущен на нескольких хостах (ЕССМ на одном сервере, база данных — на другом), для остановки старой версии ЕССМ выполните команды, описанные ниже.
На сервере ЕССМ:
cd <путь до каталога с файлами запуска ECCM 1.12>/eccm sudo docker compose down
На сервере с базой данных:
cd <путь до каталога с файлами запуска ECCM 1.12>/postgres sudo docker compose down
Выполнение миграции базы данных
В версии 1.13 необходимо осуществить миграцию базы данных.
В ходе миграции все сущности БД identity_provider_db будут перенесены в БД eccm. Миграция осуществляется с помощью скрипта.
Скрипт:
- Создаёт дамп БД identity_provider_db и применяет его на БД eccm.
- Удаляет остаточную БД identity_provider_db (только в случае успешного переноса).
Для запуска скрипта выполните команду:
cd <путь до каталога с файлами запуска ECCM 1.13>/migrate sudo ./migrate.sh
Если БД развернута на другом хосте, то выполните команду:
cd <путь до каталога с файлами запуска ECCM 1.13>/migrate sudo ./migrate.sh --external-database <IP ADDRESS DATABASE>
При запуске скрипта миграции с ключом "--external-database
" будут использоваться только параметры, указанные в файле `.env
`, который находится рядом со скриптом. Также необходимо установить пакет `postgresql-client
`.
Запуск новой версии ЕССМ
Запуск новой версии ЕССМ при однохостовой установке
Для однохостовой системы после успешной остановки старой версии ЕССМ перейдите в директорию, в которую был распакован архив с новой версией ЕССМ, и выполните команду:
cd <путь до каталога с файлами запуска ECCM 1.13> sudo ./compose-tools.sh --pull --start <IP ADDRESS>
Запуск новой версии ЕССМ при многохостовой установке
Если система была установлена на нескольких хостах, то сначала необходимо запустить БД на сервере с Postgres:
cd <путь до каталога с файлами запуска ECCM 1.13>/postgres sudo docker compose up -d
Затем запустить новую версию ЕССМ на сервере с ЕССМ:
cd <путь до каталога с файлами запуска ECCM 1.13> sudo ./compose-tools.sh --pull --start <IP ADDRESS> --database-host <IP ADDRESS DATABASE> --database-port <PORT DATABASE>