本文介绍如何配置托管 DevOps 池实例的基本设置。
概述
若要查看池设置的概述,请转到 “概述”。
从 “概述”中,可以:
池设置
若要配置池,请转到“设置>池”。
若要配置池,请使用以下设置:
开发人员中心项目
在池中选择 开发人员中心项目 实例。 (如果没有,可以在创建池时创建 开发人员中心 实例和 开发人员中心项目 实例。
该 devCenterProjectResourceId 属性指定 开发人员中心项目 实例。
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"name": "fabrikam-managed-pool",
"type": "microsoft.devopsinfrastructure/pools",
"location": "eastus",
"tags": {},
"properties": {
...
"devCenterProjectResourceId": "/subscriptions/subscription_id_placeholder/resourceGroups/fabrikam-managed-devops-pools/providers/Microsoft.DevCenter/projects/fabrikam-dev-center-project"
}
}
]
}
可以在 Azure 门户中,通过您的 开发人员中心项目 实例概述页的 JSON 视图 来检索 devCenterProjectResourceId 值。 还可以使用 Azure CLI 查询项目以检索其 id 属性。
在以下示例中,devCenterProjectResourceId值是从fabrikam-managed-devops-pools资源组中名为fabrikam-dev-center-project的开发人员中心项目实例中检索的。
az devcenter admin project show --name fabrikam-dev-center-project --resource-group fabrikam-managed-devops-pools --query "id"
该devcenter-project-id参数在创建或更新池时指定开发人员中心项目实例。
az mdp pool create \
--devcenter-project-id /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/resourceGroupName/providers/Microsoft.DevCenter/projects/devCenterProjectName
# other parameters omitted for space
可以在 Azure 门户中,通过开发人员中心项目实例“概述”页面中的JSON 视图,检索devcenter-project-id开发人员中心项目实例的相关信息。 还可以使用 Azure CLI 查询项目的 id 属性来检索它。
在以下示例中,从资源组中的名为开发人员中心项目的实例检索。
az devcenter admin project show --name fabrikam-dev-center-project --resource-group fabrikam-managed-devops-pools --query "id"
该 devCenterProjectResourceId 属性指定 开发人员中心项目 实例。
resource managedDevOpsPools 'Microsoft.DevOpsInfrastructure/pools@2025-09-20' = {
name: 'fabrikam-managed-pool'
location: 'eastus'
properties: {
...
devCenterProjectResourceId: '/subscriptions/subscription_id_placeholder/resourceGroups/fabrikam-managed-devops-pools/providers/Microsoft.DevCenter/projects/fabrikam-dev-center-project'
}
}
可以在 Azure 门户中,通过开发人员中心项目实例的“概述”页中的JSON 视图,检索devCenterProjectResourceId实例的。 还可以使用 Azure CLI 来查询项目以获取其 id 属性,并检索它。
在下面的例子中,在资源组fabrikam-managed-devops-pools中,从名为fabrikam-dev-center-project的开发人员中心项目实例中检索devCenterProjectResourceId。
az devcenter admin project show --name fabrikam-dev-center-project --resource-group fabrikam-managed-devops-pools --query "id"
Azure DevOps 组织
如果为单个 Azure DevOps 组织配置了池,则可以在池设置中指定组织。
如果为多个组织配置了池,则池设置中不存在 Azure DevOps 组织 设置。 若要将池配置为在多个组织中使用,请转到>,并在多个组织中配置“使用”池。
可以使用organizations下的列表在organizationProfile部分中配置Azure DevOps 组织参数。
在以下示例中,配置了一个池用于单个组织中的所有项目,并设置了并行度为 4。 有关如何配置多个组织的示例,请参阅 在多个组织中使用资源池。
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"name": "fabrikam-managed-pool",
"type": "microsoft.devopsinfrastructure/pools",
"apiVersion": "2025-09-20",
"location": "eastus",
"properties": {
...
"organizationProfile": {
"organizations": [
{
"url": "https://dev.azure.com/fabrikam-tailspin",
"projects": [],
"parallelism": 4
}
]
}
}
}
]
}
可以使用参数中的列表配置 organizations值organization-profile。
在以下示例中,已为单个组织中的所有项目配置资源池,并将并行度设置为 4。 有关如何配置多个组织的示例,请参阅 多个组织中的“使用池”。
az mdp pool create \
--organization-profile organization-profile.json
# other parameters omitted for space
以下示例显示了organizationsorganization-profile.json文件中的列表。
{
"AzureDevOps": {
"organizations": [
{
"url": "https://dev.azure.com/fabrikam-tailspin",
"projects": [],
"parallelism": 4
}
],
"permissionProfile": {...}
}
}
可以通过使用organizations列表在organizationProfile部分中配置Azure DevOps 组织值。
在以下示例中,为单个组织中的所有项目配置池,并行度设置为 4。
有关如何配置多个组织的示例,请参阅在多个组织中使用资源池。
resource managedDevOpsPools 'Microsoft.DevOpsInfrastructure/pools@2025-09-20' = {
name: 'fabrikam-managed-pool'
location: 'eastus'
properties: {
...
organizationProfile: {
organizations: [
{
url: 'https://dev.azure.com/fabrikam-tailspin'
projects: []
parallelism: 4
}
]
}
}
}
默认情况下,您的资源池在您指定的组织中的所有项目中可用。 若要将池限制为特定项目,请参阅 “安全设置:配置组织访问权限”。
最大代理数
指定可在池中同时预配的最大代理数。 例如,如果指定 最大代理 值 2,则可以同时运行最多两个代理。 如果两个以上的作业已排队,则只有两个代理运行作业,而其他作业则等待。
可以使用 “代理 ”窗格查看池中预配代理的当前状态和计数。
“代理”视图中的所有代理(除状态为返回状态的代理除外)在虚拟机资源上运行,并计入最大代理计数。
可以在现有池的“池设置”中配置“最大代理”值,并在创建池时在“基本信息”选项卡上配置最大值。
可以使用该属性配置maximumConcurrency值。
在以下示例中, 最大代理 值为 4.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"name": "fabrikam-managed-pool",
"type": "microsoft.devopsinfrastructure/pools",
"apiVersion": "2025-09-20",
"location": "eastus",
"properties": {
...
"maximumConcurrency": 4
}
}
]
}
可以在创建或maximum-concurrency池时使用参数配置最大代理值。
在以下示例中, 最大代理 值为 4.
az mdp pool create \
--maximum-concurrency 4
# other parameters omitted for space
可以使用该属性配置maximumConcurrency值。
在以下示例中, 最大代理 值为 4.
resource managedDevOpsPools 'Microsoft.DevOpsInfrastructure/pools@2025-09-20' = {
name: 'fabrikam-managed-pool'
location: 'eastus'
properties: {
...
maximumConcurrency: 4
}
}
代理大小
代理大小设置指定用于托管 DevOps 池的代理的Azure 虚拟机大小。
若要查看并选择 Azure 区域中可用的 Azure 虚拟机大小,请选择 “更改大小”。 具有可用托管 DevOps 池配额的代理种类(SKU)显示为 可用。 可以为标记为 “不可用”的 SKU 请求更多配额。 批准 “不可用 ”SKU 的配额请求后,它将被标记为 “可用”。 详细了解 托管 DevOps 池配额。
可以在fabricProfile部分使用sku属性来配置代理大小。 在以下示例中, Standard_D2ads_v5 指定了 VM 大小。
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"name": "fabrikam-managed-pool",
"type": "microsoft.devopsinfrastructure/pools",
"apiVersion": "2025-09-20",
"location": "eastus",
"properties": {
...
"fabricProfile": {
"sku": {
"name": "Standard_D2ads_v5"
}
}
}
}
]
}
创建或更新池时,可以在fabricProfile节中使用sku属性来配置代理大小。 在以下示例中, Standard_D2ads_v5 指定了 VM 大小。
az mdp pool create \
--fabric-profile fabric-profile.json
# other parameters omitted for space
以下示例显示了 sku 文件的 fabric-profile.json 部分。
{
"vmss": {
"sku": {
"name": "Standard_D2ads_v5"
},
"images": [...],
"osProfile": {...},
"storageProfile": {...}
}
}
可以通过fabricProfile节中的sku属性配置代理程序的大小。 在以下示例中, Standard_D2ads_v5 指定了 VM 大小。
resource managedDevOpsPools 'Microsoft.DevOpsInfrastructure/pools@2025-09-20' = {
name: 'fabrikam-managed-pool'
location: 'eastus'
properties: {
fabricProfile: {
...
sku: {
name: 'Standard_D2ads_v5'
}
}
}
}
如果您的订阅无法配置您指定的 Azure VM SKU 和最大代理数量的池,您将收到如下的错误消息:
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 池配额。
并非所有 SKU 都支持全部的 Azure 区域。 如果收到类似SKU family <sku-family> is not available in location <region>的错误,请确保您所在地区支持该 SKU 的尺寸。 有关详细信息,请参阅 Azure 中虚拟机的大小以及可用产品(按区域列出)。
OS 磁盘类型
托管 DevOps 池为 OS 磁盘提供以下磁盘类型:
默认 OS 磁盘类型为 Standard。 如果工作负荷的吞吐量超过标准层的水平,则可以通过升级到性能更高的磁盘类型来提升工作负荷的性能。 有关磁盘类型和性能的详细信息,请参阅 Azure 托管磁盘类型。
可以在现有池的池设置中配置 OS 磁盘类型。 创建池时,可以在“基本信息”选项卡上配置 OS 磁盘类型。
可以使用本节中的属性配置 osDiskStorageAccountTypestorageProfile。 选择Standard、StandardSSD或Premium。
在以下示例中,标准 OS 磁盘类型已指定:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"name": "fabrikam-managed-pool",
"type": "microsoft.devopsinfrastructure/pools",
"apiVersion": "2025-09-20",
"location": "eastus",
"properties": {
...
"storageProfile": {
"osDiskStorageAccountType": "Standard"
}
}
}
]
}
可以使用参数中节中的osDiskStorageAccountType属性配置 storageProfilefabric-profile。
选择标准、标准SSD或高端。 在以下示例中, 指定了标准 OS 磁盘类型。
az mdp pool create \
--fabric-profile fabric-profile.json
# other parameters omitted for space
以下示例显示了 storageProfile 文件中的 fabric-profile.json 节。
{
"vmss": {
"sku": {...},
"images": [...],
"osProfile": {...},
"storageProfile": {
"osDiskStorageAccountType": "Standard",
"dataDisks": []
}
}
}
可以使用本节中的属性配置 osDiskStorageAccountTypestorageProfile。
选择“标准”、“标准SSD”或“高级”。 在以下示例中, 指定了标准 OS 磁盘类型。
resource managedDevOpsPools 'Microsoft.DevOpsInfrastructure/pools@2025-09-20' = {
name: 'fabrikam-managed-pool'
location: 'eastus'
properties: {
fabricProfile: {
...
storageProfile: {
osDiskStorageAccountType: 'Standard'
}
}
}
}
映像
托管的 DevOps 资源池提供了多个 VM 映像选项,用于在你的池中运行管道。 您可以通过以下方式创建池:使用选定市场的虚拟机 (VM) 映像,在 Azure 计算库实例中使用您自己的自定义映像,或使用 Azure Pipelines 中由 Microsoft 托管代理使用的相同 Windows 和 Linux 映像。
重要
托管的 DevOps 池将弃用以下映像:
- Azure Pipelines - Windows Server 2019
- Ubuntu 20.04
有关详细信息,请参阅托管 DevOps 池映像弃用计划。
可以将池配置为使用单个映像或多个映像。 还可以使用别名来配置管道以使用特定映像。 有关详细信息,请参阅 配置托管 DevOps 池映像。
重要
如果池中有多个映像,并且管道 中没有使用要求来指定映像,则管道将使用池中所列的第一个映像运行。 可以通过以下方式更改池中的映像顺序:
- 使用模板:更改
fabricProfile部分中的images列表中图像的顺序。
- 使用拖动:在 Azure 门户中对映像列表中的映像进行排序。
相关内容