ARM 템플릿(Azure Resource Manager 템플릿) 또는 Bicep 파일을 사용한 Azure 리소스 배포에 실패하면 오류 코드가 표시됩니다. 이 문서에서는 문제를 해결할 수 있도록 오류 코드를 찾는 방법을 설명합니다. 오류 코드에 대한 자세한 내용은 일반적인 배포 오류를 참조하세요.
오류 형식
배포와 관련된 세 가지 유형의 오류가 있습니다.
-
검증 오류는 배포가 시작되기 전에 발생하며 파일의 구문 오류로 인해 발생합니다. Visual Studio Code와 같은 코드 편집기는 이러한 오류를 식별할 수 있습니다.
- 배포 명령이 실행되지만 리소스가 배포되지 않은 경우 실행 전 유효성 검사 오류가 발생합니다. 이러한 오류는 배포를 시작하지 않고 발견됩니다. 예를 들어 매개 변수 값이 잘못된 경우 실행 전 유효성 검사에서 오류가 발견됩니다.
-
배포 오류는 배포 프로세스 중에 발생하며 Azure 환경에서 배포 진행 상황을 평가해야만 찾을 수 있습니다.
모든 오류 유형에서 배포 문제를 해결하는 데 사용하는 오류 코드를 반환합니다. 유효성 검사 및 실행 전 오류는 활동 로그에 표시되지만 배포 기록에는 표시되지 않습니다. 구문 오류가 있는 Bicep 파일은 JSON으로 컴파일되지 않으며 활동 로그에 표시되지 않습니다.
구문 오류를 식별하려면 최신 Bicep 확장 또는 Azure Resource Manager 도구 확장과 함께 Visual Studio Code를 사용할 수 있습니다.
유효성 검사 오류
배포 프로세스 중에 템플릿의 유효성이 검사되고 오류 코드가 표시됩니다. 배포를 실행하기 전에 Azure PowerShell 또는 Azure CLI를 사용하여 유효성 검사 테스트를 실행하여 유효성 검사 및 실행 전 오류를 식별할 수 있습니다.
ARM 템플릿은 포털에서 배포할 수 있습니다. 템플릿에 구문 오류가 있는 경우 배포를 실행하려고 할 때 유효성 검사 오류가 표시됩니다. 포털 배포에 대한 자세한 내용은 사용자 지정 템플릿에서 리소스 배포를 참조하세요.
다음 예제에서는 스토리지 계정을 배포하려고 시도하고 유효성 검사 오류가 발생합니다.
메시지를 선택하여 세부 정보를 확인합니다. 템플릿에 오류 코드 InvalidTemplate
가 있는 구문 오류가 있습니다.
요약은 식에 닫는 괄호가 없음을 보여줍니다.
배포 전에 ARM 템플릿의 유효성을 검사하려면 Test-AzResourceGroupDeployment를 실행합니다.
Test-AzResourceGroupDeployment `
-ResourceGroupName examplegroup `
-TemplateFile azuredeploy.json
출력에는 템플릿 문제를 해결하고 수정하는 데 사용할 수 있는 오류 코드가 InvalidTemplateDeployment
AccountNameInvalid
표시됩니다.
Bicep 파일의 경우 구문 유효성 검사 문제의 출력에 매개 변수 오류가 표시됩니다.
Test-AzResourceGroupDeployment: Cannot retrieve the dynamic parameters for the cmdlet.
Cannot find path '/tmp/11111111-1111-1111-1111-111111111111/main.json' because it does not exist.
더 많은 문제 해결 정보를 얻으려면 Bicep 빌드 명령을 사용합니다. 출력은 각 오류의 줄과 열 번호를 괄호로 표시하고 오류 메시지를 표시합니다.
bicep build main.bicep
/azuredeploy.bicep(22,51) : Error BCP064: Found unexpected tokens in interpolated expression.
/azuredeploy.bicep(22,51) : Error BCP004: The string at this location is not terminated due to an
unexpected new line character.
기타 범위
구독, 관리 그룹 및 테넌트 범위에 대한 배포 템플릿의 유효성을 검사하는 Azure PowerShell cmdlet이 있습니다.
배포 전에 ARM 템플릿의 유효성을 검사하려면 az deployment group validate를 실행합니다.
az deployment group validate \
--resource-group examplegroup \
--template-file azuredeploy.json
출력에는 템플릿 문제를 해결하고 수정하는 데 사용할 수 있는 오류 코드가 InvalidTemplateDeployment
AccountNameInvalid
표시됩니다.
Bicep 파일의 경우 출력은 각 오류의 줄과 열 번호를 괄호로 표시하고 오류 메시지를 표시합니다.
az deployment group validate \
--resource-group examplegroup \
--template-file main.bicep
/azuredeploy.bicep(22,51) : Error BCP064: Found unexpected tokens in interpolated expression.
/azuredeploy.bicep(22,51) : Error BCP004: The string at this location is not terminated due to an
unexpected new line character.
기타 범위
구독, 관리 그룹 및 테넌트 범위에 대한 배포 템플릿의 유효성을 검사하는 Azure CLI 명령이 있습니다.
배포 오류
Azure 리소스를 배포하기 위해 여러 작업이 처리됩니다. 배포 오류는 작업이 유효성 검사를 통과하지만 배포 중에 실패할 때 발생합니다. 리소스 그룹에 대한 각 배포 작업 및 각 배포에 대한 메시지를 볼 수 있습니다.
배포 작업에 대한 메시지를 보려면 리소스 그룹의 활동 로그를 사용합니다.
Azure 포털에로그인합니다.
리소스 그룹으로 이동하여 배포의 리소스 그룹 이름을 선택합니다.
활동 로그를 선택합니다.
필터를 사용하여 작업의 오류 로그를 찾습니다.
오류 로그를 선택하여 작업의 세부 정보를 확인합니다.
배포 결과를 보려면 다음을 수행합니다.
리소스 그룹으로 이동합니다.
설정>배포를 차례로 선택합니다.
배포에 대한 오류 세부 정보를 선택합니다.
오류 메시지 및 오류 코드 NoRegisteredProviderFound
가 표시됩니다.
PowerShell을 사용하여 배포의 작업 메시지를 보려면 Get-AzResourceGroupDeploymentOperation을 사용합니다.
배포에 대한 모든 작업을 표시하려면 다음을 수행합니다.
Get-AzResourceGroupDeploymentOperation `
-DeploymentName exampledeployment `
-ResourceGroupName examplegroup
특정 속성 형식을 지정하려면 다음을 수행합니다.
(Get-AzResourceGroupDeploymentOperation `
-DeploymentName exampledeployment `
-ResourceGroupName examplegroup).StatusCode
배포 결과를 얻으려면 Get-AzResourceGroupDeployment를 사용합니다.
Get-AzResourceGroupDeployment `
-DeploymentName exampledeployment `
-ResourceGroupName examplegroup
기타 범위
구독, 관리 그룹 및 테넌트 범위에 대한 배포 정보를 가져오는 Azure PowerShell cmdlet이 있습니다.
Azure CLI를 사용하여 배포의 작업 메시지를 보려면 az deployment operation group list를 사용합니다.
배포에 대한 모든 작업을 표시하려면 다음을 수행합니다.
az deployment operation group list \
--name exampledeployment \
--resource-group examplegroup \
--query "[*].properties"
특정 속성 형식을 지정하려면 다음을 수행합니다.
az deployment operation group list \
--name exampledeployment \
--resource-group examplegroup \
--query "[*].properties.statusCode"
배포 결과를 얻으려면 az deployment group show를 사용합니다.
az deployment group show \
--resource-group examplegroup \
--name exampledeployment
기타 범위
구독, 관리 그룹 및 테넌트 범위에 대한 배포 정보를 가져오는 Azure CLI 명령이 있습니다.
다음 단계