写点什么

SD-WAN 和专线混合组网中的高可用设计(三)

  • 2019-12-20
  • 本文字数:1312 字

    阅读完需:约 4 分钟

SD-WAN 和专线混合组网中的高可用设计(三)

方法 2: 通过路由传播功能,控制明细路由

在 AWS VPC 网络中有一个特性,即如果存在到达路径的多个不同路由条目,则会选取最明细的一条路径。


举个例子,如果我们需要到达 10.0.0.1 的机器,目前路由表中有条目 A(10.0.0.0/8,下一跳 VGW-A),有条目 B(10.1.0.0/24,下一跳是 VGW-B),两个路由条目都包含了去目标机器的路由,但是 VPC 此时会选择条目 B,因为它更精细。


基于这个特性,我们也可以设计出在 Direct Connect 专线和 SDWAN 线路之间的动态路由切换机制。

打开路由传播功能

首先到所有的 VPC 的相应路由表中,打开路由传播的功能,此功能默认是关闭的。



勾选传播这个选项,然后保存。



开启了路由传播功能之后,我们可以看到这个路由表已经收到了来自 Customer Gateway 的动态路由条目了。这里也是所有 SDWAN 网络里面包含的路由条目。



编辑路由表,将 SDWAN 的路由设置得更范围更大一些,让它不优先起作用。


高可用测试

我们到 SDWAN 控制台将 Direct Connect 线路手动断掉,并且我们保持 AWS 北京的一台客户端长期 ping 一个新加坡客户端的地址。


可以看到,在断开线路的一瞬间,我们可以看到路由表的 ”Propagated“ 路由条目中 ”Yes“ 的路由已经消失了,只剩下一些手动创建的路由条目。并且这些路由条目也能指引客户端找到访问对端的路径,并且这些路径是经过 SDWAN 网络过去的。



在整个切换过程中,持续的 Ping 只丢了 3 个包,切换时间还是非常迅速的。



同样,我们如果将 Direct Connect 线路恢复,这些动态路由也会在几分钟之内完全恢复。

优劣分析

第二种方法的切换时间更快,而且在出现专线故障的情况下,我们希望切换的这个过程越快越好,而如果专线恢复,我们对切换回来的时间要求相对就没那么高了。所以这个方法还是很符合实际的使用要求的。


但如果路由条目比较复杂,我们在编写泛路由的时候需要比较小心,而且也需要注意 VPC 中路由表条目的硬限制(100 个路由条目)。

总结

在业务连续性和 RTO (Recovery Time Objective) 要求比较高的情况下,非常建议在网络的设计中考虑到双设备,双线路的冗余。并且需要整个切换的过程自动化,对业务的影响最小。


本文提供的两种方法,各有优缺点:


  1. AWS CLI 方法:能够集成更多功能,比如 VPC 路由表切换,SNS 等,能为切换带来更多的操作可能性;但切换时间在 3-5 分钟不等。

  2. 路由传播方法:从 DX 切换到 SDWAN 的切换时间在 3 秒左右,反过来的切换时间在几分钟的时间内,并且操作更加简单,不涉及 IAM 设置和两套路由表以及监控脚本。

参考文档

https://www.cisco.com/c/en/us/support/docs/cloud-systems-management/prime-access-registrar/213601-csr1000v-ha-redundancy-deployment-guide.html


作者介绍:


!



### [](https://amazonaws-china.com/cn/blogs/china/tag/%E8%82%96%E5%9F%B9%E5%BA%86/)
亚马逊AWS解决方案架构师,负责基于AWS的云计算方案架构的咨询和设计,同时致力于AWS云服务在国内的应用和推广。现主要负责初创企业行业解决方案,曾任职于IBM,联想,Avnet,多年大型企业网络架构和运维经验。
复制代码


本文转载自 AWS 技术博客。


原文链接:https://amazonaws-china.com/cn/blogs/china/highly-available-design-snares-in-sd-wan-and-private-line-hybrid-networks/


2019-12-20 14:22632

评论

发布
暂无评论
发现更多内容

vivo 服务端监控架构设计与实践

vivo互联网技术

服务端 系统监控 构架

敏捷研发项目,我们该如何度量?

阿里云云效

阿里云 项目管理 云原生 度量 敏捷研发

阿里无影云桌面深度测评

乌龟哥哥

无影云电脑 2月月更

KubeVela v1.2 发布:你要的图形化操作控制台 VelaUX 终于来了!

阿里巴巴云原生

阿里云 开源 云原生 KubeVela

怎么说服领导,能让我用DDD架构肝项目?

小傅哥

DDD 小傅哥 技术架构 架构实践

技术盘点:消息中间件的过去、现在和未来

阿里巴巴云原生

阿里云 云原生 中间件 消息队列 EventBridge

“元认知”相关学习总结

panda

思维模型 阅读笔记 元认知

Linux系统问题排查

BeyondLife

Linux 负载 系统问题

基于CC2530(ZigBee)设计的自动照明系统

DS小龙哥

2月月更 自动照明系统设计

福昕鲲鹏加入,龙蜥社区迎来版式文档技术服务新伙伴

OpenAnolis小助手

Linux 开源 社区 福昕

深入理解持续测试:DevOps 流程中的重要一环

SoFlu软件机器人

DOM 精通了?请问 Node 和 Element 有何区别?

编程三昧

JavaScript 前端 DOM 2月月更

技术盘点:容器技术的演进路线是什么?未来有哪些想象空间?

阿里巴巴云原生

阿里云 容器 云原生

外屏和宽屏浪费了?HarmonyOS折叠屏设计规范教你用起来

HarmonyOS开发者

HarmonyOS

前端培训:Vue3语法糖详解分享

@零度

Vue 前端开发

了解一下ProtoBuf

蜜糖的代码注释

protobuf 2月月更

AIGC的“含科量”与“含资量”

脑极体

架构训练营 毕业设计

ren

2022年每个开发者必知的云原生趋势 | 社区征文

翊君

容器 微服务 云原生 新春征文

大数据培训:构建Flink SQL流式计算平台

@零度

flink sql 大数据开发

战略规划和战略解码BLM+BEM

wood

bem 战略制定 300天创作 BLM

AI赋能安全技术总结与展望| 社区征文

herosunly

人工智能 新春征文 2月月更

一文带你了解 Java 的内存区域

宇宙之一粟

Java 内存 2月月更

DDD实战(1):从需求到代码实现生鲜电商系统

深清秋

DDD 软件架构 生鲜电商系统

学生管理系统的架构设计

Fingal

#架构实战营

注册中心

邱学喆

Eureka 注册中心 原理图

多图|一文详解Nacos参数!

王磊

nacos

改革开放启示录(14/100)

hackstoic

创新管理

大画 Spark :: 网络(4)-Endpoint注册使用与网络环境的构建

dclar

大数据 spark 源代码 框架原理

移动应用中的第三方SDK隐私合规检测,早知道

华为云开发者联盟

移动应用 安全 sdk 隐私 隐私合规

突然发现,npm里request依赖包已经弃用,怎么办?

华为云开发者联盟

npm HTTP node,js Request request依赖包

SD-WAN 和专线混合组网中的高可用设计(三)_文化 & 方法_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章