使用 Azure 文件同步进行灾难恢复的最佳做法

对于 Azure 文件同步,灾难恢复需要考虑两个主要方面:高可用性和数据冗余。 本文介绍了每个方面,并帮助你确定要用于自己的灾难恢复解决方案的配置。

在 Azure 文件同步部署中,云终结点始终包含数据的完整副本,但可以将本地服务器看做是数据的可释放缓存。 发生服务器端灾难时,可以通过预配新的服务器、在服务器上安装 Azure 文件同步代理,并将其设置为新的服务器终结点来恢复服务器。

由于其混合性质,某些传统的服务器备份和灾难恢复策略不适用于 Azure 文件同步。对于任何已注册的服务器,Azure 文件同步不支持以下操作:

警告

执行上述任何操作可能会导致同步出现问题或者分层文件终端,最终导致数据丢失。 如果执行了其中一项操作,请联系 Azure 支持部门以确保部署正常。

  • 在服务器终结点仍处于活动状态时,将磁盘驱动器(卷)从一台服务器传输/克隆到另一台服务器
  • 从操作系统备份进行还原
  • 将服务器的操作系统克隆到另一个服务器
  • 恢复到以前的虚拟机检查点
  • 将分层文件从本地(第三方)备份还原到服务器终结点

高可用性

可以使用两种不同的策略来实现本地服务器的高可用性。 可以配置故障转移群集,也可以配置备用服务器。 这两个配置之间的决定因素是你愿意在系统中的投资规模,以及在发生灾难的情况下最大程度降低系统停机时间是否值得额外付出成本。

对于故障转移群集,不需要采取任何特殊步骤即可使用 Azure 文件同步。对于备用服务器,应进行以下配置:

将以下类型的辅助服务器作为主服务器:具有不同的服务器终结点,这些终结点同步到同一个同步组。但不允许最终用户访问服务器。 这允许所有文件从主服务器同步到备用服务器。 可以考虑启用仅命名空间的分层,这样最初仅下载命名空间。 如果主服务器出现故障,可以使用 DFS-N 快速重新配置最终用户对备用服务器的访问权限。

数据冗余

若要确保可靠的灾难恢复解决方案,请在基础结构中增加某种形式的数据冗余。 Azure 文件存储提供四种冗余产品/服务:本地冗余存储 (LRS)区域冗余存储 (ZRS)异地冗余存储 (GRS)异地区域冗余存储 (GZRS)

  • 本地冗余存储 (LRS) :使用 LRS 时,每个文件在 Azure 存储群集中存储三次。 这可以防止由于硬件故障(例如磁盘驱动器损坏)而导致数据丢失。 但是,如果数据中心内发生火灾或洪水等灾难,使用 LRS 的存储帐户的所有副本可能会丢失或无法恢复。
  • 区域冗余存储 (ZRS):使用 ZRS,将存储每个文件的三个副本,但这些副本位于不同的 Azure 可用性区域的三个不同存储群集中,它们在物理上是隔离的。 可用性区域是 Azure 区域中独特的物理位置。 每个区域由一个或多个数据中心组成,这些数据中心配置了独立电源、冷却和网络。 在将副本写入所有三个可用性区域的存储群集前,不允许将其写入存储。
  • 异地冗余存储 (GRS):使用 GRS 时,有两个区域,即一个主要区域和一个次要区域。 文件在主要区域中的 Azure 存储群集中存储三次。 写入将异步复制到 Azure 定义的次要区域。 GRS 提供分布在两个 Azure 区域之间的六个数据副本。
  • 异地区域冗余存储 (GZRS):可以将 GZRS 视为类似于具有异地冗余的 ZRS。 使用 GZRS,文件在主要区域的三个不同存储群集中存储三次。 所有写入都将异步复制到 Microsoft 定义的次要区域。

对于可靠的灾难恢复解决方案,大多数客户应考虑使用 ZRS。 ZRS 增加的额外成本最少,增加了数据冗余优势,并且在发生中断时无缝程度也是最高的。 如果组织策略或法规要求需要对数据进行异地冗余,请考虑使用 GRS 或 GZRS。

异地冗余

如果存储帐户配置了 GRS 或 GZRS 复制,并且主要区域被判断为永久不可恢复或长时间不可用,Azure 将启动存储同步服务的故障转移。 发生灾难时,无需执行任何操作。

尽管可以手动请求将存储同步服务故障转移到 GRS 或 GZRS 配对区域,但我们不建议在大规模区域中断之外执行此操作,因为该过程不是无缝的,并且可能会产生额外的成本。 若要启动该过程,请打开支持票证,然后请求将包含 Azure 文件共享的 Azure 存储帐户以及存储同步服务进行故障转移。

警告

如果正在手动启动此过程,则必须联系支持人员,请求对存储同步服务进行故障转移。 如果尝试使用次要区域中的同一服务器终结点创建新的存储同步服务,则可能会导致存储帐户中保留额外数据,因为不会清除之前安装的 Azure 文件同步。

发生故障转移后,服务器终结点将切换为自动与辅助区域中的云终结点进行同步。 但是,服务器终结点必须与云终结点进行协调。 这可能会导致文件冲突,因为次要区域中的数据可能不会被捕获到主要区域。