异地冗余存储 (GRS):Azure 存储的跨区域复制

异地冗余存储 (GRS) 设计为在给定的一年内提供至少 99.99999999999999%(16 个 9)的对象持久性,它将数据复制到与主要区域相距数百英里的辅助区域。 如果存储帐户启用了 GRS,则即使遇到区域完全停电或导致主区域不可恢复的灾难,数据也能持久保存。

如果选择启用 GRS,可从两个相关选项中进行选择:

  • GRS 将数据复制到次要区域中的另一个数据中心,但仅当 Azure 发起了从主要区域到次要区域的故障转移时,这些数据才可供读取。
  • 读取访问异地冗余存储 (RA-GRS) 基于 GRS。 RA-GRS 将数据复制到次要区域中的另一个数据中心,同时还提供从次要区域读取数据的选项。 如果使用 RA-GRS,无论 Azure 是否发起从主要区域到次要区域的故障转移,都能从次要区域读取数据。

对于已启用 GRS 或 RA-GRS 的存储帐户,首先会使用本地冗余存储 (LRS) 复制所有数据。 首先将更新提交到主要位置,并使用 LRS 复制更新。 然后,使用 GRS 以异步方式将更新复制到次要区域。 将数据写入次要位置后,还会使用 LRS 在该位置复制数据。

主要和次要区域在一个存储缩放单元内管理跨单独的容错域和升级域管理副本。 存储缩放单元是数据中心内的基本复制单元。 此级别的复制由 LRS 提供;有关详细信息,请参阅本地冗余存储 (LRS):Azure 存储的低成本数据冗余

确定要使用哪个复制选项时,请记住以下几点:

  • 对于异步复制,从数据写入到主要区域到数据复制到次要区域,这之间存在延迟。 发生区域性灾难时,如果无法从主要区域中恢复数据,则尚未复制到次要区域的更改可能会丢失。
  • 使用 GRS 时,副本不可用于读取或写入访问,除非 Azure 启动到次要区域的故障转移。 如果发生故障转移,则在故障转移完成后,你将具有对该数据的读取和写入访问权限。 有关详细信息,请参阅灾难恢复指南
  • 如果应用程序需要从次要区域读取数据,请启用 RA-GRS。

读取访问异地冗余存储

读取访问异地冗余存储 (RA-GRS) 可最大程度提高存储帐户的可用性。 除了跨两个区域的异地复制之外,RA-GRS 提供对次要位置中的数据的只读访问。

当启用对次要区域中的数据的只读访问权限时,可以在存储帐户的辅助终结点以及主终结点上获取数据。 辅助终结点与主终结点类似,但会在帐户名称后面追加后缀 -secondary 。 例如,如果 Blob 服务的主终结点是 myaccount.blob.core.chinacloudapi.cn,则辅助终结点是 myaccount-secondary.blob.core.chinacloudapi.cn。 存储帐户的访问密钥对于主终结点和辅助终结点是相同的。

使用 RA-GRS 时需要注意一些注意事项:

  • 应用程序必须管理在使用 RA-GRS 时要与哪些终结点进行交互。
  • 由于异步复制涉及延迟,因此如果无法将数据从主要区域中恢复,则尚未复制到次要区域的更改可能会丢失。
  • 可以检查存储帐户的上次同步时间。 上次同步时间是 GMT 日期/时间值。 在上次同步时间之前主要位置的写入内容已成功写入次要位置,这意味着可以从次要位置读取这些内容。 在上次同步时间之后发生的主位置写入可能可供读取,也可能尚不可供读取。 可以使用 Azure 门户Azure PowerShell 或通过 Azure 存储客户端库之一查询此值。
  • 如果 Azure 启动了到次要区域的故障转移,则在故障转移完成以后,用户将对该数据具有读取和写入访问权限。 有关详细信息,请参阅灾难恢复指南
  • 要实现高可用性时使用 RA-GRS。 有关可伸缩性的指南,请查看性能清单
  • 有关如何使用 RA-GRS 进行高可用性设计的建议,请参阅使用 RA-GRS 存储设计高可用性应用程序

什么是采用 GRS 的 RPO 和 RTO?

恢复点目标 (RPO): 在 GRS 和 RA-GRS 中,存储服务以异步方式将数据从主位置异地复制到辅助位置。 主要区域中发生重大区域灾难时,Azure 会故障转移到次要区域。 如果发生故障转移,则尚未进行异地复制的最近更改可能会丢失。 丢失的潜在数据的分钟数称为 RPO。 RPO 指示可以将数据恢复到的时间点。 Azure 存储的 RPO 通常小于 15 分钟,但目前没有 SLA 规定异地复制所用时长。

恢复时间目标 (RTO): RTO 用于度量执行故障转移以及将存储帐户恢复联机所花费的时间。 执行故障转移的时间包括以下操作:

  • Azure 确定是否可以在主要位置恢复数据或是否需要故障转移所需的时间
  • 通过将主要 DNS 条目更改为指向次要位置来执行存储帐户故障转移的时间

配对区域

创建存储帐户时,可以为帐户选择主要区域。 配对的次要区域是根据主要区域确定的且无法更改。

另请参阅