Архитектура 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 используется для промежуточной среды.

Архитектура

Схема архитектуры конвейера CI/CD с использованием Azure Pipelines, использующего Azure DevTest Labs для промежуточной среды.

Схема архитектуры конвейера Azure, развертываемого в Azure Виртуальные машины. На схеме показаны следующие шаги: 1. Промежуточная среда DevTest Labs предварительно создана для конвейера CI/CD. 2. Инженер отправляет изменения кода в репозиторий Git Azure DevOps. 3. Активируется конвейер Запроса на вытягивание Azure DevOps. В этом конвейере показаны следующие задачи: анализ, восстановление, сборка и модульные тесты. 4. Активируется конвейер НЕПРЕРЫВНОй интеграции Azure DevOps. В этом конвейере показаны следующие задачи: получение секретов, анализ, восстановление, сборка, модульные тесты, интеграционные тесты и публикация артефактов. 4. Активируется конвейер Azure DevOps CD. В этом конвейере показаны следующие задачи: скачивание артефактов, развертывание в промежуточной среде, тестирование, ручное вмешательство и выпуск. 5. Показывает конвейер CD, развертывающийся в промежуточной среде Azure DevTest Labs. 6. Показывает конвейер CD, отпустив его в рабочую среду. 7. Оператор, отслеживающий конвейер, используя Преимущества Azure Monitor, приложение Azure Insights и Рабочей области Azure Analytics.

Скачайте файл Visio этой архитектуры.

Поток данных

В этом разделе предполагается, что вы ознакомились с базовой архитектурой Azure Pipelines и посвящены только особенностям развертывания рабочей нагрузки для Azure DevTest Labs для промежуточного хранения.

  1. Конвейер - запроса на вытягиваниеТо же, что и базовые показатели

  2. Конвейер - CIТо же, что и базовые показатели

  3. Триггер - конвейера CDТо же, что и базовые показатели

  4. Cd create DevTest Labs промежуточная среда . На этом шаге создается среда DevTest Labs, которая выступает в качестве промежуточной среды. Этот шаг включает в себя следующее:

    • Создайте среду Azure DevTest Labs в промежуточной подписке.
    • Разверните шаблон ARM в среде DevTest Labs. Образы виртуальных машин можно хранить в общей коллекции образов.
    • Выполните все действия после развертывания, чтобы правильно настроить промежуточную среду.
  5. Выпуск компакт-диска для промежуточного хранения — то же, что и базовый план с одним исключением. Промежуточная среда — это среда DevTest Labs.

  6. Выпуск компакт-диска в рабочую среду - То же, что и базовые показатели

  7. Мониторинга - то же, что и базовый план

Компоненты

В этом разделе предполагается, что вы ознакомились с разделом Компоненты базовой архитектуры Azure Pipelines и посвящены только особенностям развертывания рабочей нагрузки для Azure DevTest Labs для промежуточного хранения.

  • Azure DevTest Labs — это служба для создания, использования и управления средами, используемыми для разработки, тестирования и развертывания. Служба позволяет легко развертывать предварительно настроенные среды экономичным способом.

Альтернативные варианты

  • В качестве альтернативы созданию промежуточной среды DevTest Labs в рамках процесса CD можно предварительно создать среду за пределами конвейера. Это будет иметь положительное преимущество ускорения конвейера. Эта альтернатива остановит возможность сноса среды после завершения конвейера, что приведет к увеличению затрат.

  • В ситуациях, когда конструктор образов виртуальных машин и Общая коллекция образов не работают, можно настроить фабрику образов для создания образов виртуальных машин из конвейера CI/CD и их автоматического распространения на любые Azure DevTest Labs, зарегистрированные в этих образах. Дополнительные сведения см. в статье Запуск фабрики образов из Azure DevOps.

  • Дополнительные среды, помимо промежуточного хранения, можно создать и развернуть в как часть конвейера CD. Эти среды могут поддерживать такие действия, как тестирование производительности и приемочное тестирование пользователей.

Рекомендации

В этом разделе предполагается, что вы ознакомились с разделом о рекомендациях в статье Базовая архитектура Azure Pipelines, и в ней рассматриваются только особенности развертывания рабочей нагрузки для Azure DevTest Labs для промежуточного хранения.

Оптимизация затрат

Эффективность операционных процессов

  • Рассмотрите возможность реализации сред помимо простой промежуточной и рабочей среды, чтобы реализовать такие возможности, как откаты, приемочное тестирование вручную и тестирование производительности. Использование промежуточной среды в качестве среды отката не позволяет использовать эту среду для других целей.

Дальнейшие действия