2016-11-16 6 views
1

PowerShell 및 ARM 라이브러리를 사용하여 새 웹 응용 프로그램 (응용 프로그램 서비스)을 만드는 경우 이름, ResourceGroupName 및 위치를 제공해야합니다. 앱 서비스 계획은 선택 사항입니다.
https://msdn.microsoft.com/en-us/library/mt619250.aspxPowerShell에서 새 웹 응용 프로그램을 만들 때 '위치'가 필요한 이유 ARM

당신이 필요한 매개 변수와 이름이 'Default_n'로 만들어집니다 다음 새 AppServicePlan을 AppServicePlan을 지정하고 웹 애플리케이션과 같은 위치를하지 않고도 웹 애플리케이션을 작성하는 경우. 당신이 WepApp보다 다른 위치와 함께 AppServicePlan를 지정 '않는'경우

지금 :
PS New-AzureRmWebApp -Name TestWebApp -ResourceGroupName -DefaultResourceGroup -AppServicePlan MyServicePlan -Location EastAsia

는 생성 된 출력은 '새로 만든'웹 애플리케이션의 위치는 동아시아가 있지만임을 명시합니다 AppServicePlan의 위치가 다릅니다.

그러나 ARM 포털에서 결과를 보면 웹 애플리케이션이 AppServicePlan의 위치를 ​​상속 받았음을 알 수 있습니다. 어느 ... 예상 할 수
하고 실제로는 PS를 사용하여 자원을 보면 다음과 같은 경우, 또한
그런 Find-AzureRmResource -ResourceNameContains TestWebApp
당신이 웹 애플리케이션의 위치는 컨테이너 AppServicePlan과 동일 함을 확인할 수 있습니다 ..

을 ARM 포털을 사용하여 새 웹 애플리케이션을 만들려고하면 위치를 지정할 수 없습니다. 앱 서비스 플랜을 지정해야합니다. App Service Plan의 위치는 논리적 인 것처럼 보이는 WebApp의 위치를 ​​결정합니다.

그래서 Azure 웹 애플리케이션을 만들 때 위치를 지정하는 것은 무엇입니까?

답변

1

귀하의 질문에 대한 답을 직접적으로 찾지는 못했지만 여기에 제공 할만큼 충분히 중요하다고 느낍니다. 나는 웹 애플리케이션과 App Service Plan을 담고있는 ARM 템플릿을 실험 해왔다. 따라서 템플릿의 내용은 다음과 같습니다.

내 파트에 복사 - 붙여 넣기 오류가 발생하여 많은 시간을 소모해야했습니다. 그 행동은 당신이 묘사 한 것과 똑같습니다. 따라서 템플리트를 배치하면 웹 애플리케이션에 App Service Plan의 위치가 올바르게 지정됩니다 (그렇지 않으면 이해가되지 않기 때문에). 그러나이 템플리트를 재배포하면 웹 애플리케이션이 따라서 위치를 만들려고 시도한 위치에 다른 위치를 만들 수 없습니다 (웹 서비스 자체가 북유럽 인 리소스 그룹의 위치를 ​​차지하고 App Service Plan이 서유럽에 배포 되었기 때문에 ARM 엔진은이 2 개의 웹 애플리케이션이 2 개의 다른 자원이라고 생각했습니다.)
슬프지만 나는 (최소한 ARM 로직의 버그를 말하지 않는다면) 마이크로 소프트 파트를 간과한다고 믿는다.
내가 말했듯이, 이것은 당신의 질문에 대한 직접적인 대답은 아니지만, 질문에 대해 약간의 빛을 비추고 있다고 생각합니다.

+0

예, 테스트를 실행했으며 동일한 동작입니다! 생성시 WebApp 위치를 제공 할 수있는 것처럼 보이지만 결국에는 해당 ServicePlan의 위치가 복제됩니다. 일부 위치에서 웹 애플리케이션을 생성하는 유일한 방법은 PS 코드에서 서비스 계획을 생략하는 것입니다. 다른 모든 경우에 위치를 제공하는 것은 쓸데없는 것처럼 보입니다. –

+0

예. 나는 마이크로 소프트의 입장에서 그렇게 나쁘다고 말한다. 나는 이것을 조사 할 누군가를 얻으려고 노력하고있다. – 4c74356b41

1

실제로 동작이 이상합니다. 거래는 다음과 같습니다.

ARM은 추적 된 모든 리소스에 위치가 있어야합니다. 이유는 이것이 사용자가 지정하지 않은 이유입니다.

그러나 일단 위치가 웹 사이트 리소스 공급자에 도착하면 위치는 앱 서비스 계획에 의해 결정되므로 생성시이를 무시합니다. 그러나 나중에 최신 업데이트에서 동작이 다르게 작동하지 않으므로 일치하지 않습니다.

결론은 실제로 이해가되지 않지만 항상 웹 응용 프로그램에서 일치하는 위치를 지정하면됩니다.