Udostępnij za pomocą


Szybki start: tworzenie zarządzanej puli DevOps przy użyciu interfejsu wiersza polecenia platformy Azure

W tym artykule pokazano, jak utworzyć zarządzaną pulę DevOps przy użyciu interfejsu wiersza polecenia platformy Azure i uruchomić w nim potok.

Wymagania wstępne

  • Wymagania wstępne dla zarządzanych zasobów DevOps

    Przed wykonaniem kroków opisanych w tym artykule musisz skonfigurować subskrypcję platformy Azure i organizację usługi Azure DevOps do użycia z zarządzanymi pulami DevOps zgodnie z opisem w artykule Wymagania wstępne . Te kroki należy wykonać tylko raz na subskrypcję platformy Azure i organizację usługi Azure DevOps.

  • Wymagania wstępne Azure CLI

    • Jeśli chcesz uruchomić polecenia interfejsu wiersza polecenia platformy Azure na komputerze lokalnym, zobacz instrukcje instalacji interfejsu wiersza polecenia platformy Azure. Jeśli masz już zainstalowany interfejs wiersza polecenia platformy Azure, uruchom polecenie az version , aby sprawdzić swoją wersję. Rozszerzenie interfejsu wiersza polecenia platformy Azure dla zarządzanych pul devOps wymaga interfejsu wiersza polecenia platformy Azure w wersji 2.57.0 lub nowszej. Jeśli CLI platformy Azure ma wersję niższą niż 2.57.0, uruchom polecenie az upgrade. Aby uzyskać więcej informacji, zobacz Jak zaktualizować interfejs wiersza polecenia platformy Azure.

    • Jeśli chcesz użyć usługi Azure Cloud Shell za pośrednictwem przeglądarki, postępuj zgodnie z instrukcjami w Rozpoczynanie pracy z efemerycznymi sesjami usługi Azure Cloud Shell, aby zarejestrować przestrzeń nazw Microsoft.CloudShell. Musisz zarejestrować przestrzeń nazw tylko raz na subskrypcję.

      W poniższych przykładach użyto bash, więc jeśli korzystasz z usługi Azure Cloud Shell, wybierz Bash podczas jej uruchamiania.

Zaloguj się do Azure CLI

Otwórz wiersz polecenia (w systemie Windows, użyj wiersza polecenia systemu Windows lub programu PowerShell) i uruchom następujące polecenia.

  1. Zaloguj się do Azure CLI. Jeśli używasz usługi Azure Cloud Shell , nie musisz jej uruchamiać az login , chyba że chcesz użyć innego konta.

    az login
    
  2. Jeśli masz więcej niż jedną subskrypcję platformy Azure, ustaw domyślną subskrypcję platformy Azure.

    az account set --subscription "My subscription name"
    

    Aby uzyskać listę subskrypcji, możesz uruchomić następujące polecenie.

    az account list -o table
    

    Jeśli masz wielu dzierżawców lub chcesz uzyskać więcej informacji na temat pracy z subskrypcją w Azure używając Azure CLI, zobacz Jak zarządzać subskrypcjami w Azure za pomocą Azure CLI.

Definiowanie zmiennych środowiskowych

  1. Uruchom następujące polecenia, aby wygenerować nazwy zasobów w tym samouczku szybkiego startu. W tym przykładzie użyto EastUS2 regionu. Zastąp EastUS2 element żądanym regionem.

    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
    

Tworzenie grupy zasobów

  1. Uruchom następujące polecenie, aby utworzyć grupę zasobów do przechowywania zasobów używanych w tym szybkim starcie.

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

