你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
在高可用性配置方面,存储帐户的工作方式不同于许多其他 Azure 服务。 他们通常不会使用由客户部署的辅助实例来实现弹性。 相反,配置为异地冗余的存储帐户会被复制到另一个区域,复制是根据区域对进行的。 必要时,存储帐户可以故障转移到此复制的副本,并在次要区域中运行。
此功能意味着,客户无需规划在其第二个区域中运行第二个存储帐户。 您可以拥有多个存储帐户,并使用客户管理的操作在这些帐户之间传输数据,但这是一种不常见的模式。
对存储帐户进行故障转移时,服务本身的名称不会更改。 如果将公共终结点用于入口,则系统可以使用同一 DNS 解析来访问服务,而不考虑其故障转移状态。
当存储帐户和访问该帐户的系统发生故障转移时,DNS 解析会起作用。 一组服务刚好发生故障转换后,它也起作用。 此复原能力减少了存储帐户所需的 BCDR 任务数。
如果使用 专用终结点,则需要更多配置来支持此功能。 本文提供了使用专用终结点实现安全网络的异地复制存储帐户示例体系结构,以及每个 BCDR 方案所需的内容。
注释
并非所有存储帐户类型都支持异地冗余存储(GRS)或读取访问异地冗余存储(RA-GRS)。 例如,使用高级块 blob 部署的数据湖在单个区域中只能是本地冗余或区域冗余的。 查看 Azure 存储冗余 ,确保方案受支持。
示例体系结构
此体系结构使用可用于处理主动/主动或故障转移方案的主要区域和次要区域。 每个区域都有一个用于共享网络基础结构的中心网络。 每个区域还有一个分支,其中部署了存储帐户和其他工作负载解决方案。
异地冗余存储帐户部署在主要区域中,但两个区域中的 blob 终结点都有专用终结点。
这两个专用终结点不能对同一终结点使用相同的专用 DNS 区域。 因此,每个区域使用自己的专用 DNS 区域。 每个区域都附加到该区域的中心网络。 此设计使用 DNS 转发器方案 来提供解析。
因此,无论尝试访问专用终结点的 VM 所在的区域是什么,都会提供一个可以访问存储 blob 的本地终结点,而不管存储帐户当前在哪个区域中运行。
对于数据中心的连接,VPN 连接将连接到区域中的中心网络。 但是,对于 DNS 解析,每个数据中心会将其条件转发设置为仅两个 DNS 解析服务器集之一,以确保解析到最近的网络位置。
体系结构概念
此体系结构使用执行单个区域部署时可能不经常遇到的专用终结点的功能。
首先,单个服务可以附加多个专用终结点。 例如,存储帐户可以为其 Blob 容器提供专用终结点,这些终结点位于多个不同的虚拟网络中,并且每个容器单独运行。
但是,此模式不常用于中心和分支方案,因为专用 DNS 区域对于一个专用终结点只能有一条记录。 如果将第一个专用终结点注册到专用 DNS 区域,则其他专用终结点需要使用其他区域。
此外,专用终结点不需要与连接到的资源位于同一区域。 举例来说,美国东部 2 中的存储帐户可以有一个部署在美国中部的专用终结点。
只要该区域有备用专用 DNS 区域,第二个区域中的资源就可以解析存储帐户并与之交互。
通常使用位于同一区域的专用终结点来降低成本。 但是,在考虑故障转移时,即使某一区域发生故障,此功能仍然可以使区域专用网络继续运行。
跨区域流量成本
存在与在多个区域中具有专用终结点相关的成本。 首先,每个专用终结点都有成本。 上述设计将有两个终结点,因此将收费两次。 此外,在区域之间发送流量会产生费用。 有关专用终结点成本的详细信息,请参阅 Azure 专用链接定价。
全局虚拟网络对等互连是连接多个区域中的虚拟网络的服务。 在区域之间传输数据也会产生成本。 此成本取决于网络所处于的区域。 有关网络成本的详细信息,请参阅 虚拟网络定价。
全局对等连接可用于在区域服务故障时使服务相互通信。 但是,它支持的方案较少,并且激活故障转移可能涉及更多手动操作。 组织应审查在高度可用或可复原的体系结构中运行的成本,并将其与还原服务持续时间较长的风险进行比较。
故障转移方案
此拓扑支持以下方案,每个方案都有其自己的 DNS 故障转移注意事项。
情景 | DESCRIPTION | DNS 注意事项 |
---|---|---|
方案 1 - 存储帐户故障转移 | 主要区域中托管的存储帐户的服务中断要求将其故障转移到次要区域。 | 无需更改。 |
方案 2 - 其他服务故障转移 | 主要区域中各项服务的服务中断要求将其故障转移到次要区域。 存储帐户不需要进行故障转移。 | 如果中断影响主要区域中托管的 DNS 服务器,则需要将本地的条件转发器更新到次要区域。 |
方案 3 - 整个区域中断 | 区域中多项服务的服务中断要求对存储帐户和其他服务进行故障转移。 | 需要将本地 DNS 中的条件转发器更新到次要区域。 |
方案 4 - 在高可用性中运行 | 服务和存储帐户以主动/主动配置在 Azure 中工作。 | 如果某个区域的 DNS 或存储帐户受到影响,则需要将本地条件转发器更新到可用区域。 |
方案 1 - 存储帐户故障转移
在此方案中,存储帐户的问题要求将其故障转移到次要区域。 使用区域冗余和异地冗余的存储帐户时,这些中断并不常见,但仍应进行计划。
将存储帐户故障转移到配对的次要区域时,网络路由保持不变。 无需更改 DNS - 每个区域都可以继续使用其本地终结点与存储帐户通信。
来自通过 VPN 连接的本地数据中心的连接也会继续运行。 每个终结点都可以对路由到它的连接做出响应,并且两个中心网络都可以解析为有效的终结点。
故障转移后,服务将按图示运行:
在主要区域中还原服务后,可以对存储帐户进行故障回复。
方案 2 - 其他服务故障转移
在此方案中,连接到存储帐户的服务出现问题。 在我们的环境中,这些虚拟机是虚拟机,但它们可以是应用程序服务或其他服务。
这些资源需要按照它们自己的流程故障转移到次要区域。 VM 可能会使用 Azure Site Recovery 在中断之前复制 VM,也可以在次要区域中部署 Web 应用的新实例。
服务在次要区域中处于活动状态后,即可通过其区域终结点开始连接到存储帐户。 无需对其进行任何更改即可支持连接。
只要服务中断不会影响中心中的 DNS 解析服务,来自通过 VPN 连接的本地数据中心的连接将继续运行。 如果中心已禁用(例如由于 VM 服务中断),则需要调整数据中心中的条件转发器以指向次要区域,直到服务还原为止。
故障转移后,服务将按图示运行:
在主要区域中还原服务后,可以对服务进行故障回复和本地 DNS 重置。
注释
如果只需从本地连接到存储帐户即可执行管理任务,则可以使用次要区域中的跳转框,而不是更新主要区域中的 DNS。 仅当需要从本地系统直接连接到存储帐户时,才需要更新本地 DNS。
方案 3 - 整个区域中断
在此方案中,由于存储帐户和其他服务都需要进行故障转移,因此区域性中断的范围足够大。
此故障转移的工作方式类似于方案 1 和方案 2 的组合。 存储帐户已进行故障转移,Azure 服务也进行了故障转移。 主要区域实际上无法运行,但服务可以继续在次要区域中运行,直到服务还原为止。
与方案 2 类似,如果主中心无法处理其终结点的 DNS 响应,或者存在其他网络中断,则本地条件转发器应更新到次要区域。
故障转移后,服务将按图示运行:
还原服务后,可以对资源进行故障回复,本地 DNS 也可以重置回其正常配置。
方案 4 - 在高可用性中运行
在此方案中,工作负载在主动/主动模式下运行。 主要区域和次要区域中都运行了计算资源,客户端基于负载均衡规则连接到任一区域。
在区域专用终结点中,这两个服务都可以与存储帐户进行通信。 请参阅 Azure 网络往返延迟统计信息 ,查看区域之间的延迟。
如果发生区域性服务中断,负载均衡前端应将所有应用程序流量重定向到活动区域。
对于来自本地数据中心位置的连接,如果中断影响区域的 DNS 或存储帐户,则需要将数据中心的条件转发器设置为仍可用的区域。 此更改不会影响 Azure 服务。
虽然两个区域都运行正常,但服务按图示运行:
后续步骤
在规划存储帐户复原能力过程中,可以查看以下文章了解详细信息: