Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022
Een Azure Pipelines-omgeving is een groep resources die u kunt richten op implementaties vanuit een pijplijn. Typische omgevingen zijn ontwikkeling, test of productie.
Als u fysieke of VIRTUELE-machinebronnen (VM)-resources wilt toevoegen aan omgevingen, installeert u agents op de machines. De implementatiegeschiedenis van de omgeving biedt vervolgens traceerbaarheid vanaf elke machine. In dit artikel wordt beschreven hoe u omgevingen definieert en gebruikt voor het beheren van implementaties in VM- of serverbronnen.
Notitie
Azure DevOps-omgevingen zijn alleen beschikbaar voor YAML-pijplijnen. Voor klassieke pijplijnen bieden implementatiegroepen vergelijkbare functionaliteit.
Vereisten
Als u de procedures in dit artikel wilt uitvoeren, hebt u de volgende vereisten nodig:
- Toegang tot een bronopslagplaats waar u pijplijnen kunt maken. Zie Ondersteunde bronopslagplaatsen voor meer informatie.
- Beheerdersrol voor de implementatiegroep, de set doelservers die beschikbaar zijn voor uw Azure DevOps-organisatie. Zie Beveiliging van implementatiegroepen instellen in Azure Pipelines voor meer informatie.
- Machtigingen van projectbeheerder of buildbeheerder in het Azure DevOps-project dat de omgeving bevat. Zie Resourcebeveiliging voor meer informatie.
- Toegang en machtigingen voor het downloaden en uitvoeren van uitvoerbare scripts op VM's die u wilt verbinden met de omgeving.
Een omgeving maken en een VIRTUELE machine toevoegen
Gebruik de volgende procedure om een VIRTUELE machine of fysieke machine toe te voegen aan een omgeving.
De omgeving maken met een VM-resource
Ga in uw Azure DevOps-project naar > en selecteer vervolgens Omgeving maken of Nieuwe omgeving.
Voer in het scherm Nieuwe omgeving een naam en een optionele beschrijving in.
Selecteer onder Resourcevirtuele machines en selecteer vervolgens Volgende.
Het registratiescript kopiëren
De agentscripts voor VM-resources zijn net als de scripts voor zelf-hostende agents en gebruiken dezelfde opdrachten. De scripts bevatten een Azure DevOps Personal Access Token (PAT) voor de aangemelde gebruiker, die drie uur na het genereren van het script verloopt. U hebt de PAT alleen nodig om de agent te installeren.
Notitie
Als u een agent voor een implementatiegroep wilt configureren of als er een fout optreedt bij het registreren van de VM-omgevingsresource, stelt u uw PAT Access-bereik in op alle toegankelijke organisaties inpersoonlijke toegangstokens voor >.
Kies Linux onder Besturingssysteem in het scherm Resource van de virtuele machine.
Selecteer het pictogram om het Linux-registratiescript te kopiëren.
Het script is hetzelfde voor alle Linux-VM's die aan de omgeving zijn toegevoegd. Zie Zelf-hostende Linux-agents voor meer informatie over het installeren van het agentscript.
Het gekopieerde registratiescript uitvoeren op de VIRTUELE machine
Selecteer Sluitaf. De nieuwe omgeving wordt gemaakt. Als u het script opnieuw wilt kopiëren, bijvoorbeeld als uw PAT verloopt, selecteert u Resource opnieuw toevoegen op de pagina van de omgeving.
Voer het gekopieerde script uit op elke doel-VM die u wilt registreren bij de omgeving.
Notitie
Als op de VIRTUELE machine al een andere agent wordt uitgevoerd, geeft u een unieke naam op voor de nieuwe
agentdie u bij de omgeving wilt registreren.Zodra de VM is geregistreerd, controleert u of deze wordt weergegeven op het tabblad Resources van de Azure Pipelines-omgevingspagina.
Omgevingen gebruiken in YAML-pijplijnen
U kunt VM-resources in uw YAML-implementatietaken richten door te verwijzen naar hun omgeving. Zie Implementatietaken en de definitie jobs.deployment in de schemareferentie voor YAML-pijplijnen voor meer informatie over YAML-implementatietaken.
De volgende pijplijnimplementatietaak wordt alleen uitgevoerd op VM's in de VMEnv omgeving.
trigger:
- main
pool:
vmImage: ubuntu-latest
jobs:
- deployment: VMDeploy
displayName: Deploy to VMenv
environment: VMenv
strategy:
runOnce:
deploy:
steps:
- script: echo "Hello world"
U kunt zich richten op een specifieke VIRTUELE machine in de omgeving door de naam van de VM-resource toe te voegen aan de naam van de omgeving. In het volgende voorbeeld wordt alleen geïmplementeerd op de VM-resource met de naam RESOURCE-PC in de VMenv omgeving.
trigger:
- main
pool:
vmImage: ubuntu-latest
jobs:
- deployment: VMDeploy
displayName: Deploy to RESOURCE-PC in VMenv
environment: VMenv.RESOURCE-PC # only deploy to the VM resource named RESOURCE-PC
strategy:
runOnce:
deploy:
steps:
- script: echo "Hello world"
U kunt ook de volledige syntaxis van het trefwoord taakimplementatieomgeving gebruiken en implementeren op specifieke omgevings-VM's door deze in resourceNamete vermelden.
trigger:
- main
pool:
vmImage: ubuntu-latest
jobs:
- deployment: VMDeploy
displayName: Deploy to RESOURCE-PC in VMenv with full syntax
environment:
name: VMenv
resourceType: virtualMachine
resourceName: RESOURCE-PC # only deploy to the VM resource named RESOURCE-PC
strategy:
runOnce:
deploy:
steps:
- script: echo "Hello world"
Notitie
- De
resourceTypewaarden zoalsvirtualMachinezijn hoofdlettergevoelig. Onjuiste behuizing resulteert in geen overeenkomende resources gevonden. - Als u een fase opnieuw probeert uit te voeren, wordt de implementatie opnieuw uitgevoerd op alle opgegeven VM's, niet alleen op mislukte doelen.
Implementatiestrategie
In een implementatietaak past u een implementatie strategy toe om te definiëren hoe uw toepassing moet worden geïmplementeerd. VM's ondersteunen zowel de runOnce als de rolling strategieën. Zie Implementatiestrategieën voor meer informatie over implementatiestrategieën en levenscyclus-hooks.
Permissions
De eerste keer dat u de pijplijn uitvoert die gebruikmaakt van de omgeving, moet u machtigingen verlenen voor alle uitvoeringen van de pijplijn voor toegang tot de agentgroep en de omgeving. Selecteer het wachtsymbool naast de taak in het scherm Samenvatting van pijplijnuitvoering en selecteer vervolgens Toestaan om de benodigde machtigingen te verlenen.
Tags toevoegen en beheren
Tags zijn een manier om een specifieke set omgevings-VM's te richten voor implementatie. Wanneer u in het tags trefwoord opgeeftenvironment, wordt de pijplijn alleen geïmplementeerd op omgevings-VM's waarop de tags zijn toegepast.
Er is geen limiet voor het aantal tags dat u op VM's kunt toepassen. Tagnamen mogen maximaal 256 tekens bevatten.
U kunt tags toepassen of verwijderen door het pictogram Meer acties naast de VIRTUELE machine te selecteren op het tabblad Resources van de omgeving.
U kunt tags ook interactief toepassen wanneer u het agentscript op de VIRTUELE machine registreert.
Als u meerdere tags opgeeft, wordt de pijplijn alleen geïmplementeerd op VM's die alle tags bevatten. Het volgende voorbeeld is alleen gericht op VM's die zowel de windows- als de prod-tags hebben. De pijplijn wordt niet geïmplementeerd op VM's met slechts één of geen van de tags.
trigger:
- main
pool:
vmImage: ubuntu-latest
jobs:
- deployment: VMDeploy
displayName: Deploy to VM
environment:
name: VMenv
resourceType: virtualMachine
tags: windows,prod # only deploy to VMs with both windows and prod tags
strategy:
runOnce:
deploy:
steps:
- script: echo "Hello world"
Implementatiegeschiedenis weergeven
Selecteer het tabblad Implementaties van de omgevingspagina voor volledige tracering van doorvoeringen en werkitems en een implementatiegeschiedenis tussen pijplijnen per omgeving en resource.
Een virtuele machine verwijderen uit een omgeving
Als u een VIRTUELE machine uit een Linux-omgeving wilt verwijderen, voert u de volgende opdracht uit op de computer.
./config.sh remove