我有一个新的Azure订阅,但在之前的订阅中有现有的VM。将我的VM移动到新订阅的最简单/最好的方法是什么?
感谢阅读。
答案 0 :(得分:1)
我不知道是否还有其他选项,但您可以使用powershell执行此操作:
# Copy a virtual machine to a different subscription (no VNET)
.\vmcopy.ps1 -SourceSubscription "source subscription" `
-DestinationSubscription "destination subscription" `
-VirtualMachineName "existingvmname" `
-SourceServiceName "sourcecloudservice" `
-DestinationServiceName "destinationcloudservice" `
-DestinationStorageAccount "destinationstorageaccount" `
-Location "West US"
# Copy a virtual machine to a different subscription and specify an existing virtual network and subnet.
.\vmcopy.ps1 -SourceSubscription "source subscription" `
-DestinationSubscription "destination subscription" `
-VirtualMachineName "existingvmname" `
-SourceServiceName "sourcecloudservice" `
-DestinationServiceName "destinationcloudservice" `
-DestinationStorageAccount "destinationstorageaccount" `
-VNETName "DestinationVNET" `
-SubnetName "DestinationSubnet"
来源/更多信息
http://michaelwasham.com/2014/01/21/copy-a-windows-azure-virtual-machine-between-subscriptions/
答案 1 :(得分:0)
对于那些怀疑是否有更好选择的人:是的,有。
如果您想move
而不是copy
(正如Thiago建议的那样),您应该执行以下操作:
使用以下内容创建JSON文件:
{
"targetResourceGroup": "/subscriptions/<TARGET-SUBSCRIPTION-ID>/resourceGroups/<TARGET-RESOURCEGROUP-NAME>",
"resources": [
"<SOURCE-RESOURCE-ID>"
]
}
请注意,您可能拥有多个属于VM的资源:VM,云服务,存储帐户,VNet,保留IP,... 您需要将所有这些资源的资源ID添加到上面的JSON中。
然后你可以运行:
armclient post https://management.azure.com/subscriptions/<SOURCE-SUBSCRIPTION-ID>/resourceGroups/<SOURCE-RESOURCEGROUP>/moveResources?api-version=2015-01-01 @<PAHT_TO_JSON> -verbose
在您的命令行上。您将使用armclient
choco
choco install armclient