Загрузка данных
Динамические окружения
В данном разделе представлены основные требования к динамическим окружениям для развертывания внутренних информационных систем и сервисов, а также процесс работы с ними на Портале управления платформой.
Содержание:
Требования к динамическим окружениям
Динамические окружения на Портале управления платформой
Возможность добавления динамических окружений позволяет разворачивать набор сервисов с произвольно указанными версиями, включая ветки feature/bugfix. С помощью этого можно одновременно проверять разные обновления системы, не вливая их в ветку master.
Требования к динамическим окружениям
Ниже представлены требования к динамическим окружениям для развертывания внутренних информационных систем и сервисов.
Конфигурация информационной системы
Attention
Динамические окружения объявляются в проекте информационной системы. Наличие динамического кружения определяется по наличию соответствующего каталога deploy/envs/dynamic/dyn-*,
где индексы * начинаются с 1 и идут по порядку (например, dyn-1, dyn-2 и т.д.).
В каталоге динамического окружения deploy/envs/dynamic/dyn-* можно размещать файл values.yaml конфигурации развертывания динамического окружения. Формат файлов values.yaml конфигураций развертывания динамических окружений является расширением формата файлов values.yaml конфигураций развертывания статических окружений информационных систем.
В файлах values.yaml конфигураций развертывания динамических окружений можно дополнительно указывать, какие сервисы и из каких веток будут развертываться в соответствующее динамическое окружение. Допускается указывать ветки master, bugfix/* и feature/*. Информация об именовании веток представлена в разделе Работа с ветками и запросами на слияние.
В примере, представленном ниже, указано, что service-1 будет развертываться из ветки feature/1, service-2 — из ветки bugfix/2, service-3 — из ветки master:
services:
service-1: feature/1
service-2: bugfix/2
service-3: master
Copy to clipboardErrorCopied
Note
Динамические окружения создаются (а точнее, обновляется их список) при отработке конвейера сборки информационной системы на ветке master.
Ресурсы для динамических окружений берутся из dev-окружения подразделения.
Значения параметров конфигурации развертывания динамического окружения наследуются из dev-окружения информационной системы:
если какой-то параметр не задан в конфигурации динамического окружения, его значение будет совпадать со значением параметра из dev-окружения.
Конфигурация сервиса
Attention
Для сервиса можно дополнительно задавать конфигурацию развертывания в динамическое окружение. Для этого в каталоге deploy/envs/dynamic/dyn-* соответствующего динамического окружения можно разместить файл values.yaml конфигурации развертывания в это окружение.
Формат файлов values.yaml конфигураций развертывания в динамическое окружение полностью совпадает с форматом файлов values.yaml конфигураций развертывания в статическое окружение.
Note
Значения параметров конфигурации развертывания сервиса в динамическое окружение наследуются из конфигурации развертывания сервиса в dev-окружение.
Развертывание сервиса
Note
При отработке конвейера сборки сервиса на ветке, которая указана для него в конфигурации динамического окружения информационной системы, сервис будет автоматически развертываться в это окружение.
При отработке конвейера сборки сервиса на ветке, отличной от указанной для него в конфигурации динамического окружения информационной системы, дополнительных действий для сервиса в этом окружении производиться не будет.
Если сервис не указан в конфигурации динамического окружения информационной системы, то при отработке конвейера его сборки на ветках master, bugfix/* и feature/* сервис будет автоматически удаляться из этого окружения.
Сервис будет развертываться в динамические окружения, которые были успешно созданы для информационной системы на момент отработки конвейера сборки этого сервиса.
Взаимодействие сервисов
Note
При развертывании сервиса в динамическое окружение на основе декларации связи развертывается интеграционная связь из динамического окружения в dev-окружение целевой системы. Информация о декларации связей представлена в разделе Декларативное описание связей.
Для HTTP-связи, если она декларируется в рамках одной информационной системы (исходная и целевая информационные системы совпадают), дополнительно развертывается интеграционная связь внутри динамического окружения, в которое развертывается сервис. При этом активной будет только одна из связей (в зависимости от того, развертывается или нет целевой сервис в данное динамическое окружение).
Динамические окружения на Портале управления платформой
Note
Динамические окружения не отображаются в списке систем.
В качестве примера демонстрируется система Демонстрационные примеры подразделения ЦК Перспективных разработок.
Отображение динамических окружений на портале реализовано следующим образом:
1. вкладка с динамическими окружениями отображается на странице системы (для которой они были задекларированы) только в окружении Разработка;
2. по умолчанию установлено значение Не выбрано, то есть система открыта в базовом окружении Разработка;
Страница системы
3. при выборе динамического окружения отображаются вкладки, актуальные для выбранного окружения:
Общая информация;
Ресурсы;
Сервисы;
Проблемы.
В каждой из этих вкладок отображается информация, соответствующая выбранному динамическому окружению;
Страница динамического окружения
4. после перехода во вкладку Сервис при нажатии на сервис происходит переход на страницу информации по сервису в соответствующем окружении.