Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo mostra como criar um Pool de DevOps Gerenciado usando a CLI do Azure e executar um pipeline nele.
Pré-requisitos
Pré-requisitos de Pools de DevOps Gerenciados
Antes de concluir as etapas neste artigo, você deve ter configurado sua assinatura do Azure e a organização do Azure DevOps para uso com Pools de DevOps Gerenciados, conforme descrito no artigo Pré-requisitos . Essas etapas precisam ser concluídas apenas uma vez por assinatura do Azure e organização do Azure DevOps.
Pré-requisitos da CLI do Azure
Se você quiser executar os comandos da CLI do Azure em seu computador local, consulte as instruções de instalação da CLI do Azure. Se você já tiver a CLI do Azure instalada, execute
az versionpara verificar sua versão. A extensão da CLI do Azure para Pools de DevOps Gerenciados requer a CLI do Azure versão 2.57.0 ou superior. Se a CLI do Azure estiver inferior a 2.57.0, executeaz upgrade. Para obter mais informações, confira Como atualizar a CLI do Azure.Se você quiser usar o Azure Cloud Shell por meio do navegador, siga as instruções em Introdução às sessões efêmeras do Azure Cloud Shell para registrar o namespace Microsoft.CloudShell . Você só precisa registrar o namespace uma vez por assinatura.
Os exemplos a seguir usam bash, portanto, se você estiver usando o Azure Cloud Shell, escolha Bash ao iniciar o Azure Cloud Shell.
Fazer logon na CLI do Azure
Abra um prompt de comando (no Windows, use o Prompt de Comando do Windows ou o PowerShell) e execute os comandos a seguir.
Entre na CLI do Azure. Se você estiver usando o Azure Cloud Shell , não precisará executar
az login, a menos que queira usar uma conta diferente.az loginSe você tiver mais de uma assinatura do Azure, defina sua assinatura padrão do Azure.
az account set --subscription "My subscription name"Para obter uma lista de suas assinaturas, você pode executar o comando a seguir.
az account list -o tableSe você tiver vários locatários ou quiser ver mais informações sobre como trabalhar com a assinatura do Azure usando a CLI do Azure, consulte Como gerenciar assinaturas do Azure com a CLI do Azure.
Definir variáveis de ambiente
Execute os comandos a seguir para gerar os nomes dos recursos neste início rápido. Este exemplo usa a
EastUS2região. SubstituaEastUS2pela região desejada.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
Criar um grupo de recursos
Execute o comando a seguir para criar o grupo de recursos para conter os recursos usados neste início rápido.
az group create --name $RESOURCE_GROUP_NAME --location $REGION
Criar um projeto de centro de desenvolvimento e centro de desenvolvimento
Execute o comando a seguir, que instala a extensão da CLI
devcenterdo Azure se ela não estiver instalada e a atualizará para a versão mais recente se ela já estiver instalada.az extension add --name devcenter --upgradeExecute os comandos a seguir para criar um centro de desenvolvimento e um projeto de centro de desenvolvimento.
# 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)Após alguns instantes, a saída indica que o Centro de Desenvolvimento foi criado. O
iddo centro de desenvolvimento criado é salvo eDEVCIDusado para criar o projeto do centro de desenvolvimento.{ "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" }Depois de mais alguns momentos, a saída indica que o projeto do centro de desenvolvimento foi criado. O
idprojeto do centro de desenvolvimento criado é salvo eDEVCPIDusado ao criar o Pool de DevOps Gerenciado na próxima seção.{ "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" }
Preparar os arquivos de configuração do Pool de DevOps Gerenciado
O mdp pool create método tem vários parâmetros que usam valores JSON que configuram diferentes aspectos do pool.
-
agent-profileEspecifica se o pool é com ou sem estado e contém o agendamento do agente em espera. É um dicionário com uma única chave chamada ouStatefulStateless, dependendo da configuração do agente desejada. Para obter mais informações sobreagent-profilepropriedades, consulte Configurar dimensionamento. -
fabric-profileespecifica o tamanho do agente, as imagens da VM, o disco do sistema operacional e o armazenamento anexado. Para obter mais informações sobre as propriedades, consultefabric-profilede pool e Configurar armazenamento adicional. -
organization-profileespecifica as organizações e os projetos do Azure DevOps que podem usar o pool. Para obter mais informações sobreorganization-profileconfigurações, consulte Definir configurações de segurança – Configurar o acesso da organização.
Crie os três arquivos a seguir e salve-os na pasta em que você planeja executar os comandos da CLI do Azure para criar o pool.
Crie um arquivo chamado agent-profile.json com o conteúdo a seguir.
{ "Stateless": {} }Essa configuração especifica um agente sem estado para o pool.
Crie um arquivo chamado fabric-profile.json com o conteúdo a seguir.
{ "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": [] } } }Essa configuração especifica um pool usando a imagem Standard_D2as_v5, a imagem do Azure Pipelinesubuntu-24.04 e um tipo de disco do sistema operacionalstandard sem disco de dados anexado.
Crie um arquivo chamado organization-profile.json com o conteúdo a seguir. Substitua
<organization-name>pelo nome da sua organização do Azure DevOps.{ "AzureDevOps": { "organizations": [ { "url": "https://dev.azure.com/<organization-name>", "projects": [], "parallelism": 1 } ], "permissionProfile": { "kind": "CreatorOnly" } } }Essa configuração especifica um pool que está disponível para todos os projetos em sua organização do Azure DevOps.
Criar o pool de DevOps gerenciado
Execute o comando a seguir, que instala a extensão da CLI
mdpdo Azure se ela não estiver instalada e a atualizará para a versão mais recente se ela já estiver instalada.az extension add --name mdp --upgradeCrie o Pool de DevOps Gerenciado executando o comando az mdp pool create a seguir.
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.jsonSe sua assinatura não tiver a capacidade de configurar seu pool com o SKU de VM do Azure desejado e a contagem máxima de agentes, a criação do pool falhará com um erro semelhante à mensagem a seguir.
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. Para resolver o problema, consulte Revisar cotas de Pools de DevOps Gerenciados.
Exibir o pool criado no portal do Azure
Entre no portal do Azure.
Pesquise Pools de DevOps gerenciados e selecione-os entre as opções disponíveis.
Escolha seu novo Pool de DevOps Gerenciado na lista.
Escolha Exibição JSON para ver o formato JSON do recurso Pools de DevOps gerenciados.
Exibir o pool de agentes no Azure DevOps
Acesse o portal do Azure DevOps e entre na sua organização do Azure DevOps (
https://dev.azure.com/{your-organization}).Acesse as >
Acesse pools do Agente de Pipelines> e verifique se o novo pool está listado. Se você acabou de criar o Pool de DevOps Gerenciado, pode levar alguns instantes para que o novo pool apareça na lista de agentes.
Executar um pipeline em seu novo pool
Nesta etapa, criaremos um pipeline simples no repositório padrão de um projeto do Azure DevOps e o executaremos em seu novo Pool de DevOps Gerenciado.
Acesse o portal do Azure DevOps e entre na sua organização do Azure DevOps (
https://dev.azure.com/{your-organization}).Vá para o projeto em que você deseja executar o pipeline e escolha Pipelines.
Escolha Novo pipeline (ou Criar pipeline se este for seu primeiro pipeline).
Escolha Azure Repos Git.
Escolha o repositório que tem o mesmo nome do seu projeto. Neste exemplo, o projeto é chamado FabrikamFiber, portanto, escolhemos o repositório com o mesmo nome.
Escolha Pipeline inicial.
Por padrão, o modelo inicial usa um agente Linux hospedado pela Microsoft. Edite o modelo de pipeline e altere a
poolseção para que ela se refira ao pool que você criou nas etapas anteriores.# Change these two lines as shown in the following example. pool: vmImage: ubuntu-latestNeste exemplo, os Pools de DevOps Gerenciados são nomeados
fabrikam-managed-pool, portanto, substituavmImage: ubuntu-latestporname: fabrikam-managed-poole especifique o nome do Pool de DevOps Gerenciado.# Replace fabrikam-managed-pools with the name # of your Managed DevOps Pool. pool: name: fabrikam-managed-poolEscolha Save and run (Salvar e executar) e escolha Save and run a second time (Salvar e executar uma segunda vez) para confirmar.
Se esse for o primeiro pipeline executado nesse pool, você poderá ser solicitado a conceder permissões antes da execução do pipeline. Para mais informações, veja Este pipeline precisa de permissão para acessar um recurso antes que esta execução possa continuar.
Assista à execução do pipeline no Azure DevOps e você pode alternar para o portal do Azure e ver o agente em execução na exibição Agentes.
Limpar os recursos
Se você não for continuar a usar esse aplicativo, exclua o grupo de recursos, o centro de desenvolvimento, o projeto do centro de desenvolvimento e o Pool de DevOps Gerenciado. Este guia de início rápido criou todos os recursos em um novo grupo de recursos, para que você possa excluí-los usando o comando az group delete para excluir o grupo de recursos e todos os seus recursos.
az group delete -n $RESOURCE_GROUP_NAME