Azure Pipelines-architectuur met DevTest Labs

Belangrijk

CI/CD met DevTest Labs is een variant van Een CI/CD-pijplijn ontwerpen met behulp van Azure DevOps. Dit artikel is gericht op de specifieke details van het implementeren in een Faseringsomgeving van DevTest Labs.

Met DevTest Labs kunt u Windows- en Linux-omgevingen inrichten met behulp van herbruikbare sjablonen en artefacten. Deze omgevingen kunnen handig zijn voor ontwikkelaars, maar kunnen ook worden gebruikt in CI/CD-pijplijnen voor het inrichten van faseringsomgevingen. Zie Azure DevTest Labs scenario's om te zien of DevTest-labs geschikt zijn voor uw scenario.

In dit artikel wordt een DevOps-werkstroom op hoog niveau beschreven voor het implementeren van toepassingswijzigingen met behulp van procedures voor continue integratie (CI) en continue implementatie (CD) met behulp van Azure Pipelines. Een DevTest Labs-omgeving wordt gebruikt voor de faseringsomgeving.

Architectuur

Architectuurdiagram van een CI/CD-pijplijn met Behulp van Azure Pipelines die gebruikmaakt van Azure DevTest Labs voor een faseringsomgeving.

Een Visio-bestand van deze architectuur downloaden.

Gegevensstroom

In deze sectie wordt ervan uitgegaan dat u de basislijnarchitectuur van Azure Pipelines hebt gelezen en dat u zich alleen richt op de details van het implementeren van een workload in Azure DevTest Labs voor fasering.

  1. PR-pijplijn - Hetzelfde als de basislijn

  2. CI-pijplijn - Hetzelfde als de basislijn

  3. CD-pijplijntrigger - Hetzelfde als de basislijn

  4. Faseringsomgeving voor DevTest Labs maken : met deze stap maakt u de DevTest Labs-omgeving die fungeert als de faseringsomgeving. De stap omvat:

    • Maak Azure DevTest Labs omgeving in een faseringsabonnement.
    • Implementeer een ARM-sjabloon in de DevTest Labs-omgeving. Installatiekopieën van virtuele machines kunnen worden opgeslagen in een galerie met gedeelde installatiekopieën.
    • Voer de stappen na de implementatie uit om de faseringsomgeving correct te configureren.
  5. Cd-release naar fasering : hetzelfde als de basislijn met één uitzondering. De faseringsomgeving is een DevTest Labs-omgeving.

  6. Cd-release naar productie - Hetzelfde als de basislijn

  7. Monitoring - hetzelfde als de basislijn

Onderdelen

In deze sectie wordt ervan uitgegaan dat u de sectie Azure Pipelines-basisarchitectuuronderdelen hebt gelezen en is alleen gericht op de details van het implementeren van een workload in Azure DevTest Labs voor fasering.

  • Azure DevTest Labs is een service voor het maken, gebruiken en beheren van omgevingen die worden gebruikt voor ontwikkelings-, test- en implementatiedoeleinden. Met de service kunt u eenvoudig vooraf geconfigureerde omgevingen op een kosteneffectieve manier implementeren.

Alternatieven

  • Als alternatief voor het maken van de Faseringsomgeving devTest Labs als onderdeel van het CD-proces, kunt u de omgeving vooraf buiten de pijplijn maken. Dit heeft het positieve voordeel dat de pijplijn wordt versneld. Dit alternatief stopt de mogelijkheid om de omgeving te afbreken nadat de pijplijn is voltooid, waardoor de kosten toenemen.

  • In situaties waarin VM Image Builder en een Shared Image Gallery niet werken, kunt u een installatiekopieënfactory instellen om VM-installatiekopieën te bouwen vanuit de CI/CD-pijplijn en deze automatisch te distribueren naar alle Azure DevTest Labs geregistreerd bij deze installatiekopieën. Zie Een installatiekopieënfactory uitvoeren vanuit Azure DevOps voor meer informatie.

  • Aanvullende omgevingen, naast fasering, kunnen worden gemaakt en geïmplementeerd als onderdeel van de CD-pijplijn. Deze omgevingen kunnen activiteiten ondersteunen zoals prestatietests en het testen van gebruikersacceptatie.

Overwegingen

In deze sectie wordt ervan uitgegaan dat u de sectie overwegingen in de basislijnarchitectuur van Azure Pipelines hebt gelezen en zich alleen richt op de details van het implementeren van een workload voor Azure DevTest Labs voor fasering.

Kostenoptimalisatie

Operationele topprestaties

  • Overweeg omgevingen te implementeren die verder gaan dan alleen fasering en productie om zaken als terugdraaiacties, handmatige acceptatietests en prestatietests mogelijk te maken. Het gebruik van fasering als de terugdraaiomgeving voorkomt dat u die omgeving voor andere doeleinden kunt gebruiken.

Volgende stappen