Delen via


Quickstart: Een beheerde DevOps-pool maken met behulp van Azure CLI

In dit artikel leest u hoe u een beheerde DevOps-pool maakt met behulp van Azure CLI en hoe u er een pijplijn in uitvoert.

Vereisten

  • Vereisten voor beheerde DevOps-pools

    Voordat u de stappen in dit artikel uitvoert, moet u uw Azure-abonnement en Azure DevOps-organisatie hebben geconfigureerd voor gebruik met beheerde DevOps-pools, zoals beschreven in het artikel Vereisten . Deze stappen moeten slechts eenmaal per Azure-abonnement en Azure DevOps-organisatie worden voltooid.

  • Vereisten voor Azure CLI

    • Als u de Azure CLI-opdrachten op uw lokale computer wilt uitvoeren, raadpleegt u de installatie-instructies voor Azure CLI. Als u Azure CLI al hebt geïnstalleerd, voert u deze uit az version om uw versie te controleren. Voor de Azure CLI-extensie voor beheerde DevOps-pools is Azure CLI versie 2.57.0 of hoger vereist. Als uw Azure CLI lager is dan 2.57.0, voert u de opdracht uit az upgrade. Zie De Azure CLI bijwerken voor meer informatie.

    • Als u Azure Cloud Shell wilt gebruiken via uw browser, volgt u de instructies in Aan de slag met Azure Cloud Shell tijdelijke sessies om de Microsoft.CloudShell-naamruimte te registreren. U hoeft de naamruimte slechts eenmaal per abonnement te registreren.

      In de volgende voorbeelden wordt bash gebruikt, dus als u Azure Cloud Shell gebruikt, kiest u Bash bij het starten van Azure Cloud Shell.

Aanmelden bij de Azure CLI

Open een opdrachtprompt (in Windows, gebruik de Windows-opdrachtprompt of PowerShell) en voer de volgende opdrachten uit.

  1. Meld u aan bij de Azure CLI. Als u Azure Cloud Shell gebruikt, hoeft u az login niet uit te voeren, tenzij u een ander account wilt gebruiken.

    az login
    
  2. Als u meer dan één Azure-abonnement hebt, stelt u uw standaard Azure-abonnement in.

    az account set --subscription "My subscription name"
    

    Als u een lijst met uw abonnementen wilt ophalen, kunt u de volgende opdracht uitvoeren.

    az account list -o table
    

    Als u meerdere tenants hebt of meer informatie wilt over het werken met een Azure-abonnement met behulp van Azure CLI, raadpleegt u Hoe u Azure-abonnementen beheert met de Azure CLI.

Omgevingsvariabelen definiëren

  1. Voer de volgende opdrachten uit om de namen voor de resources in deze quickstart te genereren. In dit voorbeeld wordt de EastUS2 regio gebruikt. Vervang door EastUS2 de gewenste regio.

    export REGION=EastUS2
    export RANDOM_ID="$(openssl rand -hex 3)"
    export RESOURCE_GROUP_NAME="myManagedDevOpsPoolGroup$RANDOM_ID"
    export POOL_NAME="mdpPool$RANDOM_ID"
    export DEV_CENTER_NAME="mdpDevCenter$RANDOM_ID"
    export DEV_CENTER_PROJECT_NAME="mdpDevCenterProject$RANDOM_ID"
    
    # Echo the generated resource names
    echo $REGION
    echo $RESOURCE_GROUP_NAME
    echo $POOL_NAME
    echo $DEV_CENTER_NAME
    echo $DEV_CENTER_PROJECT_NAME
    

Een brongroep maken

  1. Voer de volgende opdracht uit om de resourcegroep te maken die de resources bevat die in deze quickstart worden gebruikt.

    az group create --name $RESOURCE_GROUP_NAME --location $REGION
    