Tworzenie centrum deweloperskiego i projektu centrum deweloperskiego

  1. Uruchom następujące polecenie, które instaluje rozszerzenie interfejsu wiersza polecenia devcenter platformy Azure, jeśli nie jest zainstalowane, i aktualizuje je do najnowszej wersji, jeśli jest już zainstalowana.

    az extension add --name devcenter --upgrade
    
  2. Uruchom następujące polecenia, aby utworzyć Centrum deweloperskie i projekt Centrum deweloperskiego.

    # 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)
    

    Po kilku chwilach dane wyjściowe wskazują, że centrum programistyczne zostało utworzone. Utworzone id centrum deweloperskie jest zapisywane w DEVCID i służy do tworzenia projektu centrum deweloperskiego.

    {
        "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"
    }
    

    Po kilku chwilach dane wyjściowe wskazują, że projekt centrum deweloperskiego został utworzony. Utworzony projekt centrum deweloperskiego id jest zapisywany w DEVCPID i jest używany podczas tworzenia zarządzanej puli DevOps w następnej sekcji.

    {
      "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"
    }
    

Przygotuj pliki konfiguracji zarządzanej puli DevOps

Metoda mdp pool create ma kilka parametrów, które przyjmują wartości JSON, które konfigurują różne aspekty puli.

  • agent-profile Określa, czy pula jest stanowa, czy bezstanowa, i zawiera harmonogram agenta rezerwowego. Jest to słownik z pojedynczym kluczem nazwanym Stateful lub Stateless, w zależności od żądanej konfiguracji agenta. Aby uzyskać więcej informacji na agent-profile temat właściwości, zobacz Konfigurowanie skalowania.
  • fabric-profile określa rozmiar agenta, obrazy maszyn wirtualnych, dysk systemu operacyjnego i dołączony magazyn. Aby uzyskać więcej informacji na temat właściwości fabric-profile, zobacz Konfigurowanie ustawień puli i Konfigurowanie dodatkowego magazynu.
  • organization-profile określa organizacje i projekty usługi Azure DevOps, które mogą używać puli. Aby uzyskać więcej informacji na organization-profile temat ustawień, zobacz Konfigurowanie ustawień zabezpieczeń — Konfigurowanie dostępu do organizacji.

Utwórz następujące trzy pliki i zapisz je w folderze, w którym planujesz uruchomić polecenia interfejsu wiersza polecenia platformy Azure w celu utworzenia puli.

  1. Utwórz plik o nazwie agent-profile.json z następującą zawartością.

    {
      "Stateless": {}
    }
    

    Ta konfiguracja określa bezstanowego agenta dla puli.

  2. Utwórz plik o nazwie fabric-profile.json z następującą zawartością.

    {
      "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": []
        }
      }
    }
    

    Ta konfiguracja określa pulę przy użyciu obrazu Standard_D2as_v5, obrazu ubuntu-24.04usługi Azure Pipelines oraz standardowego typudysku systemu operacyjnego bez dołączonego dysku danych.

  3. Utwórz plik o nazwie organization-profile.json z następującą zawartością. Zastąp <organization-name> ciąg nazwą organizacji usługi Azure DevOps.

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

    Ta konfiguracja określa pulę dostępną dla wszystkich projektów w organizacji usługi Azure DevOps.

Utwórz zarządzaną pulę DevOps

  1. Uruchom następujące polecenie, które instaluje rozszerzenie interfejsu wiersza polecenia mdp platformy Azure, jeśli nie jest zainstalowane, i aktualizuje je do najnowszej wersji, jeśli jest już zainstalowana.

     az extension add --name mdp --upgrade
    
  2. Utwórz zarządzaną pulę DevOps poprzez uruchomienie poniższego polecenia az mdp pool create.

    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
    

    Jeśli twoja subskrypcja nie ma pojemności do skonfigurowania puli przy użyciu żądanej jednostki SKU maszyny wirtualnej platformy Azure i maksymalnej liczby agentów, tworzenie puli kończy się niepowodzeniem z powodu błędu podobnego do poniższego komunikatu. 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. Aby rozwiązać ten problem, zobacz Przeglądanie limitów przydziałów zarządzanych pul DevOps.

Wyświetlanie utworzonej puli w witrynie Azure Portal

  1. Zaloguj się w witrynie Azure Portal.

  2. Wyszukaj pozycję Zarządzane pule DevOpsowe i wybierz ją z dostępnych opcji.

  3. Z listy wybierz nową zarządzaną pulę DevOps.

  4. Wybierz Widok JSON, aby zobaczyć format JSON zasobu zarządzanych pul DevOps.

    Zrzut ekranu przedstawiający przycisk Widoku JSON w przeglądzie puli.

