Вы читаете development версию документации. Для просмотра актуальной версии перейдите в ветку: master.
11. Обновление приложений и компонентов услуг
11.1. Обновление услуги
Услуги (в т.ч. Витрина данных) представляет собой совокупность установленных и связанных между собой при помощи интерфейсов взаимодействия приложений.
При обновлении услуги на новую версию нам требуется решить задачу обновления комплекса приложений. Процесс обновления должен происходить с учетом особенности конкретной услуги и последовательности установки приложений в ней.
11.2. Обновление бандлов приложений
В процессе эксплуатации услуги может возникнуть необходимость обновить настройки или версию одного или нескольких приложений уже добавленных в услугу инсталляций.
Предусмотрены 2 типа обновления параметров приложений из бандлов:
Обычное обновление - процесс обновления добавляет новые настройки, интерфейсы и таски приложения (Ansible Playbook);
Принудительное обновление - все настройки, интерфейсы и таски приложения полностью заменяются на новые данные из репозитория;
Чтобы обновить бандл приложений из репозитория в карточке бандла необходимо нажать кнопку Обновить:
Рисунок 11.1 Обновление приложений бандла
Для обновления всех приложений и всех бандлов сразу необходимо сделать полное обновление из репозитория, как это описано в разделе: Раздел 5.2.1 Добавление компонентов из хранилища
Для принудительного обновления в меню управления бандла
необходимо выбрать опцию Обновить:
Рисунок 11.2 Принудительное обновление приложений
Примечание
В процессе обновления из репозитория происходит обновления бандлов и приложений в Datamart Platform Studio. Инсталляция витрины при этом не меняется. Процесс обновления инсталляций описан в разделе Раздел 11.4.
11.3. Выбор версии бандла для обновления
При обновлении приложений из бандлов происходит скачивание файлов бандлов из репозитория бандла. По умолчанию, используется ветка с последней версией бандла: master. Пользователь может выбрать требуемую ветку или тэг для обновления, если по каким-то причинам требуется использовать для обновления специфическую версию бандла, а не последнюю актуальную из master.
Рисунок 11.3 Выбор ветки (branch) или тэга (tag) для скачивания
- ..note::
После обновления приложений из новой версии бандла, необходимо обновить инсталляции и кластеры, созданные из обновленного приложения и выполнить действие «Применить конфигурацию»
bind. В некоторых случаях после обновления компонента из новой версии бандла может понадобится выполнить переустановку компонента.
11.4. Обновление компонентов услуги (инсталляций и кластеров)
Для обновления компонентов услуг требуется произвести следующую последовательность шагов:
Выбрать действие «Обновить приложение» в меню управления инсталляции или кластера
Для обновления в списке компонентов откройте меню Управление для
нужной вам инсталляции или кластера и выберите действие Обновить приложение (см. Рисунок 11.4).
В списке доступных версий выводятся возможные варианты версий приложений и бандлов, из которых может быть произведено обновление выбранного компонента:
обновить данные из новой версии бандла без изменения версии приложения - при данном обновлении не изменяется версия компонента, но при этом могут добавиться новые настройки или интерфейсы компонента;
обновить до новой версии приложения - при данном изменении производится изменении версии приложения компонента на более новую, для корректного применения обновления требуется обязательная переустановка компонента;
обновить до более ранней версии приложения - данное действие возможно выполнить не для всех компонентов, так как необходимо учитывать совместимость более ранней версии приложения с версиями других компонентов услуги;
После завершения обновления у компонента будут обновлены все настройки, связи инсталляции и само приложение (если была выбрана новая версия приложения) в Datamart Platform Studio на
текущую актуальную версию из библиотеки приложений. Статус инсталляции изменится на в Обновлена.
Рисунок 11.4 Обновление инсталляции приложения.
Примечание
Опция «Принудительно» (выкл. по умолчанию) влияет на логику обновления настроек приложения следующим образом: При выкл. будут сохранены значения настроек, файлов и интерфейсов, которые у новой версии приложения совпадают с установленной версией. Если в новой версии появились новые настройки (файлы, интерфейсы), они будут добавлены. При вкл. все настройки и интерфейсы будут полностью заменены настройками новой версии приложения по умолчанию. Если у инсталляции были загружены файлы, они останутся.
Обновление настроек конфигурации при смене версии.
После обновления компонента необходимо проверить корректность изменения настроек и интерфейсов приложения и при необходимости их скорректировать. Действия зависят от типа и версии обновляемого приложения.
Применение обновления к компоненту услуги
Для применения произведенного обновления к компоненту услуги на сервере:
при смене версии приложения необходимо в меню управления выполнить действие «Переустановить»;
при обновлении до новой версии бандла без изменении версии самого приложения в большинстве случаев достаточно выполнить действие «Применить конфигурацию (bind)».
Примечание
При выполнении действия «Переустановить» будет удален docker-контейнер со старым приложением и создан новый с новой версией. При выполении действия «Переустановить» для statefull кластеров и инсталляций, необходимо предварительно выполнить бекап данных во избежание их потери.
Предупреждение
В текущем разделе описан общий принцип обновления инсталляции или кластера атомарного приложения в услуге. При обновлении услуги типа Витрины целиком, требуется следовать правилам и последовательности обновления приложений Витрины данных. Корректная последовательность и правила обновления версий Витрин данных описаны в рекомендациях по обновлению Витрин данных и выходят за рамки текущего документа.