Инструкция по миграции в Platform V DropApp для EA#

Пререквизиты#

  1. Деплоймент инсталляции приведен согласно утвержденной схеме ниже: Миграция-ЕА-0.png

  2. Кластер Cloudera обновлен на версию 6.0.50 согласно документу Обновление с 5.1.x на 6.0.50.

  3. Балансировщики Platform V SynGX под управлением Alteon настроены на Cloudera.

  4. Установлен дополнительный IAM для доступа администраторов.

  5. Доступен КТС для LBOSSE APP и LBOSSE NET.

  6. Был выполнен запуск утилит Merger и Unpacker. Подробнее о работе с утилитами в Кратком руководстве по работе с утилитами Merger->Unpacker.

Установка в Platform V DropApp#

Настройка Devops Tools для deploy#

  1. Подготовить окружение по установке согласно разделу Подготовке окружения в Platform V DropApp.

  2. Выполнить подготовку пререквизитов согласно разделу Пререквизиты Platform V DropApp для работы с Jenkins Deploy Job.

  3. Настроить настройку репозиториев для работы с Jenkins Deploy Job по разделу Подготовка репозиториев.

  4. Выполнить все шаги по настройке Deploy job по разделу Настройка Deploy job для helm.

Миграция конфигурации из Cloudera в Platform V DropApp#

  1. Ознакомиться с разделом Структура каталога Helm в репозиториях документа Работа с дистрибутивом конфигураций на базе HELM с описанием особенностей конфигураций на базе Helm.

  2. Выполнить миграцию конфигурационных файлов по инструкции из файла Миграция конфигураций.

  3. Ознакомиться с разделом Работа с окружением, переопределение параметров после миграции данных в репозиторий конфигураций функциональных приложений документа Работа с дистрибутивом конфигураций на базе HELM.

  4. Запустить мигратор Abyss по инструкции из файла Миграция Abyss в Platform V DropApp для миграции конфигурационных файлов Abyss Cloudera (при запуске мигратора указать helm дистрибутив Abyss).

  5. Подготовить файлы values-*.yaml для установки на стенд (в ветке репозитория конфигураций функциональных приложений, в которую произведена миграция из п.4):

    1. Актуализировать кросс-компонентный файл values-env.yaml с описанием основных endpoints в репозитории конфигураций функциональных приложений согласно файлу по Настройке файла values-env;

    2. Актуализировать общие параметры приложения в values-app согласно документу по Настройке файла values-app компонента;

    3. Актуализировать параметры приложения в файлах values-abyss-.yaml согласно документу по Настройке values-*.yaml модулей компонента;

    4. Актуализировать параметры приложения для установки на разных плечах согласно документу по Настройке параметров в рамках переопределния по разным плечам.

Шаги установки в Platform V DropApp#

  1. Установка Platform V SynGX LBOSSE NET в качестве балансировщика на Platform V DropApp. Для этого требуется выполнить перенос 2 Platform V SynGX из под Alteon на LBOSSE:

    1. В конфигурации LBOSSE NET указать новые healthcheck endpoint соответствующих SynGX;

    2. Убрать соответствующие healthcheck endpoint для конфигурации Alteon;

    3. Применить для Platform V SynGX под LBOSSE NET целевую конфигурацию Platform V DropApp (в документе Разница между конфигурационными файлами балансировщиков Cloudera и Platform V DropApp для ClientAPI представлен шаблон конфигурации).

  2. Получить новое доменное имя для LBOSSE NET Abyss.

  3. Выполнить предварительное конфигурирование перед установкой в Platform V DropApp:

    1. Произвести настройку сервисов для отброса трейсов в trace collector: в values-env.yml заполнить параметр global.endpoints.egress.tracecollector. Значение параметра - это хост trace collector из Cloudera.

    2. Выключить ротацию для archive_service, установив следующие значения для параметров (предварительно необходимо сохранить исходные значения для последующего возврата в исходное состояние после завершения миграции):

      • Интервал в секундах для выполнения ротации: abyss-archive.helm.appOpts.abyss.archive.scheduler_rotation_interval_sec=2592000 (1 месяц);

      • Интервал выполнения слияния разделов индексов: abyss-archive.helm.appOpts.abyss.archive.scheduler_partition_merge_interval_sec=2592000 (1 месяц);

      • Установить параметр service.archive.scheduler.partition.merge-enabled = false.

    3. Выключить ротацию для fulltext_service установить значение для параметра service.fulltext.rotation.enable=false.

    4. Произвести настройку Coordinator UI Platform V DropApp ЦОД 1 для выполнения запросов в LBOSSE NET с новым доменным именем.

  4. Выполнить установку в ЦОД 1 версии 6.0.50:

    1. Выполнить установку сервисов Abyss в Platform V DropApp (HELM_DEPLOY) по инструкции Стандартные шаги по обновлению через Jenkins;

    2. Выполнить установку Coordinator UI в Platform V DropApp (HELM_DEPLOY) по инструкции Стандартные шаги по обновлению через Jenkins.

  5. Выполнить установку в ЦОД 2 версии 6.0.50 аналогично предыдущему пункту.

  6. Установить новый Coordinator UI Platform V DropApp для нового доменного имени путем добавления в IAM Admin:

    1. Настроить LBOSS APP на новый Coordinator UI;

    2. Добавить доменное имя для нового LBOSSE APP;

    3. Добавить в IAM Admin новую ссылку к Coordinator UI DropApp.

  7. Провести настройку LBOSSE APP для выполнения запросов в Coordinator UI DropApp.

  8. В egress INDA добавить новое доменное имя LBOSSE NET.

