Azure ARM 템플릿 유효성 검사 오류를 해결하려면 어떻게 해야 합니까?
Azure ARM 템플릿 파일을 약간 변경했는데 xplat cli를 통해 배포하거나 검증하려고 하면 다음 메시지가 표시됩니다.
오류: 잘못된 TemplateDeployment: 템플릿 배포 'fakeDeploymentName'은(는) 유효성 검사 절차에 따라 유효하지 않습니다.추적 ID는 \"여기서 GUID의 일종\"입니다.자세한 내용은 내부 오류를 참조하십시오.사용에 대한 자세한 내용은 http://aka.ms/arm-deploy 을 참조하십시오.
오류: PreflightValidationCheckFailed: PreflightValidationFailed: PreflightValidation에 실패했습니다.구체적인 오류는 상세 내용을 참조하시기 바랍니다.
이 문제를 해결하고 싶지만 콘솔에 "내부 오류"가 없습니다.매번 고유한 GUID를 제공하므로 이 GUID를 사용하여 보다 유용한 메시지를 찾을 수 있습니다.어디에서 더 자세한 오류를 볼 수 있습니까?(아직 오류의 실제 원인에 대한 도움말을 찾지 않음)
zure 포털 portal.azure.com 에 로그인합니다.
활동 로그 열기
활동 목록에서 검증 작업 이름이 포함된 레코드를 찾습니다.실패했기 때문에 빨간색 느낌표가 있어야 합니다.
그 기록을 클릭하세요.그런 다음 하단의 JSON 탭을 클릭합니다.읽기를 시작하면 반환된 Json의 어딘가 깊은 곳에서 "helloworld라는 이름의 스토리지 계정이 이미 사용되었습니다."와 같은 오류를 발견할 수 있습니다.
최신 버전의 CLI를 실행하고 있는지 확인하십시오. 자세한 오류를 표시하기 위해 작업 중입니다.그래도 문제가 해결되지 않으면 https://github.com/Azure/azure-xplat-cli/issues 에 문의하십시오.
그런 다음 로그에 세부 정보가 표시되지 않으면 -vv 스위치를 사용하여 배포를 실행합니다. 자세한 디버그 출력(자세히 설명하는 동안)에 모든 오류 메시지가 표시되고 일반적으로 특정 오류를 검색할 수 있습니다.
azure group deployment create ... --debug
파워셸:
New-AzResourceGroupDeployment ... -debug
제공된 추적 ID로 다음 PowerShell Azure cmdlet을 실행합니다.
Get-AzureRMLog -CorrelationId xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx -DetailedOutput
nftw의 답변을 기반으로...
사용한 오류 문제를 더 빠르고 쉽게 찾기grep그리고.less다음과 같은 변수를 사용합니다.
$correlationId ='xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx' # store your correlation ID here
Get-AzureRmLog -CorrelationId $correlationID -DetailedOutput | grep -C 10 $correlationID | less
제가 테스트한 결과 오류가 출력 상단에 가까웠습니다.사용할 수 있습니다.less오류를 더 빨리 찾기 위해 앞으로 이동 키와 검색 "오류"를 사용할 수 있습니다.
트래킹 ID는 사용자가 아닌 로그를 확인하기 위한 기술 지원을 위한 것이라고 생각합니다.당신의 정확한 질문과 관련하여, 당신은 로그 - 참조를 살펴볼 필요가 있습니다.
템플릿의 유효성을 검사하는 또 다른 좋은 방법은 리소스 탐색기를 사용하는 것입니다.
@nftw 기반 건물:
$deploymentGroupName = 'deploymentGroupName'
$correlationId = ((Get-AzureRMLog -ResourceGroup $deploymentGroupName)[0]).CorrelationId
$logentry = (Get-AzureRMLog -CorrelationId $correlationId -DetailedOutput)
#$logentry
$rawStatusMessage = $logentry.Properties
$status = $rawStatusMessage.Content.statusMessage | ConvertFrom-Json
$status.error.details
$status.error.details.details
저는 같은 문제에 관련되어 있었습니다.기본적으로 "InvalidTemplateDeployment"에 전달된 세부 정보를 얻을 수 없습니다.
Visual Studio: Azure Resource Group 프로젝트 템플릿에 ARM 템플릿을 추가하고 배포하려고 했습니다.출력 탭에서 자세한 내용을 확인했습니다.그것은 제 문제를 해결하는 데 도움이 되었습니다.
제 경우에는 클러스터의 이름으로, 작은 문자와 숫자만 사용할 수 있습니다.
az vm list [--only-show-errors]
[--resource-group]
[--show-details]
[--subscription]
언급URL : https://stackoverflow.com/questions/37664294/how-can-i-troubleshoot-azure-arm-template-validation-errors
'codememo' 카테고리의 다른 글
| *ng템플릿에 있는 경우 (0) | 2023.04.28 |
|---|---|
| WPF 창에서 제목 표시줄을 사라지게 하는 방법은 무엇입니까? (0) | 2023.04.28 |
| Angular 2에서 'DOM Element'를 얻는 방법은? (0) | 2023.04.28 |
| Git에서 HEAD, 작업 트리와 인덱스의 차이점은 무엇입니까? (0) | 2023.04.28 |
| configSections 요소는 설정 파일마다 1개만 허용되며 존재하는 경우 루트 설정 요소의 첫 번째 아이여야 합니다. (0) | 2023.04.23 |