本文内容
本文介绍如何配置托管 DevOps 池的基本设置。
转到 “概述” 以查看池设置的概述, 将 Azure 资源移到新的资源组或订阅 ,或配置 标记 。 托管 DevOps 池最多将 20 个标记传递给 VM,其余标记将被忽略。
若要配置池,请转到“设置 >池”。
使用以下设置配置托管 DevOps 池。
开发人员中心项目
为托管 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"
}
}
]
}
可以使用devCenterProjectResourceId
开发人员中心项目的概述页 Azure 门户中的 JSON 视图检索开发人员中心项目中的开发人员中心项目,也可以使用 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
可以使用devcenter-project-id
开发人员中心项目的概述页中的 JSON 视图检索Azure 门户中的开发人员中心项目,也可以使用 Azure CLI 检索该项目以获取其id
属性。 在以下示例中, devcenter-project-id
从资源组中命名 fabrikam-dev-center-project
的 fabrikam-managed-devops-pools
开发人员中心项目检索该代码。
az devcenter admin project show --name fabrikam-dev-center-project --resource-group fabrikam-managed-devops-pools --query "id"
Azure DevOps 组织
如果为单个 Azure DevOps 组织配置了托管 DevOps 池,则可以在池设置中指定组织。
如果为多个组织配置了池, 则池设置中不存在 Azure DevOps 组织 设置。 若要将池配置为在多个组织中使用,请转到“设置安全性” >,并在多个组织中配置 “使用”池。
Azure DevOps 组织 使用 organizations
本节中的 organizationProfile
列表进行配置。 在以下示例中,为单个组织中的所有项目配置托管 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": "2024-10-19",
"location": "eastus",
"properties": {
...
"organizationProfile": {
"organizations": [
{
"url": "https://dev.azure.com/fabrikam-tailspin",
"projects": [],
"parallelism": 4
}
]
}
}
}
]
}
Azure DevOps 组织 使用 organizations
参数中的 organization-profile
列表进行配置。 在以下示例中,为单个组织中的所有项目配置托管 DevOps 池,并行度为 4。 有关配置多个组织的示例,请参阅 多个组织中的 “使用池”。
az mdp pool create \
--organization-profile organization-profile.json
# other parameters omitted for space
以下示例显示了organizations
organization-profile.json文件中的列表 。
{
"AzureDevOps": {
"organizations": [
{
"url": "https://dev.azure.com/fabrikam-tailspin",
"projects": [],
"parallelism": 4
}
],
"permissionProfile": {...}
}
}
默认情况下,托管 DevOps 池可用于指定组织中的所有项目。 若要将池限制为特定项目,请参阅 安全设置 - 配置组织访问权限 。
最大代理数
指定可用于池中的代理的最大计数。 例如,如果指定 最大代理 值 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": "2024-10-19",
"location": "eastus",
"properties": {
...
"maximumConcurrency": 4
}
}
]
}
代理大小
代理大小 指定用于托管托管 DevOps 池代理的 Azure 虚拟机大小 。
选择 “更改大小 ”以查看并选择 Azure 区域中可用的 Azure 虚拟机大小。 具有可用托管 DevOps 池配额的代理大小(SKU)标记为 “可用 ”。 可以请求更多“不可用”SKU 配额 。 批准“不可用”SKU 的 配额请求后,该请求将列为“可用 ”。 详细了解托管 DevOps 池配额 。
代理大小是使用 sku
节中的 fabricProfile
属性配置的。 在以下示例中, 指定了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": "2024-10-19",
"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": {...}
}
}
如果订阅没有容量使用所需的 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 磁盘类型是使用 osDiskStorageAccountType
节中的 storageProfile
属性配置的。 在以下示例中, 指定了标准 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": "2024-10-19",
"location": "eastus",
"properties": {
...
"storageProfile": {
"osDiskStorageAccountType": "Standard"
}
}
}
]
}
在以下示例中, 指定了标准 OS 磁盘类型。 选择“标准”、“ 标准” 或“高级 ”。
OS 磁盘类型是使用osDiskStorageAccountType
参数中节中的storageProfile
fabric-profile
属性配置的。 在以下示例中, 指定了标准 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": []
}
}
}
映像
托管 DevOps 池提供了多个用于在池中运行管道的虚拟机映像选项。 可以使用所选Azure 市场 VM 映像创建池,在 Azure 计算库中使用自己的自定义映像,或使用 Azure Pipelines Microsoft托管代理使用的相同 Windows 和 Linux 映像。
可以将池配置为使用单个映像或多个映像,并使用别名配置管道以使用特定映像。 有关详细信息,请参阅 配置托管 DevOps 池映像 。
另请参阅