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

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

Installeren of uitvoeren in Azure Cloud Shell

De eenvoudigste manier om te leren hoe u de Azure CLI gebruikt, is door een Bash-omgeving in Azure Cloud Shell uit te voeren via uw browser. Voor meer informatie over Cloud Shell raadpleegt u Snelstart voor Bash in Azure Cloud Shell.

Wanneer u klaar bent om de Azure CLI te installeren, raadpleegt u de installatie-instructies voor Windows-, Linux-, macOS- en Docker-container.

Controleer uw versie door uit te voeren az --version. Azure Cloud Shell heeft altijd de nieuwste versie van de Azure CLI die vooraf is geïnstalleerd.

az version

Aanmelden bij de Azure CLI

Open een opdrachtprompt (in Windows, gebruik de Windows-opdrachtprompt of PowerShell) en voer de volgende opdrachten uit. Als u Azure Cloud Shell gebruikt, hoeft u niet te worden uitgevoerd az login , tenzij u een ander account wilt gebruiken.

  1. Meld u aan bij Azure CLI.

    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 RANDOM_ID="$(openssl rand -hex 3)"
    export RESOURCE_GROUP_NAME="myManagedDevOpsPoolGroup$RANDOM_ID"
    export REGION=EastUS2
    export POOL_NAME="mdpPool$RANDOM_ID"
    export DEV_CENTER_NAME="mdpDevCenter$RANDOM_ID"
    export DEV_CENTER_PROJECT_NAME="mdpDevCenterProject$RANDOM_ID"
    
  2. Voer de volgende opdrachten uit om de resourcenamen te controleren.

    echo $RESOURCE_GROUP_NAME
    echo $POOL_NAME
    echo $DEV_CENTER_NAME
    echo $DEV_CENTER_PROJECT_NAME
    echo $REGION
    

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 ontwikkelaarscentrumproject maken

  1. Installeer de Azure CLI-extensie devcenter en zorg ervoor dat deze wordt 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 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 ogenblikpen geeft de uitvoer aan dat het Ontwikkelaarscentrum is gemaakt. Het id gemaakte ontwikkelaarscentrum wordt opgeslagen in DEVCID en wordt gebruikt om het ontwikkelaarscentrumproject te maken.

    {
        "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 ogenblikpen geeft de uitvoer aan dat het ontwikkelaarscentrumproject is gemaakt. Het id gemaakte ontwikkelaarscentrumproject 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 het stand-byagentschema bevat. Het is een woordenlijst met één sleutel met de naam of StatefulStateless, afhankelijk van de gewenste agentconfiguratie. Zie agent-profile configureren voor meer informatie over eigenschappen.
  • fabric-profile hiermee geeft u de agentgrootte, VM-installatiekopieën, besturingssysteemschijf en gekoppelde opslag op. Zie fabric-profile configureren 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. Zie organization-profile configureren voor meer informatie over instellingen.

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 bestandsnaam 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-22.04"
            ],
            "buffer": "*",
            "wellKnownImageName": "ubuntu-22.04/latest"
          }
        ],
        "osProfile": {
          "secretsManagementSettings": {
            "observedCertificates": [],
            "keyExportable": false
          },
          "logonType": "Service"
        },
        "storageProfile": {
          "osDiskStorageAccountType": "Standard",
          "dataDisks": []
        }
      }
    }
    

    Met deze configuratie geeft u een pool op met behulp van de Standard_D2as_v5-installatiekopie, de ubuntu-22.04Azure Pipelines-installatiekopie en een standaardbesturingssysteemschijftype 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. Installeer de mdp extensie en zorg ervoor dat deze wordt 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 de JSON-weergave om de JSON-indeling van de resource beheerde DevOps-pools weer te geven.

    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 de azure DevOps-organisatie-instellingen>.

    Schermopname van de knop Organisatie-instellingen.

  3. Ga naar pijplijnagentpools> 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 Git voor Azure-opslagplaatsen.

    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 Starter-pijplijn.

    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-poolsen 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.

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

Resources 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