0

리소스 그룹 (예 : 네트워크 인터페이스 등의 종속 리소스가있는 VM 포함)을 새 구독 및 리소스 그룹으로 이동하려고합니다.Powershell을 사용하여 Azure 리소스를 다른 구독으로 이동

내 스크립트 (GUI를 통해 수행하는 경우 이동은 잘 작동) :

foreach ($resource in $resources) {Move-AzureRmResource 
-DestinationResourceGroupName "newresourcegroup" -ResourceId $resource.resourceID -DestinationSubscriptionId 123456} 

자사가

입주 AzureRmResource과 실패 : { "오류": { "코드" " ResourceMoveProviderValidationFailed ","메시지 ":".. 자원 이동 유효성 검사가 세부 사항을 참조하십시오 실패 진단 정보 : 타임 스탬프

등 ...

은 "움직임 자원 요청은 모든 종속 자원을 포함하지 않습니다. \ "코드 \": \ "MissingMoveDependentResources \", \ "message \": \ "리소스가없는 리소스 누락 된 리소스에 대한 오류 정보를 확인하십시오 : 리소스 이동 요청에 모든 종속 리소스가 들어 있지 않습니다. 누락 된 리소스 ID에 대한 오류 정보를 확인하십시오. ""대상 : "Microsoft.Network/networkInterfaces", "메시지": "{\"오류 \ ": \"코드 \ ": \ "MissingMoveDependentResources \", \ "message \": \ " 리소스 이동 요청에 모든 종속 리소스가 포함되어 있지 않습니다. 자원 IDS

는 분명히 어떻게 든 종속 자원을 지정해야 누락 된 세부 사항을 확인하지만, 이동-AzureRmResource 모듈의 "종속 리소스"에 대한 매개 변수가있을 나타나지 않습니다하시기 바랍니다.

a. 종속 리소스가 무엇인지 어떻게 확인할 수 있습니까?

b. 이동 cmdlet에서이를 어떻게 지정합니까?

답변

0

움직임 자원 요청이 스크립트에 따라 모든 종속 자원

를 포함하지 않습니다, 당신은 단지 자원을 통해 통과하고 새 구독 다른 자원 그룹에 하나씩 이동할 것으로 보인다. 그러나 우리가 알듯이 일부 리소스에는 종속 리소스가있을 수 있으므로 이러한 유형의 리소스 (예 : 가상 컴퓨터 등)를 이동하려면 종속 리소스를 모두 이동해야합니다. 그렇지 않으면 이동 작업이 실패합니다.

서비스를 이전하기 전에 what services that enable move and limitations을 알아야합니다. 또한 종속 리소스가 필요한 리소스를 이동하는 방법을 알고 싶으면 Use Powershell to move a VM을 참조하십시오. 입주 AzureRmResource -DestinationResourceGroupName $ destinationRG -ResourceId $ vm.ResourceId, $ storageAccount.ResourceId, $ diagStorageAccount.ResourceId, $ vNet.ResourceId, $ nic.ResourceId, $ IP 다음 linksFred에 대한

+0

덕분에, 스크립트는 이것이다. ResourceId, $ nsg.ResourceId –

+0

VM, VNet, NIC 등의 인프라 리소스를 이동하는 경우 VM에 연결된 VHD를 새 구독 및 저장 템플릿 배포에서 저장소 계정으로 복사하는 것이 더 쉬울 수도 있습니다. 템플릿에는 이미 모든 현재 구성이 포함되며 기존 VHD를 사용하면 전체 리소스 그룹을 그대로 다시 만들 수 있습니다. 현재 템플릿을 얻으려면 Azure Portal에서 리소스 그룹의 블레이드로 이동 한 다음 자동화 스크립트로 이동하십시오. –

+0

감사합니다. Tomasz,이 경우 위에서 언급 한 것처럼 powershell move 명령을 사용하는 것이 더 빠릅니다. –

관련 문제