Een ontwikkelaarscentrum en project voor het ontwikkelaarscentrum maken

  1. Voer de volgende opdracht uit, waarmee de Azure CLI-extensie devcenter wordt geïnstalleerd als deze niet is geïnstalleerd en wordt deze bijgewerkt naar de nieuwste versie als deze al is geïnstalleerd.

    az extension add --name devcenter --upgrade
    
  2. Voer de volgende opdrachten uit om een ontwikkelaarscentrum en een ontwikkelaarscentrumproject te maken.

    # Create a dev center
    az devcenter admin devcenter create -n $DEV_CENTER_NAME \
        -g $RESOURCE_GROUP_NAME \
        -l $REGION
    
    # Save the id of the newly created dev center
    DEVCID=$( \
        az devcenter admin devcenter show -n $DEV_CENTER_NAME \
        -g $RESOURCE_GROUP_NAME \
        --query id -o tsv)
    
    # Create a dev center project
    az devcenter admin project create -n $DEV_CENTER_PROJECT_NAME \
        --description "My dev center project." \
        -g $RESOURCE_GROUP_NAME \
        -l $REGION \
        --dev-center-id $DEVCID
    
    # Save the dev center project for use when creating
    # the Managed DevOps Pool
    DEVCPID=$( \
        az devcenter admin project show -n $DEV_CENTER_PROJECT_NAME \
        -g $RESOURCE_GROUP_NAME \
        --query id -o tsv)
    

    Na enkele ogenblikken geeft de uitvoer aan dat het ontwikkelaarscentrum is aangemaakt. Het ontwikkelaarscentrum dat is aangemaakt wordt opgeslagen in id en wordt gebruikt om het ontwikkelaarscentrumproject te creëren.

    {
        "devCenterUri": "https://...",
        "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/resourceGroupName/providers/Microsoft.DevCenter/devcenters/devCenterName",
        "location": "eastus",
        "name": "devCenterName",
        "provisioningState": "Succeeded",
        "resourceGroup": "resourceGroupName",
        "systemData": { ... },
        "type": "microsoft.devcenter/devcenters"
    }
    

    Na enkele ogenblikken geeft de uitvoer aan dat het project in het ontwikkelaarscentrum is gemaakt. Het in id aangemaakte DevCenter-project wordt opgeslagen in DEVCPID en wordt gebruikt bij het maken van de beheerde DevOps-pool in de volgende sectie.

    {
      "description": "My dev center project.",
      "devCenterId": "...",
      "devCenterUri": "https://...",
      "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/resourceGroupName/providers/Microsoft.DevCenter/projects/devCenterProjectName",
      "location": "eastus",
      "name": "devCenterProjectName",
      "provisioningState": "Succeeded",
      "resourceGroup": "resourceGroupName",
      "systemData": { ... },
      "type": "microsoft.devcenter/projects"
    }
    

De configuratiebestanden van de beheerde DevOps-pool voorbereiden

De mdp pool create methode heeft verschillende parameters die JSON-waarden gebruiken waarmee verschillende aspecten van de pool worden geconfigureerd.

  • agent-profile geeft aan of de pool stateful of stateless is en bevat het stand-by-schema voor agenten. Het is een woordenboek met één sleutel genaamd of Stateful of Stateless, afhankelijk van de gewenste agentconfiguratie. Zie voor meer informatie over agent-profile-eigenschappen Schalen configureren.
  • fabric-profile hiermee geeft u de agentgrootte, VM-installatiekopieën, besturingssysteemschijf en gekoppelde opslag op. Zie fabric-profile en Aanvullende opslag configureren voor meer informatie over de eigenschappen.
  • organization-profile hiermee geeft u de Azure DevOps-organisaties en -projecten op die de pool kunnen gebruiken. Voor meer informatie over organization-profile instellingen, zie Configuratie van beveiligingsinstellingen - Toegang tot organisatie configureren.

Maak de volgende drie bestanden en sla deze op in de map waarin u de Azure CLI-opdrachten wilt uitvoeren om de pool te maken.

  1. Maak een bestand met de naam agent-profile.json met de volgende inhoud.

    {
      "Stateless": {}
    }
    

    Met deze configuratie wordt een stateless agent voor uw pool opgegeven.

  2. Maak een bestand met de naam fabric-profile.json met de volgende inhoud.

    {
      "vmss": {
        "sku": {
          "name": "Standard_D2as_v5"
        },
        "images": [
          {
            "aliases": [
              "ubuntu-24.04"
            ],
            "buffer": "*",
            "wellKnownImageName": "ubuntu-24.04/latest"
          }
        ],
        "osProfile": {
          "secretsManagementSettings": {
            "observedCertificates": [],
            "keyExportable": false
          },
          "logonType": "Service"
        },
        "storageProfile": {
          "osDiskStorageAccountType": "Standard",
          "dataDisks": []
        }
      }
    }
    

    Met deze configuratie specificeert u een pool met de afbeelding Standard_D2as_v5, de ubuntu-24.04-installatiekopieAzure Pipelines, en een StandardOS Disk-type zonder gekoppelde gegevensschijf.

  3. Maak een bestand met de naam organization-profile.json met de volgende inhoud. Vervang <organization-name> door de naam voor uw Azure DevOps-organisatie.

    {
      "AzureDevOps": {
        "organizations": [
          {
            "url": "https://dev.azure.com/<organization-name>",
            "projects": [],
            "parallelism": 1
          }
        ],
        "permissionProfile": {
          "kind": "CreatorOnly"
        }
      }
    }
    

    Met deze configuratie geeft u een pool op die beschikbaar is voor alle projecten in uw Azure DevOps-organisatie.

