Перейти к основному содержимому

Инструкция по обновлению Monq до версии 7.13.3

Требования

Предыдущая версия Monq: 7.13.2

В обновлении:

ПродуктНовая версия
pl7.13.3
sm7.13.3
cl7.13.3
fm7.13.3
plugins7.13.3
mcs7.13.3

Уровень простоя - обновляются все микросервисы. Будет перезапущена вся система.

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

Проведение миграции 7.13.2 -> 7.13.3

Для запуска обновления требуется скачать клиент управления Monq monqctl и выполнить конфигурацию контекста monqctl, если ранее этого не выполнялось.

!!! MonqCtl !!!

Минимальная версия monqctl: 1.12.0

Примечание: можно настроить 2 контекста для stage и production одновременно.

Примечание 2: токен для доступа в Monq ReleaseHub для скачивания обновления требуется получить, обратившись в поддержку Monq, либо из письма с регистрацией лицензии.

Выполнить конфигурацию DNS

Внимание

Данный шаг выполняется только для DemoVM скачанного с сайта

kubectl patch configmap coredns-custom -n kube-system --type merge \
-p '{"data":{"in.monq.local.server": "in.monq.local:53 {\n rewrite stop name k8s.in.monq.local kubernetes.default.svc.cluster.local\n rewrite stop {\n name regex (.*)\\.in\\.monq\\.local {1}.infra.svc.cluster.local\n answer name (.*)\\.infra\\.svc\\.cluster\\.local {1}.in.monq.local\n }\n kubernetes cluster.local {\n noendpoints\n namespaces default infra\n }\n cache 30\n}\n"}}'
kubectl rollout restart deploy coredns -n kube-system

Выполнить предрелизную подготовку

  1. Проверить контекст monqctl и статус реестра микросервисов.

    # Просмотреть текущий контекст, с которым работает monqctl.
    monqctl config current-context
    # Просмотреть статус реестра микросервисов из контекста.
    monqctl registry get status
    # Просмотреть статус сервисов в реестре микросервисов из контекста.
    monqctl registry get services
  2. Установить контекст релиза, с которым будет работать monqctl в рамках контекста установленного Monq. Команда при этом скачивает и подготавливает релиз.

monqctl release use-version 7.13.3 --product=monq
При обновлении из папки
# Требуется выполнить экспорт релиза в папку
monqctl release version export 7.13.3 --product=monq --dest=<export directory>

# Выполнить команду `use-version` с аргументом `--sourceDir`.
monqctl release use-version 7.13.3 --product=monq --sourceDir=<папка с экспортированным обновлением>

Выполнить обновление реестра микросервисов

monqctl registry update registry --version=3.13.2
# Просмотреть статус реестра микросервисов после обновления.
monqctl registry get status
При обновлении из папки
mkdir registry
monqctl registry export registry 3.13.2 --dest=./registry/
cd registry
monqctl registry update registry --version=3.13.2 --sourceDir=./

# Просмотреть статус реестра микросервисов после обновления
monqctl registry get status

rm -rf ../registry

MONQ Platform (pl)

Выполнить перекачку контейнеров в Docker репозиторий обновляемого экземпляра MONQ

monqctl release update images --module=pl

Выполнить конфигурацию микросервисов в реестре для микросервисов из обновления и применить шаблоны в Kubernetes

monqctl release update microservices --module=pl

Перезапустить микросервисы автоматон v2

monqctl instance restart microservice --microservice=pl-automaton-v2-processor-service
monqctl instance restart microservice --microservice=pl-automaton-v2-processor-service-runner
monqctl instance restart microservice --microservice=pl-automaton-v2-processor-service-compiler

MONQ Service Monitor (sm)

Выполнить перекачку контейнеров в Docker репозиторий обновляемого экземпляра MONQ

monqctl release update images --module=sm

Выполнить конфигурацию микросервисов в реестре для микросервисов из обновления и применить шаблоны в Kubernetes

monqctl release update microservices --module=sm

MONQ Collector (cl)

Выполнить перекачку контейнеров в Docker репозиторий обновляемого экземпляра MONQ

monqctl release update images --module=cl

Выполнить конфигурацию микросервисов в реестре для микросервисов из обновления и применить шаблоны в Kubernetes

monqctl release update microservices --module=cl

Test Forge (fm)

Выполнить перекачку контейнеров в Docker репозиторий обновляемого экземпляра MONQ

monqctl release update images --module=fm

Выполнить конфигурацию микросервисов в реестре для микросервисов из обновления и применить шаблоны в Kubernetes

monqctl release update microservices --module=fm

MONQ Metrics (mcs)

Выполнить перекачку контейнеров в Docker репозиторий обновляемого экземпляра MONQ

monqctl release update images --module=mcs

Выполнить конфигурацию микросервисов в реестре для микросервисов из обновления и применить шаблоны в Kubernetes

monqctl release update microservices --module=mcs

PLUGINS (plugins)

Выполнить перекачку контейнеров в Docker репозиторий обновляемого экземпляра MONQ

monqctl release update images --module=plugins

Выполнить конфигурацию микросервисов в реестре для микросервисов из обновления и применить шаблоны в Kubernetes

monqctl release update microservices --module=plugins