Вы просматриваете старую версию данной страницы. Смотрите текущую версию.

Сравнить с текущим просмотр истории страницы

« Предыдущий Версия 2 Текущий »

Описание

Обновление выполняется с версии 1.2.x до версии 1.3.х. Для более ранних версий требуется выполнить обновление до версии 1.2 - v1.2_3.9 Обновление.

Перед обновлением необходимо ознакомиться с описанием изменений v1.3_3.3.1 Изменения версии 1.3, определить какие настройки системы необходимо будет выполнить сразу после обновления и подготовить необходимые данные для их выполнения (сертификаты, локальную УЗ для входа в NAICE).

В версии 1.3.0 выполнено обновление СУБД PostgreSQL до версии 18. Попытка выполнить обновление путем повторной установки NAICE приведет к его неработоспособности! Обновление необходимо выполнять отдельным плейбуком в соответствие с инструкцией ниже!

Подготовка к обновлению

Перед обновлением необходимо создать резервную копию БД в соответствии с инструкцией: v1.3_3.6.2 Однохостовая/многохостовая установки с Ansible и выгрузить её с сервера для возможности восстановления данных в случае ошибок обновления.


Если какие-либо переменные в groups/all.yml были изменены при установке предыдущих версий - необходимо перенести значения переменных all.yml из старого плейбука в новый перед установкой.

Если в новом плейбуке установки версии 1.3.Х в переменных groups/all.yml отсутствуют ранее использовавшиеся переменные - это значит что она была перенесена в менеджер конфигураций и её указание более не требуется.

Директория установки NAICE - изменить значение, если ранее использовалась другая директория для установки:

naice_docker_path: /etc/docker-naice


Указать актуальную временную зону работы NAICE:

time_zone: "Etc/UTC"


Ранее в конфигурации подсетей контейнеров вручную было добавлено использование определенных подсетей - необходимо перенести эту информацию в файл переменных group_vars/networks.yml (в приведенном примере показаны значения по умолчанию):

---
# Переменные для настройки Docker сети
docker_network_unmasked:
  subnet: "172.18.0.0/20"
  ip_range: "172.18.8.0/21"
  gateway: "172.18.0.1"

docker_network_external:
  subnet: "172.20.0.0/20"
  ip_range: "172.20.8.0/21"
  gateway: "172.20.0.1"

docker_network_internal:
  subnet: "172.21.0.0/20"
  ip_range: "172.21.8.0/21"
  gateway: "172.21.0.1"


Если используется клиент мониторинга Peeper Client

