Архитектура Azure Pipelines с DevTest Labs
Важно!
CI/CD с DevTest Labs — это вариант проектирования конвейера CI/CD с помощью Azure DevOps. В этой статье рассматриваются особенности развертывания в промежуточных средах DevTest Labs.
DevTest Labs позволяет подготавливать среды Windows и Linux с помощью многократно используемых шаблонов и артефактов. Эти среды могут быть полезны для разработчиков, но также могут использоваться в конвейерах CI/CD для подготовки промежуточных сред. Ознакомьтесь с Azure DevTest Labs сценариями, чтобы узнать, подходят ли лаборатории DevTest для вашего сценария.
В этой статье описывается высокоуровневый рабочий процесс DevOps для развертывания изменений приложений с помощью непрерывной интеграции (CI) и непрерывного развертывания (CD) с помощью Azure Pipelines. Среда DevTest Labs используется для промежуточной среды.
Архитектура
Скачайте файл Visio этой архитектуры.
Поток данных
В этом разделе предполагается, что вы ознакомились с базовой архитектурой Azure Pipelines и посвящены только особенностям развертывания рабочей нагрузки для Azure DevTest Labs для промежуточного хранения.
Конвейер - запроса на вытягиваниеТо же, что и базовые показатели
Конвейер - CIТо же, что и базовые показатели
Триггер - конвейера CDТо же, что и базовые показатели
Cd create DevTest Labs промежуточная среда . На этом шаге создается среда DevTest Labs, которая выступает в качестве промежуточной среды. Этот шаг включает в себя следующее:
- Создайте среду Azure DevTest Labs в промежуточной подписке.
- Разверните шаблон ARM в среде DevTest Labs. Образы виртуальных машин можно хранить в общей коллекции образов.
- Выполните все действия после развертывания, чтобы правильно настроить промежуточную среду.
Выпуск компакт-диска для промежуточного хранения — то же, что и базовый план с одним исключением. Промежуточная среда — это среда DevTest Labs.
Выпуск компакт-диска в рабочую среду - То же, что и базовые показатели
Мониторинга - то же, что и базовый план
Компоненты
В этом разделе предполагается, что вы ознакомились с разделом Компоненты базовой архитектуры Azure Pipelines и посвящены только особенностям развертывания рабочей нагрузки для Azure DevTest Labs для промежуточного хранения.
- Azure DevTest Labs — это служба для создания, использования и управления средами, используемыми для разработки, тестирования и развертывания. Служба позволяет легко развертывать предварительно настроенные среды экономичным способом.
Альтернативные варианты
В качестве альтернативы созданию промежуточной среды DevTest Labs в рамках процесса CD можно предварительно создать среду за пределами конвейера. Это будет иметь положительное преимущество ускорения конвейера. Эта альтернатива остановит возможность сноса среды после завершения конвейера, что приведет к увеличению затрат.
В ситуациях, когда конструктор образов виртуальных машин и Общая коллекция образов не работают, можно настроить фабрику образов для создания образов виртуальных машин из конвейера CI/CD и их автоматического распространения на любые Azure DevTest Labs, зарегистрированные в этих образах. Дополнительные сведения см. в статье Запуск фабрики образов из Azure DevOps.
Дополнительные среды, помимо промежуточного хранения, можно создать и развернуть в как часть конвейера CD. Эти среды могут поддерживать такие действия, как тестирование производительности и приемочное тестирование пользователей.
Рекомендации
В этом разделе предполагается, что вы ознакомились с разделом о рекомендациях в статье Базовая архитектура Azure Pipelines, и в ней рассматриваются только особенности развертывания рабочей нагрузки для Azure DevTest Labs для промежуточного хранения.
Оптимизация затрат
- Рассмотрите возможность использования политик и процедур Azure DevTest Labs для контроля затрат
Эффективность операционных процессов
- Рассмотрите возможность реализации сред помимо простой промежуточной и рабочей среды, чтобы реализовать такие возможности, как откаты, приемочное тестирование вручную и тестирование производительности. Использование промежуточной среды в качестве среды отката не позволяет использовать эту среду для других целей.
Дальнейшие действия
- Создание лаборатории в лаборатории для разработки и тестирования Azure
- Интеграция Azure DevTest Labs в конвейеры Azure Pipelines