빠른 시작: ARM 템플릿을 사용하여 관리형 DevOps 풀 만들기
이 문서에서는 ARM 템플릿을 사용하여 관리형 DevOps 풀을 만들고 새 풀에서 파이프라인을 실행하는 방법을 보여 줍니다.
필수 조건
이 문서의 단계를 완료하기 전에 필수 구성 요소 문서에 설명된 대로 관리되는 DevOps 풀에서 사용할 Azure 구독 및 Azure 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 CLI를 사용하여 Azure 구독을 사용하는 방법에 대한 자세한 내용은 Azure CLI를 사용하여 Azure 구독을 관리하는 방법을 참조하세요.
리소스 그룹 만들기, 개발자 센터 및 개발자 센터 프로젝트
Azure CLI를 사용하여 Azure 배포 환경에 대한 개발 센터 만들기 및 구성의 개발자 센터 만들기 단계를 따릅니다.
개발자 센터 만들기 섹션의 단계만 수행하면 됩니다. 리소스 그룹 이름 및 개발자 센터 이름을 기록해 둡니다.
Azure CLI를 사용하여 프로젝트 만들기 및 구성에서 프로젝트 만들기 단계를 따릅니다.
만든 프로젝트(아님)를 기록해
devCenterId
둡니다id
.
템플릿 검토 및 저장
다음 내용으로 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
Azure DevOps 조직의 이름으로 업데이트 value
하고 바꿉your-organization
니다.devCenterResourceId
id
이전의 리소스 그룹 만들기, 개발자 센터 및 개발자 센터 프로젝트 단계로 업데이트value
합니다.imageName
이 예제는 Azure Pipelines 이미지를 사용하도록 구성되고 Windows Server 2022 이미지를 사용합니다. 변경하려면 Azure Pipelines 이미지 미리 정의된 별칭 중에서 선택합니다. 관리형 DevOps 풀은 Azure Compute 갤러리 이미지 및 선택한 마켓플레이스 이미지도 지원합니다. 이러한 이미지 유형에 대한 관리형 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 CLI를 사용하여 Azure 구독을 사용하는 방법에 대한 자세한 내용은 Azure CLI를 사용하여 Azure 구독을 관리하는 방법을 참조하세요.
이전 단계에서 두 개의 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
구독에 원하는 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 풀 할당량 검토를 참조하세요.
Azure Portal에서 만든 풀 보기
Azure Portal에 로그인합니다.
관리형 DevOps 풀을 검색하고 사용 가능한 옵션에서 선택합니다.
목록에서 새 관리형 DevOps 풀을 선택합니다.
JSON 보기를 선택하여 관리되는 DevOps 풀 리소스의 JSON 형식을 확인합니다.
Azure DevOps에서 에이전트 풀 보기
Azure DevOps 포털로 이동하여 Azure DevOps 조직(
https://dev.azure.com/{your-organization}
)에 로그인합니다.Azure DevOps>조직 설정으로 이동합니다.
Pipelines>에이전트 풀로 이동하여 새 풀이 나열되었는지 확인합니다. 관리되는 DevOps 풀을 방금 만든 경우 새 풀이 에이전트 목록에 표시되는 데 몇 분 정도 걸릴 수 있습니다.
새 풀에서 파이프라인 실행
이 단계에서는 Azure DevOps 프로젝트의 기본 리포지토리에 간단한 파이프라인을 만들고 새 관리형 DevOps 풀에서 실행합니다.
Azure DevOps 포털로 이동하여 Azure DevOps 조직(
https://dev.azure.com/{your-organization}
)에 로그인합니다.파이프라인을 실행하려는 프로젝트로 이동하고 파이프라인을 선택합니다.
새 파이프라인(또는 첫 번째 파이프라인인 경우 파이프라인 만들기)을 선택합니다.
Azure Repos Git을 선택합니다.
프로젝트와 이름이 같은 리포지토리를 선택합니다. 이 예제에서는 프로젝트 이름이 FabrikamFiber이므로 이름이 같은 리포지토리를 선택합니다.
시작 파이프라인을 선택합니다.
기본적으로 시작 템플릿은 Microsoft 호스팅 Linux 에이전트를 사용합니다. 파이프라인 템플릿을 편집하고 이전 단계에서 만든 풀을 참조하도록 섹션을 변경
pool
합니다.# Change these two lines as shown in the following example. pool: vmImage: ubuntu-latest
이 예제에서는 Managed DevOps 풀의 이름이 지정
fabrikam-managed-pool
되므로vmImage: ubuntu-latest
Managed DevOps 풀의 이름을 로name: fabrikam-managed-pools
바꾸고 지정합니다.# Replace fabrikam-managed-pools with the name # of your Managed DevOps Pool. pool: name: fabrikam-managed-pool
저장 및 실행을 선택하고 저장을 선택하고 두 번째로 실행하여 확인합니다.
이 풀에서 첫 번째 파이프라인 실행인 경우 파이프라인이 실행되기 전에 권한을 부여하라는 메시지가 표시될 수 있습니다.
Azure DevOps에서 파이프라인 실행을 확인하고 Azure Portal로 전환하고 에이전트 보기에서 실행 중인 에이전트를 볼 수 있습니다.
리소스 정리
빠른 시작을 완료한 경우 계속 사용하지 않으려면 만든 리소스를 삭제합니다.
Managed DevOps 풀, 개발자 센터 및 개발자 센터 Project를 삭제하려면 포함된 리소스 그룹을 삭제하여 삭제할 수 있습니다.