Если в составе NAICE ранее был установлен Peeper-Client (подробнее v1.3_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.

Для обновления в закрытом контуре используются те же хосты, на которых развернут NAICE.

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

С использованием VRRP

Обновление осуществляется запуском отдельного плейбука Ansible master-migration-naice-cluster-vrrp-1.2-1.3.yml. По завершении работы плейбука не должно быть ошибок.

ansible-playbook master-migration-naice-cluster-vrrp-1.2-1.3.yml -i inventory/hosts-cluster.yml

При выполнении оффлайн обновления на ОС Astra Linux 1.7.x необходимо выполнять запуск плейбука из под пользователя root, без использования sudo!

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

$sudo su
#


Без использования VRRP

Обновление осуществляется запуском отдельного плейбука Ansible master-migration-naice-cluster-geo-1.2-1.3.yml. По завершении работы плейбука не должно быть ошибок.

ansible-playbook master-migration-naice-cluster-geo-1.2-1.3.yml -i inventory/hosts-geo.yml

При выполнении оффлайн обновления на ОС Astra Linux 1.7.x необходимо выполнять запуск плейбука из под пользователя root, без использования sudo!

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

$sudo su
#


Проверка состояния сервисов

Проверить успешность запуска контейнеров можно, перейдя в директорию для установки NAICE (по умолчанию - /etc/docker-naice/ ) и выполнив команду для просмотра списка и статуса контейнеров docker compose ps -a. Вывод команды должен быть примерно следующим:

Вывод статусов сервисов
NAME                COMMAND                  SERVICE             STATUS              PORTS
epg-service         "/bin/sh -e /usr/loc…"   epg-service         running (healthy)
naice-aquila        "java -cp @/app/jib-…"   naice-aquila        running (healthy)   0.0.0.0:49->1049/tcp, 0.0.0.0:8091->8091/tcp, :::49->1049/tcp, :::8091->8091/tcp
naice-bubo          "java -cp @/app/jib-…"   naice-bubo          running (healthy)   0.0.0.0:8093->8093/tcp, :::8093->8093/tcp
naice-castor        "java -Djava.awt.hea…"   naice-castor        running (healthy)   0.0.0.0:8095->8095/tcp, :::8095->8095/tcp
naice-cetus         "java -cp @/app/jib-…"   naice-cetus         running (healthy)   0.0.0.0:8099->8099/tcp, :::8099->8099/tcp
naice-gavia         "java -cp @/app/jib-…"   naice-gavia         running (healthy)   0.0.0.0:8080->8080/tcp, :::8080->8080/tcp
naice-gulo          "java -cp @/app/jib-…"   naice-gulo          running (healthy)   0.0.0.0:8089->8089/tcp, :::8089->8089/tcp
naice-lemmus        "java -cp @/app/jib-…"   naice-lemmus        running (healthy)   0.0.0.0:8083->8083/tcp, :::8083->8083/tcp
naice-lepus         "java -cp @/app/jib-…"   naice-lepus         running (healthy)   0.0.0.0:67->1024/udp, 0.0.0.0:8087->8087/tcp, :::67->1024/udp, :::8087->8087/tcp
naice-mustela       "java -cp @/app/jib-…"   naice-mustela       running (healthy)   0.0.0.0:8070->8070/tcp, :::8070->8070/tcp
naice-nats          "docker-entrypoint.s…"   nats                running (healthy)
naice-orca          "java -cp @/app/jib-…"   naice-orca          running (healthy)   0.0.0.0:8102->8102/tcp, :::8102->8102/tcp
naice-ovis          "java -cp @/app/jib-…"   naice-ovis          running (healthy)   0.0.0.0:8084->8084/tcp, :::8084->8084/tcp
naice-phoca         "java -cp @/app/jib-…"   naice-phoca         running (healthy)   0.0.0.0:8097->8097/tcp, :::8097->8097/tcp
naice-postgres-1    "/opt/bitnami/script…"   postgres            running (healthy)   127.0.0.1:15432->22/tcp, 127.0.0.1:5432->5432/tcp
naice-radius        "/docker-entrypoint.…"   naice-radius        running (healthy)   0.0.0.0:1812-1813->1812-1813/udp, 0.0.0.0:9812->9812/tcp, :::1812-1813->1812-1813/udp, :::9812->9812/tcp
naice-sterna        "/docker-entrypoint.…"   naice-sterna        running (healthy)   0.0.0.0:32769->80/tcp, 0.0.0.0:8443->444/tcp, :::32769->80/tcp, :::8443->444/tcp
naice-ursus         "java -cp @/app/jib-…"   naice-ursus         running (healthy)   0.0.0.0:8081->8081/tcp, :::8081->8081/tcp
naice-vulpus        "java -cp @/app/jib-…"   naice-vulpus        running (healthy)   0.0.0.0:8086->8086/tcp, :::8086->8086/tcp
naice-web           "/docker-entrypoint.…"   naice-web           running (healthy)   0.0.0.0:32770->80/tcp, 0.0.0.0:443->443/tcp, 0.0.0.0:80->4200/tcp, :::32770->80/tcp, :::443->443/tcp, :::80->4200/tcp

Особенности подготовки хостов с кластером 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.3_3.2.6 Смена 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.


  • Нет меток