Bicep을 사용하여 리소스 그룹 만들기
Bicep을 사용하여 새 리소스 그룹을 만들 수 있습니다. 이 문서에서는 구독 또는 다른 리소스 그룹에 배포할 때 리소스 그룹을 만드는 방법을 보여 줍니다.
리소스 그룹 정의
Bicep을 사용하여 리소스 그룹을 만들려면 리소스 그룹의 이름과 위치를 사용하여 Microsoft.Resources/resourceGroups 리소스를 정의합니다.
다음 예제는 빈 리소스 그룹을 만드는 Bicep 파일을 보여 줍니다. 대상 범위는 subscription
입니다.
targetScope='subscription'
param resourceGroupName string
param resourceGroupLocation string
resource newRG 'Microsoft.Resources/resourceGroups@2024-03-01' = {
name: resourceGroupName
location: resourceGroupLocation
}
Bicep 파일을 구독에 배포하려면 구독 수준 배포 명령을 사용합니다.
Azure CLI의 경우 az deployment sub create를 사용합니다.
az deployment sub create \
--name demoSubDeployment \
--location centralus \
--template-file resourceGroup.bicep \
--parameters resourceGroupName=demoResourceGroup resourceGroupLocation=centralus
PowerShell 배포 명령의 경우 New-AzDeployment 또는 별칭인 New-AzSubscriptionDeployment
를 사용합니다.
New-AzSubscriptionDeployment `
-Name demoSubDeployment `
-Location centralus `
-TemplateFile resourceGroup.bicep `
-resourceGroupName demoResourceGroup `
-resourceGroupLocation centralus
리소스 그룹 및 리소스 만들기
리소스 그룹을 만들고 리소스를 배포하려면 리소스 그룹에 배포할 리소스를 정의하는 모듈을 추가합니다. 모듈의 범위를 사용자가 만든 리소스 그룹의 기호화 된 이름으로 설정 합니다. 최대 800개의 리소스 그룹에 배포할 수 있습니다.
다음 예제에서는 리소스 그룹을 만들고 리소스 그룹에 스토리지 계정을 배포하는 Bicep 파일을 보여 줍니다. 모듈의 scope
속성은 생성 중인 리소스 그룹의 기호 이름인 newRG
로 설정되어 있습니다.
targetScope='subscription'
param resourceGroupName string
param resourceGroupLocation string
param storageName string
param storageLocation string
resource newRG 'Microsoft.Resources/resourceGroups@2024-03-01' = {
name: resourceGroupName
location: resourceGroupLocation
}
module storageAcct 'storage.bicep' = {
name: 'storageModule'
scope: newRG
params: {
storageLocation: storageLocation
storageName: storageName
}
}
이 모듈은 다음 콘텐츠가 포함된 storage.bicep이라는 Bicep 파일을 사용합니다.
param storageLocation string
param storageName string
resource storageAcct 'Microsoft.Storage/storageAccounts@2023-04-01' = {
name: storageName
location: storageLocation
sku: {
name: 'Standard_LRS'
}
kind: 'Storage'
properties: {}
}
리소스 그룹 배포 중 리소스 그룹 만들기
리소스 그룹 수준 배포 중에 리소스 그룹을 만들 수도 있습니다. 이 시나리오에서는 기존 리소스 그룹에 배포하고 구독 수준으로 전환하여 리소스 그룹을 만듭니다. 다음 Bicep 파일은 지정된 구독에 새 리소스 그룹을 만듭니다. 리소스 그룹을 만드는 모듈은 리소스 그룹을 만드는 예제와 동일합니다.
param secondResourceGroup string
param secondSubscriptionID string = ''
param secondLocation string
// module deployed at subscription level
module newRG 'resourceGroup.bicep' = {
name: 'newResourceGroup'
scope: subscription(secondSubscriptionID)
params: {
resourceGroupName: secondResourceGroup
resourceGroupLocation: secondLocation
}
}
리소스 그룹에 배포하려면 리소스 그룹 배포 명령을 사용합니다.
Azure CLI의 경우 az deployment group create를 사용합니다.
az deployment group create \
--name demoRGDeployment \
--resource-group ExampleGroup \
--template-file main.bicep \
--parameters secondResourceGroup=newRG secondSubscriptionID={sub-id} secondLocation=westus
PowerShell 배포 명령의 경우 New-AzResourceGroupDeployment를 사용합니다.
New-AzResourceGroupDeployment `
-Name demoRGDeployment `
-ResourceGroupName ExampleGroup `
-TemplateFile main.bicep `
-secondResourceGroup newRG `
-secondSubscriptionID {sub-id} `
-secondLocation westus
다음 단계
다른 범위에 대한 자세한 내용은 다음을 참조하세요.