在从传统IDC向云上迁移过程中,物理专线作为连接云上和云下的桥梁,在混合云架构中占有绝对重要的地位。作为基础设施,在伴随业务不断发展的过程当中,也会进行相应的更换升级。本文将介绍在物理专线特定情况下进行流量切换时,如何做到平滑可靠。
业务场景
此方案应对的业务场景是专线变化造成的VBR更换,主要有
- 专线更换 原有专线由于接口规格等原因不能提供更高带宽,需要更换
- 专线升级 在原有专线基础上,增加物理线路,实现多线容灾
- 更换接入点 从一个接入点,更换到另外一个接入点
- 其它涉及物理专线更换的场景
注意事项
- 目前情况下,VPC添加路由条目之后不支持修改,即无法直接修改路由的下一跳接口
- 单次只能切换一条路由,如果有多条路由,需要按照操作步骤重复进行
- 理论上路由切换不会影响网络访问,但实际过程中个别情况下会造成丢包,建议选择业务低峰期进行变更操作
基本步骤
- 新专线完成接入,包括线路施工,互联地址、VBR路由配置
- 健康检查配置,如果有涉及双线容灾,需要配置好健康检查
- 梳理专线涉及的VPC以及路由条目
- 流量切换
- 业务验证
方案原理
路由表中采用最长前缀匹配作为流量的路由选路规则。最长前缀匹配是指IP网络中当路由表中有多条条目可以匹配目的IP时,采用掩码最长(最精确)的一条路由作为匹配项并确定下一跳。
例如某专有网络(下面称VPC)中路由表中路由条目如下表
目标地址段 | 下一跳地址 | 路由接口 |
---|---|---|
10.23.8.0/16 | 10.23.1.1 | ri-1 |
192.168.0.0/16 | 192.168.0.1 | ri-2 |
192.168.1.0/24 | 192.168.1.1 | ri-3 |
其中某台ECS要访问192.1681.1.3,那么VPC的路由的匹配过程有下面几个步骤
- 第一条路由网络号不匹配,跳过
- 第二条路由网络号匹配,但掩码不是最长的
- 第三条路由网络号匹配,掩码长长度最长,命中
那么这个数据包的下一跳地址将会是192.168.1.1。有了这个规律之后,那么我们可以在路由上做一些特殊的设置,来达到流量调整的目的,比如下面这种路由条目
目标地址段 | 下一跳地址 | 路由接口 |
---|---|---|
10.23.8.0/16 | 10.23.1.1 | ri-1 |
192.168.0.0/16 | 192.168.1.1 | ri-2 |
192.168.1.0/24 | 192.168.1.1 | ri-3 |
假如访问的目的地址依旧是192.1681.1.3,那么最终还是匹配到第三条规格,如果此时我们将第三条规则删除掉,那么会匹配到第二条规则,但是这两条规则的下一跳地址相同,所以删除第三条路由规则并不会影响网络访问,但是网络端口从ri-3切换到了ri-2,本方案正是利用这个特性来完成
实施方案
1、业务场景
下面的架构图展示了最基础的专线网络架构,VBR1为老专线对应的VBR,VBR2为新专线对应的VBR
2、切换步骤
A、VPC增加路由规则192.168.2.0/23 -> R3,新添加网段必须大于需要切换的网段,路由接口指向新VBR接口R3,此时流量路径不变
B、删除VPC中 192.168.2.0/24 -> R1 路由规则,此时,VPC到IDC的流量将会经过R3接口,经过VBR2到达IDC
C、在VPC中添加 192.168.2.0/24 -> R3 路由规则,VPC到IDC的流量将会经过R3接口到达IDC,但实际匹配到的规则变成192.168.2.0/24 -> R3,192.168.2.0/23 -> R3已经不再生效,IDC到VPC的流量仍旧按照原来的规则从老的VBR1进入VPC
D、删除192.168.2.0/23 -> R3路由条目
E、IDC侧做路由切换
F、移除旧VBR1,同时监控带宽流量以及业务访问情况