Wyświetlanie puli agentów w usłudze Azure DevOps

  1. Przejdź do portalu usługi Azure DevOps i zaloguj się do organizacji usługi Azure DevOps (https://dev.azure.com/{your-organization}).

  2. Przejdź do Azure DevOps>Ustawienia organizacji.

    Zrzut ekranu przedstawiający przycisk Ustawienia organizacji.

  3. Przejdź do Potoki>Pule agentów i sprawdź, czy nowa pula jest wyświetlana. Jeśli właśnie utworzono zarządzaną pulę DevOps, wyświetlenie nowej puli na liście agentów może potrwać kilka chwil.

    Zrzut ekranu przedstawiający listę pul agentów.

Uruchom potok w swojej nowej puli

W tym kroku utworzymy prosty potok w domyślnym repozytorium projektu Azure DevOps i uruchomimy go w Twojej nowej zarządzanej puli DevOps.

  1. Przejdź do portalu usługi Azure DevOps i zaloguj się do organizacji usługi Azure DevOps (https://dev.azure.com/{your-organization}).

  2. Przejdź do projektu, w którym chcesz uruchomić pipeline, a następnie wybierz Pipelines.

    Zrzut ekranu listy projektów.

  3. Wybierz pozycję Nowy potok (lub Utwórz potok, jeśli jest to pierwszy potok).

    Zrzut ekranu przedstawiający przycisk nowego potoku.

  4. Wybierz pozycję Azure Repos Git.

    Zrzut ekranu przedstawiający typy repozytoriów.

  5. Wybierz repozytorium, które ma taką samą nazwę jak projekt. W tym przykładzie projekt nosi nazwę FabrikamFiber, dlatego wybieramy repozytorium o tej samej nazwie.

    Zrzut ekranu przedstawiający repozytorium FabrikamFiber.

  6. Wybierz potok początkowy.

    Zrzut ekranu przedstawiający listę szablonów potoku.

  7. Domyślnie szablon startowy używa agenta systemu Linux hostowanego przez firmę Microsoft. Edytuj szablon pipeline'u i zmień sekcję pool, tak aby odwoływała się do puli, którą utworzyłeś w poprzednich krokach.

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

    W tym przykładzie zarządzana pula DevOps ma nazwę fabrikam-managed-pool, więc zastąp ciąg vmImage: ubuntu-latest na name: fabrikam-managed-pool i określ nazwę swojej zarządzanej puli DevOps.

    # Replace fabrikam-managed-pools with the name
    # of your Managed DevOps Pool.
    pool:
      name: fabrikam-managed-pool
    
  8. Wybierz pozycję Zapisz i uruchom, a następnie wybierz pozycję Zapisz i uruchom ponownie, aby potwierdzić.

    Zrzut ekranu przedstawiający przycisk zapisz i uruchom.

  9. Jeśli jest to pierwsze uruchomienie potoku w tej puli, możesz być poproszony o udzielenie uprawnień przed uruchomieniem potoku. Aby uzyskać więcej informacji, zobacz Ten potok danych wymaga uprawnień do dostępu do zasobu przed kontynuowaniem tego przebiegu.

  10. Obejrzyj przebieg potoku w Azure DevOps, a możesz przełączyć się na Azure Portal i wyświetlić uruchomionego agenta w widoku Agenci.

Czyszczenie zasobów

Jeśli nie zamierzasz nadal korzystać z tej aplikacji, usuń grupę zasobów, centrum deweloperów, projekt centrum deweloperów i zarządzaną pulę DevOps. W tym przewodniku Szybki Start utworzono wszystkie zasoby w nowej grupie zasobów, dzięki czemu można je łatwo usunąć, używając polecenia az group delete, aby usunąć grupę zasobów wraz ze wszystkimi jej zasobami.

az group delete -n $RESOURCE_GROUP_NAME

Zobacz też