虚拟机的软删除

VM 的软删除可保护 VM 的备份免遭意外删除。 即使删除了备份,这些备份也会以软删除状态再保留 14 天。

注意

软删除只是保护已删除的备份数据。 如果删除未备份的 VM,则软删除功能不会保留数据。 应使用 Azure 备份保护所有资源,以确保能够完全复原。

使用 Azure 门户对 VM 进行软删除

  1. 若要删除 VM 的备份数据,必须停止备份。 在 Azure 门户中,转到“恢复服务保管库”,右键单击备份项,然后选择“停止备份”。

    Screenshot of Azure portal Backup Items

  2. 在接下来的窗口中,会提供用于删除或保留备份数据的选项。 如果依次选择“保留备份数据”、“停止备份”,则不会永久删除 VM 备份。 相反,这会停止所有计划的备份作业并保留备份数据。 在这种情况下,策略中设置的保留期不适用于备份数据。 它会继续定价,直到手动删除数据。 如果选择“删除备份数据”,则会将一封“删除”警报电子邮件发送到配置的电子邮件 ID,告知用户备份数据将延期保留 14 天。 在第 12 天时也会发送一封警报电子邮件,告知还有两天时间可以恢复已删除的数据。 删除会推迟到第 15 天,到时数据将永久删除,同时系统会发送最后一封警报电子邮件,告知数据已永久删除。

    Screenshot of Azure portal, Stop Backup screen

  3. 在这 14 天内,恢复服务保管库中已软删除的 VM 旁边会显示一个红色的“软删除”图标。

    Screenshot of Azure portal, VM in soft delete state

    注意

    如果保管库中存在任何已软删除的备份项,此时无法删除该保管库。 请在永久删除了备份项且保管库中未留下任何处于软删除状态的项之后,尝试删除保管库。

  4. 若要还原软删除的 VM,必须先将其取消删除。 若要取消删除,请选择软删除的 VM,然后选择“取消删除”选项。

    Screenshot of Azure portal, Undelete VM

    窗口中会显示一条警告,指出如果选择取消删除,将取消删除 VM 的所有还原点,这些还原点可用于执行还原操作。 VM 将保留为“停止保护并保留数据”状态,备份将会暂停,备份数据将永久保留,且没有任何生效的备份策略。

    Screenshot of Azure portal, Confirm undelete VM

    此时,还可以通过从选定还原点中选择“还原 VM”来还原 VM。

    Screenshot of Azure portal, Restore VM option

    注意

    只有在用户执行“恢复备份”操作后,垃圾回收器才会运行并清理已过期的恢复点。

  5. 取消删除操作完成后,状态将恢复为“停止备份并保留数据”,然后,你可以选择“恢复备份”。 “恢复备份”操作会恢复处于活动状态的、与定义备份和保留计划的用户所选的备份策略相关联的备份项。

    Screenshot of Azure portal, Resume backup option

使用 Azure PowerShell 对 VM 进行软删除

重要

使用 Azure PowerShell 进行软删除所需的 Az.RecoveryServices 版本最低为 2.2.0。 可使用 Install-Module -Name Az.RecoveryServices -Force 获取最新版本。

如上所述 Azure 门户,使用 Azure PowerShell 时,步骤顺序是相同的。

使用 Azure PowerShell 删除备份项

使用 Disable-AzRecoveryServicesBackupProtection PowerShell cmdlet 删除备份项。

Disable-AzRecoveryServicesBackupProtection -Item $myBkpItem -RemoveRecoveryPoints -VaultId $myVaultID -Force

WorkloadName     Operation            Status               StartTime                 EndTime                   JobID
------------     ---------            ------               ---------                 -------                   -----
AppVM1           DeleteBackupData     Completed            12/5/2019 12:44:15 PM     12/5/2019 12:44:50 PM     0488c3c2-accc-4a91-a1e0-fba09a67d2fb

备份项的“DeleteState”将从“NotDeleted”更改为“ToBeDeleted”。 备份数据会保留 14 天。 如果要还原删除操作,则应执行撤消-删除操作。

使用 Azure PowerShell 撤销删除操作

首先,提取处于软删除状态(也就是即将删除)的相关备份项。


Get-AzRecoveryServicesBackupItem -BackupManagementType AzureVM -WorkloadType AzureVM -VaultId $myVaultID | Where-Object {$_.DeleteState -eq "ToBeDeleted"}

Name                                     ContainerType        ContainerUniqueName                      WorkloadType         ProtectionStatus     HealthStatus         DeleteState
----                                     -------------        -------------------                      ------------         ----------------     ------------         -----------
VM;iaasvmcontainerv2;selfhostrg;AppVM1    AzureVM             iaasvmcontainerv2;selfhostrg;AppVM1       AzureVM              Healthy              Passed               ToBeDeleted

$myBkpItem = Get-AzRecoveryServicesBackupItem -BackupManagementType AzureVM -WorkloadType AzureVM -VaultId $myVaultID -Name AppVM1

然后,使用 Undo-AzRecoveryServicesBackupItemDeletion PowerShell cmdlet 执行撤消删除操作。

Undo-AzRecoveryServicesBackupItemDeletion -Item $myBKpItem -VaultId $myVaultID -Force

WorkloadName     Operation            Status               StartTime                 EndTime                   JobID
------------     ---------            ------               ---------                 -------                   -----
AppVM1           Undelete             Completed            12/5/2019 12:47:28 PM     12/5/2019 12:47:40 PM     65311982-3755-46b5-8e53-c82ea4f0d2a2

备份项的“DeleteState”将还原为“NotDeleted”。 但保护仍处于停止状态。 恢复备份以重新启用保护。

使用 REST API 对 VM 进行软删除

  • 此处所述,使用 REST API 删除备份。
  • 如果你想要撤消这些删除操作,请参阅此处所述的步骤。

如何禁用软删除

建议不要禁用此功能。 唯一应该考虑禁用软删除的情况是,你打算将受保护的项移到新保管库,需要在删除后重新进行保护,因此等不及要求的 14 天(例如在测试环境中)。有关如何禁用软删除的说明,请参阅启用和禁用软删除

后续步骤