Краткое руководство. Создание управляемого пула DevOps с помощью шаблона ARM
В этой статье показано, как создать управляемый пул DevOps с помощью шаблона ARM и запустить конвейер в новом пуле.
Необходимые компоненты
Прежде чем выполнить действия, описанные в этой статье, настроили подписку Azure и организацию Azure DevOps для использования с управляемыми пулами DevOps, как описано в статье Предварительные требования. Эти действия необходимо выполнить только один раз для каждой подписки Azure и организации Azure DevOps.
Вход в Azure CLI
Откройте командную строку (в Windows, используйте командную строку Windows или PowerShell) и выполните следующие команды.
Войдите в Azure CLI.
az login
Если у вас несколько подписок Azure, задайте подписку Azure по умолчанию.
az account set --subscription "My subscription name"
Чтобы получить список подписок, выполните следующую команду.
az account list -o table
Если у вас несколько клиентов или вы хотите просмотреть дополнительные сведения о работе с подпиской Azure с помощью Azure CLI, см. сведения об управлении подписками Azure с помощью Azure CLI.
Создание группы ресурсов, Центр разработки и Центр разработки Project
Выполните действия по созданию центра разработки и настройке центра разработки для сред развертывания Azure с помощью Azure CLI.
Вам нужно выполнить действия, описанные в разделе "Создание центра разработки". Запишите имя группы ресурсов и имя Центр разработки.
Выполните действия по созданию проекта и настройке проекта с помощью Azure CLI.
Запишите
id
созданный проект (а не ).devCenterId
Просмотр и сохранение шаблона
Создайте имя локального файла mdp-azure-deploy.json со следующим содержимым. Этот файл является параметризованным шаблоном ARM, который создает
microsoft.devopsinfrastructure/pools
ресурс.{ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": { "poolName": { "type": "string" }, "adoOrg": { "type": "string" }, "devCenterResourceId": { "type": "string" }, "imageName": { "type": "string" }, "poolSize": { "type": "int" }, "location": { "type": "string", "defaultValue": "eastus" } }, "variables": {}, "resources": [ { "name": "[parameters('poolName')]", "type": "microsoft.devopsinfrastructure/pools", "apiVersion": "2024-10-19", "location": "[parameters('location')]", "tags": {}, "properties": { "organizationProfile": { "organizations": [ { "url": "[parameters('adoOrg')]", "parallelism": 1 } ], "permissionProfile": { "kind": "CreatorOnly" }, "kind": "AzureDevOps" }, "devCenterProjectResourceId": "[parameters('devCenterResourceId')]", "maximumConcurrency": "[parameters('poolSize')]", "agentProfile": { "kind": "Stateless" }, "fabricProfile": { "sku": { "name": "Standard_D2ads_v5" }, "images": [ { "wellKnownImageName": "[parameters('imageName')]", "buffer": "*" } ], "kind": "Vmss" } } } ] }
Создайте другой локальный файл с именем mdp-azure-deploy-parameters.json и сохраните его в той же папке, что и первый файл. Обновите следующие свойства, чтобы соответствовать сведениям о вашей среде.
Параметр Значение poolName
Обновите value
нужное имя пула. Имя должно состоять из буквенно-цифровых символов,.
-
или_
от 3 до 44 символов. Имя должно быть глобально уникальным в Azure.adoOrg
Обновите value
и заменитеyour-organization
именем организации Azure DevOps.devCenterResourceId
Обновите value
с помощью предыдущегоid
проекта.imageName
Этот пример настроен для использования образа Azure Pipelines и использует образ Windows Server 2022. Если вы хотите изменить его, выберите из предварительно определенных псевдонимов образа Azure Pipelines. Управляемые пулы DevOps также поддерживают образы коллекции вычислений Azure и выбранные образы Marketplace. Сведения о настройке ресурса управляемых пулов DevOps для этих типов образов см. в разделе "Настройка образов управляемых пулов DevOps". poolSize
Обновите value
максимальное количество агентов, которые вы хотите иметь возможность выполнять одновременные задания. В этом примереpoolSize
используется1
.location
Регион Azure для пула. В этом примере это eastus
регион.{ "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#", "contentVersion": "1.0.0.0", "parameters": { "poolName": { "value": "my-first-managed-pool" }, "adoOrg": { "value": "https://dev.azure.com/your-organization" }, "devCenterResourceId": { "value": "/subscriptions/subscription_id_placeholder/resourceGroups/fabrikam-managed-devops-pools/providers/Microsoft.DevCenter/projects/fabrikam-dev-center-project" }, "imageName": { "value": "windows-2022" }, "poolSize": { "value": 1 }, "location": { "value": "eastus" } } }
Создание управляемого пула DevOps
Откройте командную строку (в Windows, используйте командную строку Windows или PowerShell) и выполните следующие команды. Вы можете пропустить первые две команды, если сеанс Azure CLI из первой процедуры по-прежнему активен.
Войдите в Azure CLI.
az login
Если у вас несколько подписок Azure, задайте подписку Azure по умолчанию.
az account set --subscription "My subscription name"
Чтобы получить список подписок, выполните следующую команду.
az account list -o table
Если у вас несколько клиентов или вы хотите просмотреть дополнительные сведения о работе с подпиской Azure с помощью Azure CLI, см. сведения об управлении подписками Azure с помощью Azure CLI.
Перейдите в папку при сохранении двух JSON-файлов на предыдущем шаге. В этом примере файлы сохраняются в
C:\examples
.cd c:\examples
Создайте управляемый пул DevOps. Замените
<resourceGroupName>
группу ресурсов, созданную на первом шаге.az deployment group create --resource-group <resourceGroupName> --template-file mdp-azure-deploy.json --parameters mdp-azure-deploy-parameters.json
Если у вашей подписки нет емкости для настройки пула с требуемым номером SKU виртуальной машины Azure и максимальным числом агентов, создание пула завершается ошибкой, аналогичной приведенному ниже сообщению.
Cores needed to complete this request is 8, 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
. Чтобы устранить проблему, ознакомьтесь с квотами управляемых пулов DevOps.
Просмотр созданного пула в портал Azure
Войдите на портал Azure.
Найдите управляемые пулы DevOps и выберите его из доступных вариантов.
Выберите новый управляемый пул DevOps из списка.
Выберите представление JSON, чтобы просмотреть формат JSON ресурса Управляемых пулов DevOps.
Просмотр пула агентов в Azure DevOps
Перейдите на портал Azure DevOps и войдите в свою организацию Azure DevOps (
https://dev.azure.com/{your-organization}
).Перейдите к >.
Перейдите в пулы агентов Pipelines>и убедитесь, что в списке указан новый пул. Если вы только что создали пул Managed DevOps, в списке агентов может потребоваться несколько минут.
Запуск конвейера в новом пуле
На этом шаге мы создадим простой конвейер в репозитории по умолчанию проекта Azure DevOps и запустите его в новом управляемом пуле DevOps.
Перейдите на портал Azure DevOps и войдите в свою организацию Azure DevOps (
https://dev.azure.com/{your-organization}
).Перейдите в проект, в котором вы хотите запустить конвейер, и выберите конвейеры.
Выберите новый конвейер (или создать конвейер, если это первый конвейер).
Выберите Azure Repos Git.
Выберите репозиторий с тем же именем, что и проект. В этом примере проект называется FabrikamFiber, поэтому мы выбираем репозиторий с тем же именем.
Выберите конвейер Starter.
По умолчанию начальный шаблон использует агент Linux, размещенный корпорацией Майкрософт. Измените шаблон конвейера и измените
pool
раздел, чтобы он ссылается на пул, созданный на предыдущих шагах.# Change these two lines as shown in the following example. pool: vmImage: ubuntu-latest
В этом примере управляемые пулы DevOps называются
fabrikam-managed-pool
, поэтому заменитеvmImage: ubuntu-latest
егоname: fabrikam-managed-pools
и укажите имя управляемого пула DevOps.# Replace fabrikam-managed-pools with the name # of your Managed DevOps Pool. pool: name: fabrikam-managed-pool
Нажмите кнопку "Сохранить и запустить" и нажмите кнопку "Сохранить" и " Сохранить" во второй раз, чтобы подтвердить.
Если это первый запуск конвейера в этом пуле, вам может потребоваться предоставить разрешения перед запуском конвейера.
Просмотрите запуск конвейера в Azure DevOps, и вы можете перейти на портал Azure и просмотреть запущенный агент в представлении агентов.
Очистка ресурсов
После завершения краткого руководства удалите созданные ресурсы, если вы не хотите продолжать использовать их.
Чтобы удалить управляемый пул DevOps, Центр разработки и Центр разработки Project, их можно удалить, удалив группу ресурсов, содержащую их.