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

本文逐步说明如何在资源组或订阅之间移动 Linux VM。 如果在个人订阅中创建了 VM,现在想要将其移到公司的订阅,则在订阅之间移动 VM 会很方便。

Important

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

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

使用 Azure CLI 移动 VM

若要成功移动 VM,需要移动 VM 及其所有支持资源。 使用 azure group show 命令列出资源组中的所有资源及其 ID。 这有助于通过管道将此命令的输出发送到文件,以便将 ID 复制并粘贴到后续命令中。

azure group show <resourceGroupName>

若要将 VM 及其资源移到其他资源组,请使用 azure resource move CLI 命令。 以下示例说明如何移动 VM 及其所需的大多数通用资源。 我们使用 -i 参数,并针对要移动的资源传入逗号分隔的 ID 列表(不包含空格)。

vm=/subscriptions/<sourceSubscriptionID>/resourceGroups/<sourceResourceGroup>/providers/Microsoft.Compute/virtualMachines/<vmName>
nic=/subscriptions/<sourceSubscriptionID>/resourceGroups/<sourceResourceGroup>/providers/Microsoft.Network/networkInterfaces/<nicName>
nsg=/subscriptions/<sourceSubscriptionID>/resourceGroups/<sourceResourceGroup>/providers/Microsoft.Network/networkSecurityGroups/<nsgName>
pip=/subscriptions/<sourceSubscriptionID>/resourceGroups/<sourceResourceGroup>/providers/Microsoft.Network/publicIPAddresses/<publicIPName>
vnet=/subscriptions/<sourceSubscriptionID>/resourceGroups/<sourceResourceGroup>/providers/Microsoft.Network/virtualNetworks/<vnetName>
diag=/subscriptions/<sourceSubscriptionID>/resourceGroups/<sourceResourceGroup>/providers/Microsoft.Storage/storageAccounts/<diagnosticStorageAccountName>
storage=/subscriptions/<sourceSubscriptionID>/resourceGroups/<sourceResourceGroup>/providers/Microsoft.Storage/storageAccounts/<storageAcountName>      

azure resource move --ids $vm,$nic,$nsg,$pip,$vnet,$storage,$diag -d "<destinationResourceGroup>"

如果要将 VM 及其资源移到其他订阅,请添加 --destination-subscriptionId <destinationSubscriptionID> 参数来指定目标订阅。

如果从 Windows 计算机上的命令提示符操作,需要在声明变量名称时在其前面添加 $。 在 Linux 中不需要这样做。

系统将要求确认是否想要移动指定的资源。 请键入 Y 确认要删除资源。

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

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

  1. 打开 Azure 门户
  2. 单击“浏览” > “虚拟机”,然后从列表中选择要移动的 VM。

    “基本功能”部分的屏幕截图,其中你单击铅笔图标以打开“移动资源”边栏选项卡。

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

    “移动资源”边栏选项卡的屏幕截图。

  4. 选择要移动的每个资源。 大多数情况下,应移动列出的所有可选资源。
  5. 选择要将 VM 移到的 订阅
  6. 选择一个现有资源组,或者键入名称以创建新的资源组。
  7. 完成后,选择你了解将创建新的资源 ID 并且移动后需要将这些资源 ID 用于 VM,然后单击“确定”。

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

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

  1. 打开 Azure 门户
  2. 单击“浏览” > “资源组”,然后选择包含 VM 的资源组。
  3. 从“资源组”边栏选项卡上的菜单中选择“移动”。

    “资源组”菜单中的“移动”按钮屏幕截图。

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

    “移动资源”边栏选项卡的屏幕截图。

后续步骤

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