将 Windows VM 移到其他 Azure 订阅或资源组

本文逐步说明如何在资源组或订阅之间移动 Windows VM。 如果最初在个人订阅中创建了 VM,现在想要将其移到公司的订阅以继续工作,则在订阅之间移动 VM 可能很方便。

Important

不可在此时移动托管磁盘。

在移动过程中将创建新的资源 ID。 移动 VM 后,需要更新工具和脚本以使用新的资源 ID。

使用门户将 VM 移到其他订阅

可以使用门户将 VM 及其关联的资源移到其他订阅。

打开Azure 门户

单击“浏览” > “虚拟机”,然后从列表中选择要移动的 VM。

在“基本功能”部分,单击订阅名称旁边的“更改订阅”铅笔图标。 此时将打开“移动资源”边栏选项卡。

选择要移动的每个资源。 大多数情况下,应移动列出的所有可选资源。

选择要将 VM 移到的订阅

选择一个现有资源组,或者键入名称以创建新的资源组。

完成后,选择你了解将创建新的资源 ID 并且移动后需要将这些资源 ID 用于 VM,然后单击“确定”。

使用门户将 VM 移到其他资源组

可以使用门户将 VM 及其关联的资源移到其他资源组。

打开Azure 门户

单击“浏览” > “资源组”,然后选择包含 VM 的资源组。

从“资源组”边栏选项卡上的菜单中选择“移动”。

在“移动资源”边栏选项卡中,选择要移动的资源,然后键入现有资源组名称,或选择创建新资源组。 完成后,选择你了解将创建新的资源 ID 并且移动后需要将这些资源 ID 用于 VM,然后单击“确定”

使用 PowerShell 移动 VM

若要将虚拟机移到其他资源组,需确保同时移动所有依赖资源。 若要使用 Move-AzureRMResource cmdlet,需要资源的名称和类型。 可以通过 Find-AzureRMResource cmdlet 获取这两项信息。

复制

Find-AzureRMResource -ResourceGroupNameContains ""

若要移动 VM,需要移动多个资源。 只需分别创建每个资源的变量,然后列出这些变量即可。 本示例包括 VM 的大多数基本资源,但可以根据需要添加更多资源。

复制

$sourceRG = ""

$destinationRG = ""

$vm = Get-AzureRmResource -ResourceGroupName $sourceRG -ResourceType "Microsoft.Compute/virtualMachines" -ResourceName ""

$storageAccount = Get-AzureRmResource -ResourceGroupName $sourceRG -ResourceType "Microsoft.Storage/storageAccounts" -ResourceName ""

$diagStorageAccount = Get-AzureRmResource -ResourceGroupName $sourceRG -ResourceType "Microsoft.Storage/storageAccounts" -ResourceName ""

$vNet = Get-AzureRmResource -ResourceGroupName $sourceRG -ResourceType "Microsoft.Network/virtualNetworks" -ResourceName ""

$nic = Get-AzureRmResource -ResourceGroupName $sourceRG -ResourceType "Microsoft.Network/networkInterfaces" -ResourceName ""

$ip = Get-AzureRmResource -ResourceGroupName $sourceRG -ResourceType "Microsoft.Network/publicIPAddresses" -ResourceName ""

$nsg = Get-AzureRmResource -ResourceGroupName $sourceRG -ResourceType "Microsoft.Network/networkSecurityGroups" -ResourceName ""

Move-AzureRmResource -DestinationResourceGroupName $destinationRG -ResourceId $vm.ResourceId, $storageAccount.ResourceId, $diagStorageAccount.ResourceId, $vNet.ResourceId, $nic.ResourceId, $ip.ResourceId, $nsg.ResourceId

若要将资源移到其他订阅,请包含-DestinationSubscriptionId参数的值。

复制

Move-AzureRmResource -DestinationSubscriptionId "" -DestinationResourceGroupName $destinationRG -ResourceId $vm.ResourceId, $storageAccount.ResourceId, $diagStorageAccount.ResourceId, $vNet.ResourceId, $nic.ResourceId, $ip.ResourceId, $nsg.ResourceId

系统会要求你确认你需要移动指定资源。 请键入Y确认要删除资源。

后续步骤

可以在资源组和订阅之间移动许多不同类型的资源。 有关详细信息,请参阅将资源移到新资源组或订阅

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容