删除 VM 和附加的资源

根据你删除 VM 的方式,可能只会删除 VM 资源,而不会删除网络和磁盘资源。 可以更改删除 VM 时删除其他哪些资源的默认设置。

创建 VM 时设置删除选项

若要指定附加的资源在你删除 VM 时会发生什么情况,请使用 delete-option 参数。 每个都可以设置为 Delete(这会在你删除 VM 时永久删除资源),或者设置为 Detach(这只会拆离资源并将其保留在 Azure 中,以便以后可以重用)。 针对使用 CLI 创建的 VM 的默认设置为拆离 OS 磁盘。 你为其设置了 Detach 的资源(如磁盘)会继续产生费用(如果适用)。

  • --os-disk-delete-option - OS 磁盘。
  • --data-disk-delete-option - 数据磁盘。
  • --nic-delete-option - NIC。

在此示例中,我们使用名为 myImage 的映像,在名为 myResourceGroup 的资源组中创建名为 myVM 的 VM,并将 OS 磁盘和 NIC 设置为在删除 VM 时删除。

az vm create \
    --resource-group myResourceGroup \
    --name myVM \
    --image myImage \
    --public-ip-sku Standard \
    --nic-delete-option delete \
    --os-disk-delete-option delete \
    --admin-username azureuser \
    --generate-ssh-keys

更新现有 VM 上的删除行为

可以在删除 VM 时更改行为。

以下示例将删除选项设置为 detach,以便可以重用磁盘。

az resource update --resource-group myResourceGroup --name myVM --resource-type virtualMachines --namespace Microsoft.Compute --set properties.storageProfile.osDisk.deleteOption=detach

VM 的强制删除

使用强制删除,你可以强制删除虚拟机,降低删除延迟并立即释放附加的资源。 对于不需要正常关闭的 VM,Force Delete 将尽快删除 VM,同时从 VM 中缓解逻辑资源,从而绕过正常关闭和某些清理操作。 Force Delete 不会立即释放与 VM 关联的 MAC 地址,因为这是一种物理资源,可能需要最多 10 分钟才能释放。 如果需要在新虚拟机上立即重用 MAC 地址,则不建议强制删除。 仅当不打算重用虚拟硬盘时,才应使用强制删除。 可以通过门户、CLI、PowerShell 和 Rest API 来使用强制删除。

要删除现有 VM 时,可以在“删除”窗格中找到相应选项来应用强制。

  1. 打开门户
  2. 导航到虚拟机。
  3. 在“概览” 页上,选择“删除” 。
  4. 在“删除虚拟机”窗格中,选中“应用强制删除”复选框。
  5. 选择“确定”。

规模集的强制删除

使用强制删除,你可以强制删除虚拟机规模集,降低删除延迟并立即释放附加的资源。 Force Delete 不会立即释放与 VM 关联的 MAC 地址,因为这是一种物理资源,可能需要最多 10 分钟才能释放。 如果需要立即在新 VM 上重用 MAC 地址,则建议不要使用强制删除。 仅当不打算重用虚拟硬盘时,才应使用强制删除。 可以通过门户、CLI、PowerShell 和 Rest API 来使用强制删除。

要删除现有规模集时,可以在“删除”窗格中找到相应选项来应用强制。

  1. 打开门户
  2. 导航到你的虚拟机规模集。
  3. 在“概览” 页上,选择“删除” 。
  4. 在“删除虚拟机规模集”窗格中,选中“应用强制删除”复选框。
  5. 选择“确定”。

FAQ

问:此功能是否适用于共享磁盘?

答:对于共享磁盘,不能将“deleteOption”属性设置为“Delete”。 可以将其留空,或将其设置为“Detach”

问:哪些 Azure 资源支持此功能?

答:用作 OS 磁盘和数据磁盘的所有托管磁盘类型、NIC 和公共 IP 都支持此功能

问:是否可以在未与 VM 关联的磁盘和 NIC 上使用此功能?

答:不可以,此功能仅适用于与 VM 关联的磁盘和 NIC。

问:此功能如何与灵活虚拟机规模集配合使用?

答:对于灵活虚拟机规模集,磁盘、NIC 和 PublicIP 会将 deleteOption 默认设置为 Delete,因此在删除 VM 时,会自动清理这些资源。

对于显式创建并附加到 VM 的数据磁盘,如果希望在删除 VM 后保留磁盘,可以将此属性修改为“Detach”而不是“Delete”。

问:如何保留与 VM 关联的磁盘、NIC 和公共 IP?

答:默认情况下,在删除 VM 时,将会保留与该 VM 关联的磁盘、NIC 和公共 IP。 如果将这些资源配置为自动删除,则可以更新设置,使这些资源在删除 VM 后得以保留。 若要保留这些资源,请将 deleteOption 属性设置为 Detach

后续步骤

若要了解有关基本 VM 管理的详细信息,请参阅教程:使用 Azure CLI 创建和管理 Linux VM