你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

针对高度可用的多区域设计的建议

适用于此 Azure 架构良好的框架可靠性清单建议:

RE:05 在不同级别添加冗余,尤其是对于关键流。 根据确定的可靠性目标,将冗余应用到计算、数据、网络和其他基础结构层。

相关指南:使用可用性区域和区域实现冗余 |

本指南介绍设计高度可用的多区域云环境的建议。 高可用性是设计可靠性的基础原则。 高度可用的体系结构可帮助你尽可能避免停机,并在发生停机时高效恢复。

主动-主动主动-被动 是一般体系结构类型,可以采用不同的方式应用,具体取决于部署环境的平台。 本指南重点介绍多区域云环境设计。 在 Azure 上,还可以使用 可用性区域在单个区域中设计主动-主动或主动-被动体系结构。 有关使用可用性区域设计高可用性体系结构的详细指南,请参阅 Azure 架构良好的框架指南

关键设计策略

主动-主动和主动-被动是设计高度可用的云环境的两种基本方法。 主动-主动环境旨在处理部署工作负荷的每个区域中的生产负载。 主动-被动环境旨在仅在主要区域中处理生产负载,但在必要时故障转移到次要区域(被动)区域。 为工作负荷选择最佳 Azure 区域是设计高度可用的多区域环境的关键部分。 有关选择 Azure 区域的指南,请参阅 “选择 Azure 区域”指南

本部分介绍评估每个模式并优化体系结构以满足业务需求时应考虑的设计选项。

有关以可重复、可缩放的方式构建工作负荷的指南,请参阅 部署标记模式 。 此设计模式可帮助你优化高可用性设计,以实现高效的管理。

以下部分介绍两种模式的设计选项。

在主动-主动中部署,零停机

  • 容量主动-主动:两个或更多 Azure 区域中的镜像部署标记,每个标记配置为处理它们服务的区域或区域的生产工作负荷,并且可以缩放,以便在发生区域性中断时处理来自其他区域的负载。

    • 网络:使用 延迟加权 全局路由在区域之间分散流量。

    • 数据复制和一致性:使用全局分布式数据存储(例如 Azure Cosmos DB )实现多区域读取和写入功能。 对于关系数据库,请使用具有只读连接字符串的可读副本

    • 此设计的优点:比过度预配的设计降低运营成本。

    • 此设计的缺点:当纵向扩展以满足完全负载需求(如果另一个区域遇到中断)时,用户体验可能会降低。

  • 主动-主动过度预配:两个或更多 Azure 区域中的镜像部署标记,每个标记都过度预配,用于处理其服务的区域或区域的生产工作负荷,并在发生区域性中断时处理来自其他区域的负载。

    • 网络:使用 延迟加权 全局路由在区域之间分散流量。

    • 数据复制和一致性:使用全局分布式数据存储(例如 Azure Cosmos DB )实现多区域读取和写入功能。 对于关系数据库,请使用具有只读连接字符串的可读副本

    • 此设计的优点:最有弹性的设计。

    • 此设计的缺点:比可缩放设计更高的运营成本。

  • 这两种设计的常见优势:高复原能力和完全工作负荷中断的风险较低。

  • 这两种设计的常见缺点:由于各种因素,包括管理应用程序状态和数据同步的必要性,运营成本和管理负担较高。

部署主动-被动进行灾难恢复

  • 暖备用:一个主要区域和一个或多个次要区域。 次要区域部署了最少的计算和数据大小调整,无需加载即可运行。 此区域称为 暖备用 区域。 故障转移后,将缩放计算和数据资源,以处理主要区域中的负载。

    • 网络:使用 优先级 全局路由。

    • 数据复制和一致性:将数据库复制到被动区域,并使用平台即服务(PaaS)解决方案(例如 Azure Cosmos DBAzure SQL 数据库)的自动故障转移功能。

    • 此设计的优点:主动-被动设计中的最短恢复时间。

    • 此设计的缺点:主动-被动设计中的运营成本最高。

  • 冷备用:一个主要区域和一个或多个次要区域。 次要区域缩放以处理完整负载,但所有计算资源都会停止。 此区域称为 冷备用 区域。 需要在故障转移之前启动资源。

    • 网络:使用 优先级 全局路由。

    • 数据复制和一致性:将数据库复制到被动区域,并使用 PaaS 解决方案(如 Azure Cosmos DBAzure SQL 数据库)的自动故障转移功能。

    • 此设计的优点:比暖备用设计更低的运营成本。

    • 此设计的缺点:恢复时间比暖备用设计更长。

  • 在灾难时重新部署:一个主要区域和一个或多个次要区域。 仅在次要区域中部署必要的网络。 操作员必须在次要区域中运行预配脚本才能故障转移工作负荷。 此设计称为 在灾难时重新部署。

    • 网络:使用 优先级 全局路由。

    • 数据复制和一致性:部署新的数据库实例,并从备份中解除冻结数据。

    • 此设计的优点:运营成本最低。

    • 此设计的缺点:最长的恢复时间。

  • 主动-被动设计的常见优势:与主动主动设计相比,运营成本较低,日常管理负担更少。 无需同步应用程序状态。

  • 主动-被动设计的常见缺点:更长、更复杂的恢复过程。 成功故障转移需要手动干预的可能性更高。

注意

无论高可用性设计如何,都记得为 Azure DevOps 基础结构、跳转盒、监视以及管理工作负荷所需的任何其他关键服务配置冗余。

Azure 便利化

  • Azure Front Door 将Azure 流量管理器的全球路由功能与内容传送系统和 Web 应用程序防火墙相结合,帮助你管理高可用性工作负荷。

  • Azure Cosmos DB 是一个全球分布式 NoSQL 数据库平台,可帮助运行主动-主动环境,并最大程度地减少发生区域性服务中断时停机的可能性。

可靠性清单

请参阅完整的建议集。