上一篇文章我们了解了Azure Backup,接下来通过本文我们在来了解下Azure Backup是如何备份Azure VM的。

首先我们来了解下Azure Backup 备份Azure VM的过程:

  1. 对于选择进行备份的Azure VM,Azure Backup会根据您指定的备份计划启动备份作业。

  2. 在第一次备份期间,如果VM正在运行,则会在VM上安装备份扩展。

    • 对于Windows VM,将安装VMSnapshot扩展。

    • 对于Linux VM,将安装VMSnapshotLinux扩展。

  3. 对于正在运行的Windows VM,备份与Windows卷影复制服务(VSS)协调,以获取VM的应用程序一致性快照。

    • 默认情况下,Backup采用完整的VSS备份。

    • 如果Backup无法获取应用程序一致性快照,则它将获取底层存储的文件一致性快照(因为在VM停止时不会发生应用程序写入)。

  4. 对于Linux VM,Backup采用文件一致性备份。对于应用程序一致性快照,您需要手动自定义前/后脚本。

  5. 备份获取快照后,它会将数据传输到Vault。

    • 通过并行备份每个VM磁盘来优化备份。

    • 对于正在备份的每个磁盘,Azure Backup会读取磁盘上的块,并仅识别和传输自上次备份以来更改的数据块(增量)。

    • 快照数据可能不会立即复制到Vault中。在高峰时段可能需要几个小时。对于每日备份策略,VM的总备份时间将少于24小时。

  6. 数据传输完成后,将删除快照,并创建恢复点。

利用Azure Backup 备份虚拟机之二:关于Azure虚机备份_第1张图片

使用Azure Backup备份Azure VM时,VM将使用存储服务加密(SSE)进行静态加密。Azure备份还可以备份使用Azure磁盘加密进行加密的Azure VM。


对于托管和非托管Azure VM,Backup仅支持使用BEK加密的VM或使用BEK加密的VM以及KEK。

备份的BEK(机密)和KEK(密钥)已加密。只有当授权用户将其恢复到密钥保险库时,才能读取和使用它们。未经授权的用户和Azure都无法读取或使用备份密钥或机密。

BEK也备份。因此,如果BEK丢失,授权用户可以将BEK还原到密钥保管库并恢复加密的VM。只有具有必要权限级别的用户才能备份和还原加密的VM或密钥和机密。

快照的创建

Azure Backup根据备份计划拍摄快照。

  • Windows VM:对于Windows VM,备份服务与VSS协调以获取VM磁盘的应用程序一致性快照。

    • 默认情况下,Azure Backup采用完整的VSS备份。

    • 若要更改设置以使Azure备份执行VSS复制备份,请从命令提示符处设置以下注册表项:

      REG添加“HKLM \ SOFTWARE \ Microsoft \ BcdrAgent”/ v USEVSSCOPYBACKUP / t REG_SZ / d TRUE / f

  • Linux VM:要获取Linux VM的应用程序一致性快照,请使用Linux预脚本和后脚本框架编写自己的自定义脚本以确保一致性。

    • Azure Backup仅调用您编写的前/后脚本。

    • 如果预脚本和后脚本成功执行,则Azure Backup会将恢复点标记为应用程序一致。但是,当您使用自定义脚本时,您最终要对应用程序的一致性负责。

快照的一致性

下表介绍了不同类型的快照一致性:

加密

详细信息

支持

Azure磁盘加密

Azure磁盘加密可加密Azure VM的操作系统和数据磁盘。
  Azure
磁盘加密与BitLocker加密密钥(BEK)集成,后者在密钥保险库中作为机密保护。Azure磁盘加密还与Azure Key Vault密钥加密密钥(KEK)集成。

Azure备份支持仅使用BEK加密的托管和非托管Azure VM的备份,或者使用BEKKEK一起备份。
  BEK
KEK都经过备份和加密。
 
由于备份了KEKBEK,因此具有必要权限的用户可以根据需要将密钥和密钥还原回密钥保管库。这些用户还可以恢复加密的VM
 
未经授权的用户或Azure无法读取加密的密钥和机密。

