You need to enable JavaScript to run this app.
导航

多机房多运营商调度容灾

最近更新时间2023.09.06 20:10:25

首次发布时间2023.09.06 20:10:25

本文档介绍多机房多运营商场景下,基于火山引擎云调度(GTM)的流量调度和容灾方案。

概述

在互联网环境下,通常使用基于 DNS 的方式实现多个机房的流量管理和容灾。机房可以是自建的数据中心,也可以是公有云的地域(Region)或可用区(AZ)。机房的流量接入涉及 线路带宽负载均衡 等资源。

调度容灾方案

多运营商、多机房场景下,调度容灾方案需要解决以下问题:

  • 分运营商接入
    • 保证中国移动、中国联通、中国电信的流量不会跨运营商传输
    • 所有流量都有对应的机房作为目标地址,防止空解析
  • 负载均衡
    • 多个机房的容量不同,需要进行负载均衡,负载均衡的结果符合机房容量的限制
  • 故障转移
    • 某个机房单个 IP 故障或机房整体故障
    • 某个运营商故障

针对上面的问题,调度容灾方案需要达到以下目标:

  • 中国移动、中国联通、中国电信的流量相互隔离。同时,配置默认线路确保所有其他流量,例如二级运营商的流量,都有对应的机房作为目标地址
  • 每个运营商线路内,每个机房的负载均衡权重与容量相匹配,实现机房之间的负载均衡
  • 能同时应对机房的单个 IP 故障、机房整体故障或某个运营商故障

根据目标要求,多机房多运营商调度容灾的方案如下图所示。下图为了便于理解,仅展示了 路由规则:电信 的容灾配置。其中:

  • 地址池集合 B 作为备地址池集合,分别指向相同 IDC 中的相同运营商的目标地址和相同 IDC 中的不同运营商的目标地址。
  • 地址池集合 C 作为备地址池集合,指向不同 IDC 中的相同运营商的目标地址。

该配置可以实现以下容灾效果:

  • 某个地址故障时,该地址的流量被转移到相同 IDC 和运营商的其他可用地址。
  • IDC 的某个运营商故障时,有以下两种预案可供选择:
    • 切换到地址池集合 B:流量被转移到不同 IDC、同运营商的线路。如果 IDC 之间距离较近,且 IDC 容量支持多活时,不会有明显的性能损耗。
    • 切换到地址池集合 C:流量被转移到相同 IDC、不同运营商的线路。会有部分性能损耗,但可以避免因 IDC 容量不足或 IDC 距离太远造成的状态异常。
  • 整个 IDC 故障时:对 IDC 涉及的所有路由规则进行手动或自动调换

参见 文档 了解如何在云调度 GTM 中实现该方案。

alt