Описание
Обновление выполняется с версии 1.1. X. Для обновления с более ранней версии потребуется сначала обновиться до версии 1.1, а затем до версии 1.2.X.
Перед обновлением необходимо ознакомиться с описанием изменений v1.2_3.9.1 Изменения версий 1.2.X, определить какие настройки системы необходимо будет выполнить сразу после обновления и подготовить необходимые данные для их выполнения (сертификаты, локальную УЗ для входа в NAICE).
Подготовка к обновлению
Перед обновлением необходимо создать резервную копию БД в соответствии с инструкцией: v1.2_3.10 Создание резервной копии данных БД и восстановление данных БД и выгрузить её с сервера для возможности восстановления данных в случае ошибок обновления.
Если какие-либо переменные в groups/all.yml были изменены при установке предыдущих версий - необходимо перенести значения переменных all.yml из старого плейбука в новый перед установкой.
Если в новом плейбуке установки версии 1.2.Х в переменных groups/all.yml отсутствуют ранее использовавшиеся переменные - это значит что она была перенесена в менеджер конфигураций и её указание более не требуется.
Если используется клиент мониторинга Peeper Client
Если в составе NAICE ранее был установлен Peeper-Client (подробнее v1.2_7.3 Мониторинг NAICE с использованием Eltex Peeper), то перед выполнением обновления необходимо вручную остановить Peeper-Client. Для этого необходимо зайти в папку установки клиента <папка установки NAICE>/peeper (по умолчанию /etc/docker-naice/peeper) и остановить его командой:
cd /etc/docker-naice/peeper sudo bash ./setup.sh -u
После выполнения обновления необходимо вручную выполнить его запуск:
sudo bash ./setup.sh -i
Обновление установки с резервированием
Для установки с резервированием обновление выполняется путём путем запуска плейбуков установки NAICE версии 1.2.X:
- Обновление кластера СУБД PostgreSQL.
- Обновление сервисов NAICE.
Подготовка к обновлению и обновление выполняется в соответствии с инструкцией по установке:
Для онлайн обновления:
- v1.2_3.5 Установка с резервированием (c использованием VRRP)
- v1.2_3.6 Установка с резервированием (без использования VRRP)
Для оффлайн обновления:
- v1.2_3.5.1 Установка схемы с резервированием в закрытом контуре (с использованием VRRP)
- v1.2_3.6.1 Установка схемы с резервированием в закрытом контуре (без использования VRRP)
Рекомендуется использовать для запуска плейбуков Ansible тот же хост, что использовался ранее для установки, что бы не выполнять его повторную подготовку.
Особенности подготовки хостов с кластером PostgreSQL и нод NAICE перед обновлением с изменением подсетей Docker
Если в ходе обновления планируется изменение подсетей Docker - необходимо перед обновлением остановить на каждой ноде сервисы NAICE и кластер PostgreSQL.
Для этого необходимо перейти в папку установки NAICE (по умолчанию /etc/docker-naice) и выполнить команды:
Остановка сервисов NAICE:
sudo docker compose down
Остановка кластера PostgreSQL:
sudo docker compose -f docker-compose.repmgr.yml down
Убедиться, что не на хосте не осталось подсетей docker, совпадающих с указанными в переменных плейбука (подробнее в разделе v1.2_3.14 Смена Docker-сетей) выполнив команду:
docker network ls -q | xargs docker network inspect -f '{{.Name}}|{{range .IPAM.Config}}{{.Subnet}} {{end}}' | column -s'|' -t
Пример вывода команды, когда остановлены все контейнеры и удалены все подсети:
$ docker network ls -q | xargs docker network inspect -f '{{.Name}}|{{range .IPAM.Config}}{{.Subnet}} {{end}}' | column -s'|' -t
bridge 172.17.0.0/16
host
none
Если обнаружены совпадающие подсети выполнить очистку командой sudo docker network prune, подтвердив удаление:
$ sudo docker network prune WARNING! This will remove all custom networks not used by at least one container. Are you sure you want to continue? [y/N] y
Затем выполнить обновление в соответствии с инструкцией по установке в зависимости то используемого типа обновления: онлайн или оффлайн и схемы резервирования: с VRRP или без VRRP.
Для успешного обновления необходимо последовательно выполнить:
- Плейбук установки кластера PostgreSQL.
- Плейбук установки сервисов NAICE.