Rolling upgrade
Rolling upgrade — возможность последовательного обновления сервиса ADQMDB на отдельных хостах ADQM без долговременной остановки кластера.
|
ВАЖНО
|
Ниже описан процесс последовательного обновления кластера ADQM через интерфейс ADCM.
Шаг 1. Подготовка к обновлению
-
На странице Bundles загрузите новый бандл ADQM — см. шаг Загрузка бандла в ADCM в статье Создание кластера.
-
Откройте страницу Clusters, где после загрузки нового бандла станет активной иконка
в столбце Actions для кластера ADQM — кликните по иконке.
Подготовка кластера к обновлениюВ открывшемся окне Upgrade Cluster выберите доступную для обновления версию и нажмите Upgrade.
Выбор версии для обновленияПосле этого ADCM покажет диалоговое окно подтверждения подготовки к обновлению. Кликните Run.
Подтверждение выполнения подготовки к обновлениюКогда действие будет выполнено, ADCM изменит статус кластера на
upgrading— кластер готов к обновлению.
Шаг 2. Обновление ADQMDB по группам хостов
Выполнить обновление ADQMDB не на всем кластере, а на отдельных хостах, можно одним из способов:
-
Запустить действие сервиса ADQMDB Upgrade, указав в его конфигурации хосты, на которых нужно обновить сервис. Действие доступно начиная с версии ADQM 26.8.2.7.1.b1.
-
Использовать функциональность Action hosts groups, чтобы создать группу хостов, на которых нужно обновить версию ADQMDB, и выполнить действие Upgrade для этой группы.
-
Запустите действие Upgrade для сервиса ADQMDB — откроется Wizard, через который можно настроить действие. На первом шаге конфигурации доступны следующие параметры:
-
ADQMDB Hosts — список хостов, на которых необходимо обновить версию ADQMDB.
-
Use compatibility mode with previous version — если опция включена, будут использоваться значение по умолчанию из предыдущей версии (параметр ClickHouse
compatibility).
Настройки действия "Upgrade" сервиса ADQMDB
-
-
На странице следующего шага конфигурации при необходимости можно:
-
Отключить опцию Raise blocking concern для запуска действия без блокировки кластера.
-
Добавить комментарий с кратким описанием действия.
-
Установить флаг Verbose, чтобы просмотреть дополнительную информацию о выполнении действия на странице Jobs.
Завершающий шаг настройки действияНажмите Run, чтобы подтвердить выполнение действия.
-
-
На странице конфигурации сервиса ADQMDB (Clusters → <ADQM_cluster> → Services → ADQMDB) откройте вкладку Action hosts groups и объедините хосты кластера в группы, чтобы затем обновить версию ADQMDB поочередно для каждой группы хостов. Например, можно создать группы хостов так, чтобы каждая из них включала по одной реплике каждого шарда. На рисунке ниже показан пример разделения хостов на группы по этому принципу для следующей топологии кластера:
-
шард 1 с двумя репликами — dev-adqm-01.ru-central1.internal и dev-adqm-02.ru-central1.internal;
-
шард 2 с двумя репликами — dev-adqm-03.ru-central1.internal и dev-adqm-04.ru-central1.internal.
Распределение хостов по группам для последовательного обновления сервиса ADQMDB
-
-
Выполните обновление сервиса ADQMDB для одной группы хостов. Для этого в строке группы хостов кликните по иконке
в столбце Actions и запустите действие Upgrade.
Запуск обновления ADQMDB для группы хостовВ открывшемся Wizard (см. описание на вкладке ADQMDB’s Upgrade action) подтвердите выполнение обновления.
После завершения обновления сервиса ADQMDB для группы хостов кластер останется в состоянии upgrading.
Действие Upgrade можно запустить для группы хостов повторно, если, например, не удалось выполнить обновление на некоторых хостах или в группу были добавлены новые хосты.
После успешного выполнения действия Upgrade убедитесь, что на всех хостах группы установлена новая версия ClickHouse (например, можно выполнить команду select version() в консольном клиенте clickhouse-client) и базы данных работают корректно (ClickHouse со своей стороны гарантирует техническую совместимость двух версий в пределах года, но бизнес-поведение может меняться, поэтому прикладной результат следует проверять для каждой версии отдельно). Дальнейшие действия зависят от результата проверки:
-
Если проверка прошла успешно, можно продолжить обновление ADQMDB на других хостах кластера (запустить действие Upgrade для следующей группы хостов) или перейти к завершению обновления кластера.
-
В случае возникновения каких-либо проблем при тестировании новой версии ClickHouse можно прервать обновление кластера и вернуть предыдущую версию сервиса ADQMDB на обновленных ранее хостах. Чтобы это сделать, перейдите на страницу Clusters и запустите для кластера действие Abort the upgrade.
После отмены обновления бандл кластера вернется к предыдущей версии (и ClickHouse на всех хостах кластера соответственно тоже), а состояние кластера установится в installed.
Если отменить обновление не удалось (например, из-за того, что поврежден или отсутствует файл с информацией, необходимой для возврата к предыдущей версии, или архив с файлами конфигурации старой версии сервиса ADQMDB), можно запустить действие Abort the upgrade с включенной опцией Forced rollback — в этом случае осуществится принудительный откат к предыдущей версии бандла ADQM, после которого необходимо будет запустить действие Reconfig & restart для сервиса ADQMDB.
Начиная с версии ADQM 24.3.11.7.1.b1 установка опции Forced rollback в действии Abort the upgrade приводит к восстановлению репозиториев ADQM и удалению обновленных пакетов ADQM.
После ввода параметров действия на вкладке Configuration необходимо нажать Next и подтвердить действие на следующей вкладке Confirmation, нажав Run.
Шаг 3. Завершение обновления
После того, как сервис ADQMDB переведен на новую версию на хостах, где было необходимо провести предварительное обновление, завершите обновление кластера действием Complete the upgrade (на странице Clusters), которое обновит ADQMDB на остальных хостах, а также все другие сервисы ADQM в кластере. После выполнения этого действия уже не будет возможности вернуться к предыдущей версии ADQM.
Когда процесс обновления будет завершен, ADCM изменит состояние кластера на installed.
|
ПРИМЕЧАНИЕ
Запуск действия Complete the upgrade начинает обычное обновление кластера, то есть обновление всех сервисов ADQM на всех хостах (как при запуске действия Upgrade для кластера, обновляемого на версию ADQM до 24.3.2.23.1.b1 включительно). |