[アーティクル] 11/14/2024
1 人の共同作成者
フィードバック
この記事の内容
この記事では、Managed DevOps プールの基本設定を構成する方法について説明します。
Overview に移動して、プール設定の概要を表示したり、新しいリソース グループまたはサブスクリプションに Azure リソースを移動タグを構成 。 マネージド DevOps プールは VM に最大 20 個のタグを渡し、残りは無視されます。
プールを構成するには、 Settings >Pool に移動します。
マネージド DevOps プールを構成するには、次の設定を使用します。
デベロッパー センター プロジェクト
Managed 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"
}
}
]
}
デベロッパー センター プロジェクトの概要ページから JSON ビューを使用して、Azure portal でデベロッパー センター プロジェクトのdevCenterProjectResourceId
を取得することも、Azure CLI を使用してid
プロパティについてプロジェクトにクエリを実行することもできます。 次の例では、devCenterProjectResourceId
は、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"
デベロッパー センター プロジェクトは、プールを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
デベロッパー センター プロジェクトの概要ページから JSON ビューを使用して、Azure portal でデベロッパー センター プロジェクトの devcenter-project-id
を取得することも、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 組織
Managed DevOps プールが 1 つの Azure DevOps 組織用に構成されている場合は、プール設定で組織を指定できます。
プールが複数の組織用に構成されている場合、 Azure DevOps 組織 設定はプール設定に存在しません。 複数の組織で使用するようにプールを構成するには、 Settings >Security に移動し、複数の組織でプールを使用する 構成します 。
Azure DevOps 組織 は、organizations
セクションのorganizationProfile
リストを使用して構成されます。 次の例では、Managed DevOps プールが 1 つの組織内のすべてのプロジェクトに対して構成され、並列処理は 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
リストを使用して構成されます。 次の例では、Managed DevOps プールが 1 つの組織内のすべてのプロジェクトに対して構成され、並列処理は 4 です。 複数の組織を構成する例については、「 複数の組織でプールを使用する を参照してください。
az mdp pool create \
--organization-profile organization-profile.json
# other parameters omitted for space
次の例は、organizations
ファイル内の リストを示しています。
{
"AzureDevOps": {
"organizations": [
{
"url": "https://dev.azure.com/fabrikam-tailspin",
"projects": [],
"parallelism": 4
}
],
"permissionProfile": {...}
}
}
既定では、マネージド DevOps プールは、指定した組織のすべてのプロジェクトで使用できます。 プールを特定のプロジェクトに制限するには、「 セキュリティ設定 - 組織のアクセスを構成する 」を参照してください。
エージェントの最大数
プール内の特定の時点でプロビジョニングできるエージェントの最大数を指定します。 たとえば、2 の Maximum agents 値を指定した場合、最大 2 つのエージェントを同時に実行できます。 2 つ以上のジョブがキューに入っている場合、一度に実行されるエージェントは 2 つのみですが、他のジョブは待機します。
エージェント ペインを使用して、プール内のプロビジョニング済みエージェントの現在の状態と数を表示できます。 エージェント ビュー内のすべてのエージェント (返された 状態のエージェントを除く) が仮想マシン リソースで実行され、最大エージェント数 カウントされます。
エージェントの最大数 は、既存のプールの Pool 設定と、プール作成時の Basics タブで構成されます。
最大エージェント数 は、 maximumConcurrency
プロパティを使用して構成されます。 次の例では、 Maximum エージェント が 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
}
}
]
}
最大エージェント数 は、プールの作成またはmaximum-concurrency
するときに パラメーターを使用して構成されます。 次の例では、 Maximum エージェント が 4
に設定されています。
az mdp pool create \
--maximum-concurrency 4
# other parameters omitted for space
Note
エージェントの最大数 は同時にプロビジョニングできるエージェントの最大数を構成しますが、組織のセルフホステッド並列ジョブ数は、同時に実行できるジョブの数を指定します。 エージェントがジョブを実行できるように、組織で十分なセルフホステッド並列ジョブを使用できることを確認します。 詳細については、「 Azure DevOps Services の並列ジョブの価格 を参照してください。
エージェント のサイズ
エージェント のサイズ マネージド DevOps プール エージェントのホストに使用する Azure 仮想マシンのサイズ を指定します。
変更サイズ を選択して、Azure リージョンで使用可能な Azure 仮想マシンのサイズを表示して選択します。 使用可能なマネージド DevOps プール クォータを持つエージェント サイズ (SKU) は、 Available としてマークされます。 利用不可 SKU のクォータを増やすことができます。 Not Available SKU のクォータ要求が承認されると、Available として一覧表示されます。 Managed 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"
}
}
}
}
]
}
エージェント のサイズは、プールの作成またはsku
するときに、fabricProfile
セクションの プロパティ使用して構成します。 次の例では、 Standard_D2ads_v5 VM サイズが指定されています。
az mdp pool create \
--fabric-profile fabric-profile.json
# other parameters omitted for space
次の例は、sku
ファイルの セクションを示しています。
{
"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 ディスクに次の種類のディスクを提供します。
Standard
Standard SSD
Premium SSD
既定の OS ディスクの種類は Standard です。 ワークロードのスループットが Standard レベルのレベルを超える場合は、パフォーマンスの高いディスクの種類にアップグレードすることで、ワークロードのパフォーマンスが向上する可能性があります。 ディスクの種類とパフォーマンスの詳細については、「 Azure マネージド ディスクの種類 を参照してください。
OS ディスクの種類 は、既存のプールの Pool 設定と、プール作成時の Basics タブで構成されます。
OS ディスクの種類は、osDiskStorageAccountType
セクションの storageProfile
プロパティを使用して構成されます。 次の例では、 Standard OS ディスクの種類が指定されています。 Standard 、StandardSSD 、または Premium を選択します。
{
"$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"
}
}
}
]
}
次の例では、 Standard OS ディスクの種類が指定されています。 Standard 、StandardSSD 、または Premium を選択します。
OS ディスクの種類は、osDiskStorageAccountType
パラメーターの storageProfile
セクションの fabric-profile
プロパティを使用して構成されます。 次の例では、 Standard OS ディスクの種類が指定されています。 Standard 、StandardSSD 、または Premium を選択します。
az mdp pool create \
--fabric-profile fabric-profile.json
# other parameters omitted for space
次の例は、storageProfile
ファイルの セクションを示しています。
{
"vmss": {
"sku": {...},
"images": [...],
"osProfile": {...},
"storageProfile": {
"osDiskStorageAccountType": "Standard",
"dataDisks": []
}
}
}
画像
マネージド DevOps プールには、プールでパイプラインを実行するための仮想マシン イメージに関するいくつかのオプションが用意されています。 選択した Azure Marketplace VM イメージを使用してプールを作成したり、Azure コンピューティング ギャラリーで独自のカスタム イメージを使用したり、Azure Pipelines の Microsoft でホストされているエージェントで使用されるのと同じ Windows イメージと Linux イメージを使用したりできます。
1 つのイメージまたは複数のイメージを使用するようにプールを構成し、エイリアスを使用して、特定のイメージを使用するようにパイプラインを構成できます。 詳細については、「 マネージド DevOps プール イメージの構成 」を参照してください。
関連項目