Azure Resource Group 간에 Resource 옮기기

제목과 동일하게, Azure에서 Resource Group 간에 리소스를 옮기는 방법입니다.

물론, Azure Portal(http://portal.azure.com)에서도 이동을 가능하게 할 수 있습니다. 히지만, 여러 개의 리소스를 한꺼번에 옮기려고 하는 경우에는 PowerShell이 훨씬 더 편하겠죠.

각설하고, PowerShell 구문은 다음과 같습니다.

Login-AzureRmAccount #Azure로 로그인

$subscriptionName = “your subscription name” #작업하려는 구독(subscription)의 이름

Select-AzureRmSubscription -SubscriptionName $subscriptionName #구독 선택

$resourceName = “your resource name” #옮기려는 리소스의 이름
$srcResourceGroupName = “source resource group”    #옮기려는 원본 리소스가 위치하고 있는 리소스 그룹
$destResourceGroupName = “destination resource group” #옮길 대상 리소스 그룹

$resource = Get-AzureRmResource -ResourceName $resourceName -ResourceGroupName $srcResourceGroupName
Move-AzureRmResource -DestinationResourceGroupName $destResourceGroupName -ResourceId $resource.ResourceId

 

추가 : 2016-06-08 17:43

때오님께서 설명은 여러 개를 옮긴다고 하고, 코드는 하나를 옮기는거를 적었다는 징징거림이 있어서 추가합니다. (본인도 할줄 알면서 말이죠)

Login-AzureRmAccount #Azure로 로그인

$subscriptionName = “your subscription name” #작업하려는 구독(subscription)의 이름

Select-AzureRmSubscription -SubscriptionName $subscriptionName #구독 선택

$resourceGroupName = “source resource group”    #옮기려는 원본 리소스가 위치하고 있는 리소스 그룹
$destResourceGroupName = “destination resource group” #옮길 대상 리소스 그룹

 

Get-AzureRmResource | Where-Object {$_.ResourceGroupName -eq $resourceGroupName} | Select Name, ResourceType | ForEach-Object {
$resource = Get-AzureRmResourceResourceName $_.Name -ResourceGroupName $srcResourceGroupName
Move-AzureRmResource -DestinationResourceGroupName $destResourceGroupName -ResourceId $resource.ResourceId
}

Advertisements