边界网关路由模式
边界网关以两种路由模式之一运行:区域模式或全局模式。模式决定了其所处理的路由的传播范围。
这一区别至关重要,因为边界网关只存在于某一个区域。它的 BGP 对等方在该区域与之通信。模式所回答的问题是:网关从对等方学习到一个前缀后,该前缀仅对本地区域的 VPC 工作负载可用,还是对 VPC 在每个区域的所有子网均可用?
创建边界网关时,默认模式为区域模式。 如果您希望将学习到的路由传播至 VPC 的每个区域,必须显式切换至全局模式。
区域模式
学习到的路由和广播内容仅在网关所在区域内有效。该区域的 VPC 路由表会反映这些路由,其他区域的路由表则不会。
以下情况适合使用区域模式:
对等方只关心单个区域的流量。 只与一个区域的工作负载通信的数据中心,没有必要出现在其他区域的路由表中。
您希望每个区域独立建立对等关系。 每个区域拥有自己的网关和对等方,您倾向于并行的区域级范围,而非集中化方案。
您希望控制影响半径。 某一区域内的路由错误广播不会传播到其他区域。
该区域内的实例访问学习到的前缀的流量路径为:实例 → VPC 路由 → 边界网关 → BGP 对等方。无需跨区域跳转。
其他区域的实例无法通过该网关访问以区域模式学习到的前缀。如有需要,可在该区域部署第二个边界网关并建立独立会话,或将当前网关切换至全局模式。
全局模式
学习到的路由从网关所在区域,通过 Zenlayer 的私有骨干网,传播至 VPC 在其他所有区域的子网。该前缀出现在每个区域的 VPC 路由表中。其他区域的实例发出的流量先经骨干网转至网关所在区域,再从该区域出口到 BGP 对等方。
以下情况适合使用全局模式:
单个外部对等关系服务于所有区域的工作负载。 您不希望每个区域各维护一个 BGP 会话;只需建立一次对等,覆盖全局。
对等方是外部前缀的"单一可信来源"。 企业数据中心、运营商上游、中心化本地网络 — 凡是需要从所有区域均可访问的资源,都应学习至全局模式网关。
区域模式需要过多冗余会话。 十个区域 × 一个对等方 = 区域模式下需维护十个 BGP 会话,全局模式只需一个。
权衡点在于传输成本和延迟。来自较远区域的流量需要经过较长的骨干网路径才能到达对等方。如果对等方与网关所在区域在物理位置上相近,这是高效的。如果对等方服务于对延迟敏感的工作负载,按区域部署网关可能仍然更合适。
如何选择
数据中心仅连接到一个区域
区域模式
本地网络需要从每个区域均可访问
全局模式
每个区域已有各自的网关
区域模式
希望将外部对等集中在一个区域
全局模式
合规要求路由必须保留在区域内
区域模式
单个靠近互联网的对等方服务整个环境
全局模式
如有疑虑,从区域模式开始。影响半径严格限定在较小范围内,之后有需要时可切换至全局模式。反向操作 — 从全局模式切换回区域模式 — 则需要在您希望独立管理的各区域重新建立会话。
每个网关只有一种模式
一个边界网关在同一时间只能使用一种模式。在当前的 VPC 模型中,一个 VPC 对应一个边界网关,因此请根据您对学习到的路由所期望的范围来选择模式。
如果某个区域需要仅限本地的路由,而另一个区域需要全局路由,请将其设计为独立的 VPC 或独立的区域部署,而不是尝试为同一 VPC 挂载多个边界网关。
模式不影响的内容
BGP 会话本身。 无论模式如何,对端侧的配置完全相同 — 对等方不知道也不关心模式设置。
向外广播。 网关向 BGP 对等方广播的前缀集与模式无关。模式影响的是学习到的前缀在您侧的可见范围;它不影响对等方从您这里看到的内容。
常见错误
误认为区域模式会"经骨干网"到达其他区域。 不会。区域模式即是区域范围。其他区域的 VPC 路由表不会包含学习到的前缀。
对某个区域延迟敏感、其他区域不敏感的对等方设置全局模式。 无论是否受益,所有远端区域都要承担骨干网传输成本。如果只有一个区域实际需要该对等,区域模式可直接服务于该区域,不影响其他区域。
在生产环境高峰期变更已在线网关的模式。 模式变更生效很快,但会引发重新收敛 — 受影响范围内的路由表将被重建。请将此类变更安排在流量低谷期进行。
最后更新于