SSE

使用SSEAzure存储通过在存储数据之前自动加密数据来提供静态加密。Azure存储还会在检索数据之前解密数据。

Azure备份使用SSE进行Azure VM的静态加密。

备份和还原注意事项

快照

详细信息

恢复

注意事项

应用程序一致

应用程序一致性备份捕获内存内容和挂起的I / O操作。应用程序一致性快照使用VSS编写器(或Linux的前/后脚本)来确保在备份发生之前应用程序数据的一致性。

当您使用应用程序一致性快照恢复VM时,VM会启动。没有数据损坏或丢失。应用程序以一致的状态启动。

Windows:所有VSS编写器都成功了
 
  Linux
:前/后脚本已配置并成功完成

文件系统一致

文件系统一致性备份通过同时拍摄所有文件的快照来提供一致性。
 
 

当您使用文件系统一致性快照恢复VM时,VM将启动。没有数据损坏或丢失。应用需要实施自己的修复机制,以确保恢复的数据一致。

Windows:某些VSS编写器
  Linux 
失败:默认(如果未配置前置/后置脚本或失败)

故障一致

如果Azure VM在备份时关闭,则通常会发生故障一致性快照。仅捕获并备份备份时磁盘上已存在的数据。
 
故障一致性恢复点不保证操作系统或应用程序的数据一致性。

虽然没有保证,但VM通常会启动,然后启动磁盘检查以修复损坏错误。在崩溃之前未传输到磁盘的任何内存数据或写入操作都将丢失。应用程序实施自己的数据验证。例如,数据库应用程序可以使用其事务日志进行验证。如果事务日志具有不在数据库中的条目,则数据库软件会将事务回滚,直到数据一致。

VM处于关闭状态

备份性能

这些常见方案可能会影响总备份时间:

  • 将新磁盘添加到受保护的 Azure VM: 如果 VM 正在进行增量备份,添加新磁盘备份的时间会增加。 备份总时间可能会由于初始复制的新磁盘,以及现有磁盘的增量复制持续时间超过 24 小时。

  • 磁盘碎片: 连续磁盘更改时,备份操作进行更快。 如果更改分散在磁盘的各个位置并出现碎片,则备份会变慢。

  • 磁盘变动量: 如果受保护的正在进行增量备份的磁盘有每日变动量超过 200 GB,备份可能需要很长时间 (超过 8 个小时) 才能完成。

  • 备份版本: 备份 (即所谓的即时还原版本) 的最新版本可用于校验和比较更优化的进程标识更改。 但如果您在使用即时还原并已删除的备份快照,备份将切换到校验和比较。 在这种情况下,备份操作将超过 24 小时 (或失败)。

推荐做法

在配置VM备份时,建议您遵循以下做法:

  • 修改策略中设置的默认计划时间。例如,如果策略中的默认时间是12:00 AM,则将时间增加几分钟,以便最佳地使用资源。

  • 对于使用高级存储的VM的备份,建议运行最新版本的Azure备份(即时还原)。如果您没有运行最新版本,则Backup会分配大约50%的总存储空间。备份服务需要此空间将快照复制到同一存储帐户并将其传输到Vault。

  • 如果要从单个保管库还原VM,我们强烈建议您使用不同的通用v2存储帐户,以确保不会限制目标存储帐户。例如,每个VM必须具有不同的存储帐户。例如,如果还原了10个VM,请使用10个不同的存储帐户。

  • 由于快照位于同一存储帐户中,因此通用v1存储层(快照)的还原将在几分钟内完成。从通用v2存储层(Vault)恢复可能需要数小时。如果数据在通用v1存储中可用,建议您使用“ 即时还原”功能以加快还原速度。(如果必须从保管库恢复数据,则需要更多时间。)

  • 每个存储帐户的磁盘数量限制与在基础架构即服务(IaaS)VM上运行的应用程序访问磁盘的程度有关。作为一般做法,如果单个存储帐户上存在5到10个或更多磁盘,请通过将某些磁盘移动到单独的存储帐户来平衡负载。