Partilhar via


Arquitetura dos Pipelines do Azure com o DevTest Labs

Importante

A CI/CD com o DevTest Labs é uma variante de Estruturar um pipeline CI/CD com o Azure DevOps. Este artigo centra-se nas especificidades da implementação num ambiente de teste do DevTest Labs.

O DevTest Labs permite-lhe aprovisionar ambientes Windows e Linux através de modelos e artefactos reutilizáveis. Estes ambientes podem ser úteis para programadores, mas também podem ser utilizados em pipelines de CI/CD para aprovisionar ambientes de teste. Veja Azure DevTest Labs cenários para ver se o DevTest Labs é uma boa opção para o seu cenário.

Este artigo descreve um fluxo de trabalho de alto nível do DevOps para implementar alterações de aplicações com práticas de integração contínua (CI) e implementação contínua (CD) com os Pipelines do Azure. É utilizado um ambiente de DevTest Labs para o ambiente de teste.

Arquitetura

Diagrama de arquitetura de um pipeline de CI/CD com o Azure Pipelines que utiliza Azure DevTest Labs para um ambiente de teste.

Transfira um ficheiro do Visio desta arquitetura.

Fluxo de dados

Esta secção pressupõe que leu a arquitetura de linha de base dos Pipelines do Azure e foca-se apenas nas especificidades da implementação de uma carga de trabalho para Azure DevTest Labs para teste.

  1. Pipeline - de PRO mesmo que a linha de base

  2. Pipeline - de CIO mesmo que a linha de base

  3. Acionador - de pipeline de CDO mesmo que a linha de base

  4. CD create DevTest Labs staging environment -This step creates the DevTest Labs environment which act as the staging environment. O passo inclui:

    • Criar Azure DevTest Labs ambiente numa subscrição de teste.
    • Implemente um modelo do ARM no ambiente do DevTest Labs. As imagens da Máquina Virtual podem ser armazenadas numa galeria de imagens partilhadas.
    • Execute quaisquer passos pós-implementação para configurar corretamente o ambiente de teste.
  5. Versão de CD para teste – igual à linha de base com uma exceção. O ambiente de teste é um ambiente de DevTest Labs.

  6. Lançamento de CD para produção - O mesmo que a linha de base

  7. Monitorização - igual à linha de base

Componentes

Esta secção pressupõe que leu a secção componentes de arquitetura de linha de base do Azure Pipelines e foca-se apenas nas especificidades da implementação de uma carga de trabalho para Azure DevTest Labs para teste.

  • Azure DevTest Labs é um serviço para criar, utilizar e gerir ambientes utilizados para fins de desenvolvimento, teste e implementação. O serviço permite-lhe implementar facilmente ambientes pré-configurados de forma económica.

Alternativas

  • Uma alternativa à criação do ambiente de teste de DevTest Labs como parte do processo de CD, pode pré-criar o ambiente fora do pipeline. Isto terá o benefício positivo de acelerar o pipeline. Esta alternativa irá parar a capacidade de remover o ambiente após a conclusão do pipeline, aumentando o custo.

  • Em situações em que o Construtor de Imagens da VM e um Shared Image Gallery não funcionam, pode configurar uma fábrica de imagens para criar imagens de VM a partir do pipeline ci/CD e distribuí-las automaticamente para qualquer Azure DevTest Labs registada nessas imagens. Para obter mais informações, veja Executar uma fábrica de imagens a partir do Azure DevOps.

  • Ambientes adicionais, além do teste, podem ser criados e implementados como parte do pipeline de CD. Estes ambientes podem suportar atividades como testes de desempenho e testes de aceitação do utilizador.

Considerações

Esta secção pressupõe que leu a secção de considerações na arquitetura de linha de base dos Pipelines do Azure e foca-se apenas nas especificidades da implementação de uma carga de trabalho para Azure DevTest Labs para teste.

Otimização de Custos

Excelência Operacional

  • Considere implementar ambientes para além do teste e da produção para permitir coisas como reversões, testes de aceitação manual e testes de desempenho. O ato de utilizar o teste como o ambiente de reversão impede-o de utilizar esse ambiente para outros fins.

Passos seguintes