De beheerde DevOps-pool maken

  1. Voer de volgende opdracht uit, waarmee de Azure CLI-extensie mdp wordt geïnstalleerd als deze niet is geïnstalleerd en wordt deze bijgewerkt naar de nieuwste versie als deze al is geïnstalleerd.

     az extension add --name mdp --upgrade
    
  2. Maak de beheerde DevOps-pool door de volgende opdracht az mdp pool create uit te voeren.

    az mdp pool create -n $POOL_NAME \
       -g $RESOURCE_GROUP_NAME \
       -l $REGION \
       --devcenter-project-id $DEVCPID \
       --maximum-concurrency 1 \
       --agent-profile agent-profile.json \
       --fabric-profile fabric-profile.json \
       --organization-profile organization-profile.json
    

    Als uw abonnement niet over de capaciteit beschikt om uw pool te configureren met de gewenste Azure VM-SKU en het maximumaantal agents, mislukt het maken van een pool met een fout die vergelijkbaar is met het volgende bericht. Cores needed to complete this request is 2, which exceeds the current limit of 0 for SKU family standardDDSv4Family in region eastus. Please choose a different region if possible, or request additional quota at https://portal.azure.com/#view/Microsoft_Azure_Support/NewSupportRequestV3Blade/issueType/quota/subscriptionId/subscription_id_placeholder/topicId/3eadc5d3-b59a-3658-d8c6-9c729ba35b97. Zie Quota voor beheerde DevOps-pools controleren om het probleem op te lossen.

Uw gemaakte pool weergeven in Azure Portal

  1. Meld u aan bij het Azure-portaal.

  2. Zoek naar beheerde DevOps-pools en selecteer deze in de beschikbare opties.

  3. Kies uw nieuwe beheerde DevOps-pool in de lijst.

  4. Kies JSON-weergave om het JSON-formaat van uw beheerde DevOps Pools-resource te bekijken.

    Schermopname van de knop JSON-weergave in het groepsoverzicht.

De agentpool weergeven in Azure DevOps

  1. Ga naar de Azure DevOps-portal en meld u aan bij uw Azure DevOps-organisatie (https://dev.azure.com/{your-organization}).

  2. Ga naar Azure DevOps>organisatie-instellingen.

    Schermopname van de knop Organisatie-instellingen.

  3. Ga naar Pipelines>Agentpools en controleer of uw nieuwe pool wordt vermeld. Als u zojuist de beheerde DevOps-pool hebt gemaakt, kan het even duren voordat de nieuwe pool wordt weergegeven in de lijst met agents.

    Schermopname van de lijst met agentpools.

Een pijplijn uitvoeren in uw nieuwe pool

In deze stap maken we een eenvoudige pijplijn in de standaardopslagplaats van een Azure DevOps-project en voeren we dit uit in uw nieuwe beheerde DevOps-pool.

  1. Ga naar de Azure DevOps-portal en meld u aan bij uw Azure DevOps-organisatie (https://dev.azure.com/{your-organization}).

  2. Ga naar het project waar u de pijplijn wilt uitvoeren en kies Pijplijnen.

    Schermopname van de lijst Projecten.

  3. Kies Nieuwe pijplijn (of Pijplijn maken als dit uw eerste pijplijn is).

    Schermopname van de knop Nieuwe pijplijn.

  4. Kies Azure Repos Git.

    Schermopname van opslagplaatstypen.

  5. Kies de opslagplaats met dezelfde naam als uw project. In dit voorbeeld heet het project FabrikamFiber, dus kiezen we de opslagplaats met dezelfde naam.

    Schermopname van fabrikamFiber-opslagplaats.

  6. Kies Starterpijplijn.

    Schermopname van de lijst met pijplijnsjablonen.

  7. De starterssjabloon maakt standaard gebruik van een door Microsoft gehoste Linux-agent. Bewerk de pijplijnsjabloon en wijzig de pool sectie, zodat deze verwijst naar de pool die u in de vorige stappen hebt gemaakt.

    # Change these two lines as shown in the following example.
     pool:
      vmImage: ubuntu-latest
    

    In dit voorbeeld hebben de beheerde DevOps-pools de naam fabrikam-managed-pool, dus vervang deze door vmImage: ubuntu-latestname: fabrikam-managed-poolen geef de naam van uw beheerde DevOps-pool op.

    # Replace fabrikam-managed-pools with the name
    # of your Managed DevOps Pool.
    pool:
      name: fabrikam-managed-pool
    
  8. Kies Opslaan en uitvoeren en kies Opslaan en voer een tweede keer uit om te bevestigen.

    Schermopname van de knop Opslaan en uitvoeren.

  9. Als dit de eerste pijplijnuitvoering in deze pool is, wordt u mogelijk gevraagd om machtigingen te verlenen voordat de pijplijn wordt uitgevoerd. Zie voor meer informatie Deze pijplijn heeft machtigingen nodig om toegang te krijgen tot een resource voordat deze uitvoering kan doorgaan.

  10. Bekijk de pijplijnuitvoering in Azure DevOps en u kunt overschakelen naar Azure Portal en de actieve agent bekijken in de weergave Agents .

Hulpmiddelen opschonen

Als u deze toepassing niet wilt blijven gebruiken, verwijdert u de resourcegroep, het ontwikkelaarscentrum, het ontwikkelaarscentrumproject en de beheerde DevOps-pool. In deze quickstart zijn alle resources in een nieuwe resourcegroep gemaakt, zodat u ze allemaal kunt verwijderen met de opdracht az group delete om de resourcegroep en alle bijbehorende resources te verwijderen.

az group delete -n $RESOURCE_GROUP_NAME

Zie ook