В результате получаем следующую схему:

Миграция-ЕА-1.png

Смок тесты#

Провести смок тест для LBOSSE APP:

  • Проверить работоспособность Coordinator UI DropApp путем ручного end-to-end тестирования;

  • Проверить перенаправления трафика между плечами путем поочередного отключения одно из плеч Coordinator UI.

Провести смок тест для LBOSSE NET:

  • Создать новый тестовый dashboard с новым datasource на INDA;

  • Проверить запросы на Abyss DropApp с API Key;

  • Проверить работоспособность двух плеч путем поочередного отключения первого и второго плеча на SynGX.

Инструкция по переключению клиентского трафика на DropApp#

  1. На плече Secondary производим переключение на новый источник данных, изменив конфигурации BUSE Secondary:

    1. В egress добавить адрес к новому LBOSSE NET;

    2. Перенастроить основной адрес запросов к LGDB на новое доменное имя LBOSSE NET.

  2. На плече Secondary производим переключение на новый источник данных, изменив конфигурацию INDA Secondary:

    1. В egress добавить адрес к новому LBOSSE NET;

    2. Перенастроить основной адрес запросов к PVM Auth LGDB на новое доменное имя LBOSSE NET.

  3. В результате переключения получаем схему: Миграция-ЕА-2.png

  4. Переключение AUDEI на плече Secondary. Переконфигурируем сервис AUDEI плеча Secondary на новый адрес плеча Secondary в SynGX DropApp. Миграция-ЕА-3.png

  5. Переключение COTE на плече Secondary. Перенастраиваем сервис COTE Management на использование адреса LBOSSE NET. На данном этапе весь внешний трафик плеча Secondary переведен на DropApp. Миграция-ЕА-4.png

  6. Далее проводим аналогичные шаги (1-3) для плеча PRIMARY. Миграция-ЕА-5.png

  7. Необходимо проверить, что каждое плечо DropApp в отдельности выдерживает нагрузку. Для этого необходимо произвести поочередный вывод каждого из плеч DropApp из под балансировки. Пример конфигурации для отключения каждого из плеч приведено ниже.

  8. Опционально. Производим переключение EFS валидатор на новый кластер DropApp.

  9. Опционально. После проведенных шагов выше, все возможные интеграции переведены на новый кластер DropApp. Далее можно переводить всю балансировку Cloudera под управление SynGX LBOSSE, постепенным добавлением в пул балансировки SynGX LBOSSe и переносом Virtual IP на новый балансировщик LBOSSE NET. Миграция-ЕА-6.png

  10. Удаляем или переносим на новое доменное имя LBOSSE APP ссылку к Coordinator UI. Миграция-ЕА-7.png

  11. Остановить сервисы Abyss в кластере Cloudera.

  12. Включить ротацию для archive_service и fulltext_service:

    1. Для archive_service вернуть исходное значение интервала выполнения ротации (параметр service.archive.scheduler.rotation.interval-sec) и исходное значение интервала выполнения слияния разделов индексов (параметр service.archive.scheduler.partition.merge-interval-sec).

    2. Для fulltext_service установить значения для параметра service.fulltext.rotation.enable=true.

    3. Выполнить переустановку archive_service и fulltext_service.

Финальная схема: Миграция-ЕА-8.png

Все шаги схемы: Миграция-ЕА-9.png

Отключение ЦОД1

Комментируем или удаляем строку для ЦОД1 (server 127.127.0.1) в upstream client_api, archive, fulltext, monitoring, pvm_auth.

Отключение ЦОД2

Комментируем или удаляем строку для ЦОД2 (server 127.127.0.2) в upstream client_api, archive, fulltext, monitoring, pvm_auth.