本文介绍如何设计跨多个区域的Azure网络。 多区域网络针对区域中断提供高可用性,为地理分布的用户提供较低的延迟,并支持法规数据驻留要求。
本文介绍的内容
本文介绍区域与区域冗余、跨区域路由策略、多区域部署的中心拓扑选择、主动-主动与主动-被动故障转移模式以及复制延迟注意事项。
谁需要本文
如果你的环境符合以下任一条件,请阅读本文:
- 您的工作负载需要具备灾难恢复保护,以防整个 Azure 区域发生故障。
- 可在多个地理位置为用户提供服务,并需要最大程度地减少网络延迟。
- 法规或合规性要求要求要求数据保留在特定的地理边界内。
- 业务连续性目标定义了单个区域无法单独实现的恢复时间目标(RTO)。
如果你的工作负载在单个区域中运行,并且区域冗余部署能够满足你的可用性要求,那么你目前可能还不需要多区域设计。 先在一个区域中采用中心辐射拓扑或虚拟 WAN,之后再扩展。
直接迁移重点: 遗留工作负载通常无法跨区域以主动-主动方式运行。 使用 Azure Site Recovery 并在恢复区域部署中心来规划灾难恢复,而不是采用完整的主动-主动架构设计。
现代化重点:使用不重叠的地址空间,在两个区域之间以主动-主动方式部署面向客户的应用,并采用区域冗余 SKU,以便这些区域可在需要时建立对等互连。
跨云焦点:使用Azure 虚拟 WAN连接多个区域和分支,并规划跨区域路由以及跨云传输。
Azure服务和功能
下表列出了启用多区域网络的Azure服务和功能:
| 服务或功能 | 多区域设计中的角色 | Learn more |
|---|---|---|
| Azure 流量管理器 | 适用于任何协议的基于 DNS 的跨区域流量路由 | 流量管理器概述 |
| Azure Front Door | 在边缘使用 CDN 和 WAF 进行 HTTP/HTTPS 全局负载均衡 | Front Door 概述 |
| 全球 VNet 对等互连 | 不同区域中虚拟网络之间的专用高带宽连接 | 虚拟网络对等互连 |
| Azure 虚拟 WAN (多中心) | 由 Microsoft 托管并支持自动中心间路由的全球传输 | 虚拟 WAN 全球中转 |
| Azure Virtual Network Manager (AVNM) | 自动执行跨区域对等互连拓扑和网络组管理 | AVNM 概述 |
为什么多区域需要多个虚拟网络
虚拟网络(VNet)跨越单个区域。 该 VNet 中的子网跨越区域中的所有可用性区域,但 VNet 本身无法跨区域边界扩展。 因此,多区域网络意味着部署多个 VNet,每个区域一个或多个,并使用跨区域服务连接它们。
此基本约束可塑造每个多区域设计:
- 每个区域都需要自己的 VNet 地址空间(为进行对等互连,不得与其他区域的地址空间重叠)。
- 跨区域流量需要明确的连接机制:全局 VNet 对等互连、虚拟 WAN 中心间互连或基于网关的路由。
- 全局负载均衡服务(流量管理器或 Front Door)将用户定向到正确的区域部署。
有关子网和地址规划指南,请参阅 IP 地址规划。
可用性区域与区域冗余
在设计多区域拓扑之前,请了解Azure中的两个基础结构冗余级别:
| 级别 | 防止 | 机制 | Example |
|---|---|---|---|
| 可用性区域 | 区域中的单个数据中心故障 | 具有独立电源、冷却和网络的物理隔离数据中心 | 跨 3 个可用区部署的区域冗余 Azure 防火墙 |
| 区域冗余 | 整个区域故障(自然灾害、大范围中断) | 在两个或多个Azure区域中部署工作负荷 | 中国东部 2 和中国北部 3 中的双活 Web 应用 |
从区域冗余开始。 区域冗余部署可防止最常见的故障方案(单一数据中心问题),而无需多区域路由的复杂性。 当您的企业需要防范区域性大范围中断,或需要为地理上分散的用户提供服务时,请启用区域冗余。
区域冗余网络服务参考
下表显示了核心网络服务的区域冗余部署选项。 在运行工作负荷的每个区域中部署这些内容:
| Service | 区域冗余选项 | 注释 |
|---|---|---|
| Azure 防火墙 | 跨可用区部署 | 分布在该区域的所有 3 个区域 |
| 标准负载均衡器 | 区域冗余前端 | 标准 SKU 的默认行为 |
| 应用程序网关 v2 | 区域冗余部署 | 需要Standard_v2或WAF_v2 SKU |
| VPN 网关 | 采用区域冗余 SKU 的主动-主动模式 | 使用带 AZ 后缀的 SKU(VpnGw1AZ、VpnGw2AZ 等) |
| ExpressRoute 网关 | 区域冗余 SKU | 使用 ErGw1AZ、ErGw2AZ 或 ErGw3AZ |
| Azure Bastion | 区域冗余(预览版) | 基本、标准和高级 SKU |
| NAT 网关 (StandardV2) | Zone-redundant | 需要 StandardV2 SKU;标准 SKU 仅限区域 |
如何选择跨区域流量路由方法
使用以下决策表选择正确的服务,以便在区域之间路由流量:
| 你的要求 | 建议的服务 | 工作原理 |
|---|---|---|
| 任何协议的多区域故障转移或负载分发(HTTP、TCP、UDP) | Azure 流量管理器 | 通过 DNS 解析返回最佳终结点 IP。 客户端直接连接到终结点。 故障转移速度取决于 DNS TTL(通常为 30-300 秒)。 |
| 使用 CDN、WAF 和快速故障转移进行全局 HTTP/HTTPS 负载均衡 | Azure Front Door | 在边缘接入点(PoPs)终止连接。 将请求路由到最近的正常后端。 提供连接级故障转移(秒级,不依赖 DNS TTL)。 |
| 区域之间的专用后端流量(复制、内部 API) | 全球 VNet 对等互连 | 通过 Microsoft 主干网络连接不同区域的 VNet。 对等互连不具有传递性;每个对等互连关系都需要明确建立。 将收取按每 GB 计算的数据传输费用。 |
| 通过Azure进行本地站点到站点连接 | ExpressRoute Global Reach | 连接两条 ExpressRoute 线路,以便本地位置无需遍历中心路由器即可通过Microsoft主干进行通信。 |
Tip
合并这些服务。 例如,可将 Front Door 用于面向用户的 HTTP 流量,并将 Global VNet Peering 用于区域之间的后端复制流量。
如何选择多区域中心拓扑
决定跨区域扩展网络后,请选择用于管理跨区域连接的中心模式:
| 因子 | 每区域一个 Hub(传统) | 虚拟 WAN 多中心 |
|---|---|---|
| 跨区域连接 | 客户在区域枢纽之间配置全局 VNet 对等互连并管理 UDR | 自动中心间路由:默认情况下,所有虚拟 WAN中心互连 |
| Management | 客户可完全控制路由、防火墙规则和对等互连 | Microsoft 托管的中心基础结构和基于策略的管理 |
| 最适用于 | 需要精细路由控制、自定义 NVA 或现有中心投资的组织 | 具有多个区域、30 多个分支站点或托管基础结构首选项的组织 |
| 全局传输 | 需要每个中心对之间的显式对等互连 + UDR 配置 | 内置:任意两个中心之间的流量会自动路由 |
| Scaling | 手动添加中心网络和对等互连(AVNM 可将此过程自动化) | 通过虚拟 WAN配置添加中心:自动路由更新 |
| 成本模型 | 中心虚拟网络资源(防火墙、网关、对等互连)单独计费 | 虚拟 WAN单元定价加上连接的资源 |
有关单一区域内中心辐射型与虚拟 WAN 的详细比较,请参阅中心辐射型拓扑和虚拟 WAN。
设计注意事项
平移迁移跨区域设计重点
- 对于无法跨可用区或跨区域运行的遗留工作负载,应采用灾难恢复设计,而不是主动-主动架构:使用 Azure Site Recovery 将工作负载复制到恢复区域。
- 在恢复区域中生成一个中心,以镜像主中心,以便故障转移流量具有相同的共享服务。
- 使用 Azure 流量管理器 或 DNS 故障转移在区域性中断期间重定向用户。
- 确保恢复区域的地址空间不要与主区域重叠,以避免在故障转移期间以及后续建立对等互连时发生冲突。
现代化多区域设计焦点
- 使用区域冗余 SKU,在两个区域中以主动-主动架构部署面向客户的工作负载,以实现最高级别的弹性。
- 为主区域和备份区域分配不重叠的地址范围,以便采用主动-主动模式的辐射网络后续可在无需重新寻址的情况下使用全局 VNet 对等互连。
- 按应用类型选择交付层:Web 应用使用 Azure Front Door,非 Web 应用使用 Traffic Manager,并跨区域公共终结点进行分发。
- 在每个区域的公共终结点前面使用中心防火墙(SNAT 和 DNAT),以便在到达后端之前检查入站流量。
跨云多区域设计重点
- 使用 Azure 虚拟 WAN 将多个 Azure 区域、分支机构和云边缘互连起来,并实现自动的任意点到任意点路由。
- 计划汇总了跨区域和云的非重叠地址范围,因此传输路由保持简单。
- 终止区域安全中心上的跨云 IPsec 连接,并让虚拟 WAN处理中心间路由。
- 使用 Front Door 或流量管理器跨区域分配公共入口,并在每个区域中心防火墙上保持检查。
先决条件
在设计多区域网络之前,请确保具备:
- 部署并测试了单区域拓扑。 从中心辐射拓扑或虚拟 WAN开始。
- 已定义的高可用性和灾难恢复要求:RTO、恢复点目标(RPO)以及合规要求。
- 跨所有区域创建了一个不重叠的 IP 地址计划。 请参阅 IP 地址规划。
- 确定了哪些工作负载需要区域冗余,哪些仅需要可用区冗余。
主动-主动型与主动-被动型部署模式
多区域部署模型确定流量在正常操作和区域性故障期间如何流动:
Active-active
这两个区域同时承载流量。 全局负载均衡器(例如流量管理器或 Front Door)基于邻近度、性能或权重跨区域分配请求。
何时使用主动-主动:
- 应用程序可以在没有特定于区域的状态依赖项的任何区域中处理请求。
- 你需要尽可能低的 RTO(故障转移是即时的,因为健康区域已经在承载流量)。
- 您希望在正常运行期间同时使用两个区域的容量(以提高成本效率)。
网络注意事项:
- 这两个区域必须具有相同的网络基础结构,包括防火墙、网关和负载均衡器。
- 区域之间的数据复制必须使两个部署保持最新状态。
- DNS TTL 和运行状况探测间隔决定了流量管理器移动流量的速度。 Front Door 提供更快速的连接级故障转移。
Active-passive
一个区域(主要)处理所有流量。 次要区域保持就绪状态,但在发生故障转移事件之前不会为用户请求提供服务。
何时使用主动-被动:
- 应用程序具有严格的写入区域要求或无法轻松复制状态。
- 成本限制可防止同时在两个区域中运行完整容量。
- 您的 RTO 容忍度允许留出激活辅助区域所需的时间。
网络注意事项:
- 被动区域的网络基础设施在发生故障转移前可采用较低层级或较低容量的配置。
- 自动故障转移需要为健康探测设置适当的阈值(避免频繁切换)。
- 定期测试故障转移。 如果未验证,被动区域中的网络配置可能会偏移。
- 使路由表和 NSG 规则在区域之间保持同步。 使用基础结构即代码模板确保被动区域与主要区域的安全状况匹配。
- 在被动区域中预预配 VPN 或 ExpressRoute 网关。 网关预配可能需要 20-45 分钟。 对于大多数 RTO 目标来说,这太慢了。
如何在主动-主动和主动-被动网络之间进行选择
主动-主动和主动-被动网络之间的选择会影响网络大小调整、成本和操作复杂性:
| 注意事项 | Active-active | Active-passive |
|---|---|---|
| 网络容量 | 两个区域的全部容量 | 被动区域中的容量减少(故障转移时缩放) |
| 网关预配 | 在两个区域中始终开启 | 已预配,但可使用更小的层级 |
| 跨区域数据同步 | 持续的双向复制流量 | 单向异步复制到备用端 |
| 防火墙规则 | 相同的规则集,两者都主动强制实施 | 规则集相同,但被动规则集很少被触发 |
| IP 寻址 | 这两个区域都向全局负载均衡器通告 | 只有主区域会通告,直到发生故障转移 |
| 操作风险 | 低:两条路径都会持续接受验证 | 更高:被动路径可能发生漂移,或存在未经测试的配置 |
数据复制和延迟
跨区域复制引入了影响应用程序设计的网络延迟。 Azure 在同一地理区域内的区域之间,针对相近区域对(例如,中国东部 2 到中国东部 2)的往返延迟通常为 1-10 毫秒,而对于距离较远的区域对(例如,中国东部 2 到中国北部),通常为 30-70 毫秒。 跨大西洋或跨太平洋的区域对之间的延迟可能超过 100 毫秒。
关键设计注意事项:
- 复制拓扑: 仅对延迟较低(< 10 毫秒以下)的区域对选择同步复制。 对远程对使用异步复制,以避免应用程序性能下降。
- 带宽规划: 估算复制吞吐量需求,并将全局 VNet 对等互连的每 GB 数据传输成本考虑在内。 远程区域之间的大容量复制可能会产生大量出口费用。
- 冲突解决: 具有双向写入的活动-主动模式需要在应用程序或数据库层采用冲突解决策略。 网络提供连接,但应用程序必须处理写入冲突。
- PaaS 复制的专用终结点:在跨区域复制Azure SQL、Cosmos DB 或存储时,请使用每个区域中的专用终结点将复制流量保留在Microsoft主干上,并避免公共 Internet 公开。
成本注意事项
多区域网络通过重复的基础结构和跨区域数据传输增加成本。 围绕这些主要成本驱动因素规划预算:
- 跨区域数据传输:全局 VNet 对等互连和 虚拟 WAN 中心间流量对于跨区域边界传输的数据按每 GB 收费。 在同一区域内,已对等互连的 VNet 之间的区域内流量在同一可用区时无额外费用,跨可用区时则按较低费率收费。
- 重复的网络设备: 每个区域都需要自己的防火墙、负载均衡器和网关实例。 主动-主动部署将这些成本翻了一番。 主动-被动部署可以通过在备用区域使用较低规格的层级,并在故障转移期间向上扩展来降低成本。
- 全局负载均衡费用: 流量管理器和 Front Door 均按 DNS 查询数或处理的请求数收费。 Front Door 还收取从边缘 PoP 到后端的数据传输费用。
- ExpressRoute 和VPN 网关:多区域设计通常需要每个区域中的网关实例。 连接多个区域的 ExpressRoute 线路会产生每月端口费用以及按每 GB 计量的数据费用。
- 使用流量区域进行优化: 设计应用程序层以最大程度地减少跨区域调用。 将只读副本与各区域中的计算资源部署在同一位置,以减少复制所需带宽并降低延迟敏感型查询的延迟。
安全注意事项
多区域网络在单区域部署之外引入了安全注意事项:
- 流量保持在微软主干网络内。 通过 Global VNet 对等互连或 虚拟 WAN 中心间连接传输的所有跨区域流量均经由 Microsoft 骨干网络,而非公共互联网。
- 在每个区域中部署区域冗余防火墙。 每个区域中心都需要各自的防火墙实例来进行流量检测。 跨可用性区域部署防火墙,以在区域故障期间保持安全性。
- Front Door WAF 提供边缘安全性。 使用 Front Door 时,其集成的 Web 应用程序防火墙会在流量到达任何区域部署之前对其进行检查。 这在网络边缘提供第一层防御。
- 请仔细规划 DNS 故障转移。 流量管理器故障转移取决于 DNS TTL 值。 较短的 TTL 可以实现更快的故障转移,但会增加 DNS 查询量。 Front Door 提供连接级故障转移,无需依赖客户端 DNS 缓存过期。
- ExpressRoute Global Reach 流量保持私密。 通过 Global Reach 连接的本地站点之间的流量永远不会接触公共 Internet。 它在线路之间保持通过 Microsoft 主干网络传输。
- 保护跨区域复制通道。 默认情况下,通过全局 VNet 对等互连传输的后端复制流量是私有的,但对于传输中的敏感数据,应应用网络安全组并启用加密。
相关文章
如果多区域设计涉及本指南其他位置涵盖的特定方案,请参阅:
- 中心辐射拓扑:用于多区域部署的每区域一个中心设计模式。
- 虚拟 WAN:具有自动中心间路由的 虚拟 WAN 多中心模式。
- 跨区域连接:有关对等互连、Global Reach 和中心间连接选项的详细指南。
- VNet 和子网:每个区域的 VNet 设计和子网规划。
- IP 地址规划:跨区域不重叠的地址空间。
- Azure 防火墙 和流量检查:在每个区域中心部署区域冗余防火墙。
Learn more
有关本文中讨论的服务和概念的详细信息,请参阅以下资源:
后续步骤
Tip
自行探索? 返回到 概述导航器 ,按功能查找下一篇文章。
接下来是直接迁移过程中的下一步:
连接到本地网络:规划灾难恢复后,建立与本地的 VPN 或 ExpressRoute 连接。
现代化之旅的下一步:
设计 Internet 入口模式:确定客户流量如何跨主要区域和备份区域到达应用程序。
跨云之旅的下一步:
建立与其他云之间的加密隧道:完成多区域规划后,配置跨云 VPN 连接。